[mpich-discuss] one question - unix MPICH2 apps binary compatibility
Jayesh Krishna
jayesh at mcs.anl.gov
Fri Jun 5 16:58:14 CDT 2009
Hi,
On unix systems you probably need to provide the bin directory from your
MPICH2 installation (to provide the process manager/launcher apps).
However this could get messy if your customer has a different version of
OS, runs your code on a different arch or has a different version of
glibc. You can use tricks like "symbol versioning" to achieve binary
compatibility across glibc versions
(http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=FAQ;hb=HEAD).
If your application is open source you can ship the MPICH2 source code
with your app source and the customer can do a
configure/make/make_install.
Regards,
Jayesh
_____
From: Shangli Wu [mailto:shangliw at cadence.com]
Sent: Friday, June 05, 2009 3:17 PM
To: Jayesh Krishna
Subject: RE: [mpich-discuss] one question
Thanks a lot.
How about on Unix (such as Solaris/Linux) machines?
Shangli
_____
From: Jayesh Krishna [mailto:jayesh at mcs.anl.gov]
Sent: Friday, June 05, 2009 4:12 PM
To: Shangli Wu
Cc: mpich-discuss at mcs.anl.gov
Subject: RE: [mpich-discuss] one question
Hi,
If you have developed your application on windows using MPICH2 you can
follow the instructions from the "MINIMAL INSTALLATION" section in
README.winbin.rtf document (available in your installation directory). Or
you can ask the user to install MPICH2 separately.
I am providing the information from the README below (you can consider
the worker nodes as the user's compute node) for your reference,
==========================================================================
==
If you want to have worker nodes that do not have any tools on them, you
can simply copy smpd.exe to each node and execute "smpd.exe -install".
smpd.exe is the only application required on each machine to launch MPICH2
jobs. But, MPICH2 applications require the mpich2 dlls. This requirement
can be satisfied by copying the mpich2 dlls to the windows\system32
directory on each node. Then any mpich2 application can run on those
systems. This is what the installer does. If you don't want to copy the
mpich2 dlls to each machine, then you need to place the dlls in the same
location as the executable you are going to launch.
For example, if you have a directory called \\myserver\mysharedfolder and
you have myapp.exe and *mpich2*.dll in that directory then you can execute
this command: "mpiexec -n 4 \\myserver\mysharedfolder\myapp.exe"
Note: There are several mpich2 dlls and depending on your build target
(Fortran, C, Debug or Release) you will need the corresponding dlls in the
application directory.
==========================================================================
==
Please find below the list of dlls (you can find them in
c:\windows\system32 directory in your machine) installed with MPICH2,
====================================================
C:\>dir c:\windows\system32\mpich2*.dll
Volume in drive C has no label.
Volume Serial Number is AC9F-67B7
Directory of c:\windows\system32
05/17/2009 04:34 AM 1,249,280 mpich2.dll
06/02/2009 10:13 PM 151,552 mpich2mpe.dll
05/13/2009 09:22 AM 163,840 mpich2mpi.dll
06/02/2009 11:26 PM 1,265,664 mpich2mt.dll
06/02/2009 11:37 PM 1,462,272 mpich2mtp.dll
06/02/2009 11:49 PM 2,318,336 mpich2nemesis.dll
06/02/2009 11:59 PM 2,527,232 mpich2nemesisp.dll
06/02/2009 01:57 AM 1,404,928 mpich2p.dll
06/02/2009 02:39 AM 1,183,744 mpich2shm.dll
06/02/2009 02:50 AM 1,368,064 mpich2shmp.dll
06/02/2009 03:04 AM 1,232,896 mpich2ssm.dll
06/02/2009 03:16 AM 1,449,984 mpich2ssmp.dll
12 File(s) 15,777,792 bytes
0 Dir(s) 5,438,078,976 bytes free
C:\>dir c:\windows\system32\fmpich2*.dll
Volume in drive C has no label.
Volume Serial Number is AC9F-67B7
Directory of c:\windows\system32
06/02/2009 02:19 AM 114,688 fmpich2.dll
06/02/2009 02:24 AM 118,784 fmpich2g.dll
06/02/2009 02:29 AM 126,976 fmpich2s.dll
3 File(s) 360,448 bytes
0 Dir(s) 5,438,078,976 bytes free
C:\>dir c:\windows\system32\mpe*.dll
Volume in drive C has no label.
Volume Serial Number is AC9F-67B7
Directory of c:\windows\system32
06/02/2009 10:13 PM 135,168 mpe.dll
1 File(s) 135,168 bytes
0 Dir(s) 5,438,078,976 bytes free
====================================================
Please let us know if you require further help.
Regards,
Jayesh
_____
From: mpich-discuss-bounces at mcs.anl.gov
[mailto:mpich-discuss-bounces at mcs.anl.gov] On Behalf Of Shangli Wu
Sent: Friday, June 05, 2009 2:59 PM
To: mpich-discuss at mcs.anl.gov
Subject: [mpich-discuss] one question
I have a question about deliver our application with MPICH2. We are build
some applications using MPICH2. When we deliver our executables to
customer, what MPICH2 stuff do we have to ship to customer at same time?
Thanks
Shangli Wu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20090605/652ca058/attachment-0001.htm>
More information about the mpich-discuss
mailing list