I am new to using MSMPI. The PGI workstation manual instructed that I add
-Mmpi=msmpi in the include and library paths.

After I do that , I get an error
LINK: fatal error LINK1104: cannot open file ‘msmpi.lib’

Can anyone shed light on what I need to do?


Hi GauravSavant/CHL33655,

I’m guessing that you don’t have MS HPC 2008 SDK installed. The HPC SDK includes MSMPI. You should be able to download the HPC SDK HERE. Once installed the compilers will be able to find the library.

Hope this helps,


Thanks, I missed adding the msmpi to the linker and I think that fixed it.

However, now when I do the following
mpiexec -n 4 *.exe

instead of dividing the process over 4 nodes it runs 4 instances of the same process (1 on each node)??


Have a look at the help for mpiexec.

mpiexec -help
mpiexec -help2
mpiexec -help3

If you figure out how to get this running across multiple nodes on non-Windows HPC Server OS - please share the howto!

  • Sarom

Hi GauravSavant/CHL33655, Sarom,

Microsoft’s mpiexec will only launch jobs on the local node. To launch jobs across a cluster, you need to use the “job submit” command. We have a white paper which shows the basic usage, Though, the paper assumes that you have your HPC Cluster Manager configured correctly. For help with the HPC Cluster Manager, I would need to refer you to Microsoft.

  • Mat


Thanks for the reply.

I am working on a dual quad core system running Xp(not part of a cluster), is there no way I can utilize the processors without Microsoft HPC 2008 or similar?



Microsoft HPC 2008 is needed if you wish to use MSMPI. Though, MPI isn’t the only way to parallelize an application. You could try using OpenMP (see Chapters 5 and 17 of the PGI User’s Guide, or let the compiler try to parallelize the code for you using Auto-parallelization (-Mconcur).

  • Mat