[petsc-users] petsc-users Digest, Vol 33, Issue 13

amrit poudel amrit_pou at hotmail.com
Wed Sep 7 14:26:17 CDT 2011


Thank you Sean and Satish for clarifying !

One last question, just to clear up my confusion :

Sean mentioned that I will need to install PETSc on the actual cluster that I want to run my program, which, as I understand, means that I need to do ./configure make make install on that actual cluster I plan on running my code. I was originally thinking that if I do ./configure make make install on some Scientific Linux computer(with appropriate MPI), then I will get all the libraries (.a files) that I need. Then, if I have to run my program, say program.c, that calls PETSc libraries on a Scientific Linux cluster, all I need to do is carry all the libraries (and anything that my program is linked with) together with my program to the cluster and run my program there. Is this really incorrect ?

Thanks for bearing with my elementary questions. I appreciate all your feedback.


-Amrit



> Date: Wed, 7 Sep 2011 13:56:41 -0500
> From: balay at mcs.anl.gov
> To: petsc-users at mcs.anl.gov
> Subject: Re: [petsc-users] petsc-users Digest, Vol 33, Issue 13
> 
> yes - fundamentally source code is more portable. [binary is generally
> not portable - even on the same OS - due to versions of OS or
> dependent libraries or other issues]
> 
> Whatever machine you need to run your code on - you'll have to move
> your code [and supporting library code] to that machine and build/run
> there.
> 
> Sometimes you might find some libraries prebuilt on the target
> machine.  Compute clusters generally will have MPI prebuilt [by the
> admin of the cluster] - and one should build all mpi related
> packages,applcations with that recommended/installed MPI etc..
> 
> PETSc [and all externalpackages it installs] are provided to you at
> the source code level - so you build and use them on each target
> machine you need them on.
> 
> Satish
> 
> On Wed, 7 Sep 2011, amrit poudel wrote:
> 
> > 
> > I see.  From all this discussion what I've understood is that if I need to run my program on say Scietific Linux cluster, then I need to build PETSc (along with MUMPS or any other external packages) on a computer with Scientific Linux OS, then I will be able to run my program in that cluster.   Please correct me if I am wrong. 
> > 
> > Thanks for clearing up my confusion !
> > 
> > 
> > 
> > 
> > From: sean at mcs.anl.gov
> > Date: Wed, 7 Sep 2011 18:35:20 +0000
> > To: petsc-users at mcs.anl.gov
> > Subject: Re: [petsc-users] petsc-users Digest, Vol 33, Issue 13
> > 
> > Okay, I will do that, but do I need to carry all  MUMPS and PETSc libraries  when I try to run the executables in a cluster or some other computer which will not have PETSc or MUMPS installed? I do not plan on building PETSc and MUMPS again in some computer in the national lab. I am planning on sending the executable only from my laptop to the cluster. Is this possible?
> > 
> > 
> > If that is possible, then you should update the wiki page:
> > http://en.wikipedia.org/wiki/Execution_(computing)
> > 
> > 
> > Sean 		 	   		  
> 
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20110907/b7d5da5d/attachment.htm>


More information about the petsc-users mailing list