Hello Jeroen,


There are 2 ways of launching OpenMPI jobs (using a recent version of LSF):

1.       The one you have just described; it uses the generic PJL (Parallel Job Launcher) framework. You can easily recognise it because of the use of the –a openmpi flag and mpirun.lsf

2.       In recent versions of LSF, another framework is also available, and it permits a tight (native) integration with the MPIs (this is why there is the OpenMPI integration)


So, for 1., a typical command line would be, as you mentioned, something like:


bsub -o %J.out -e %J.err -n 4 -R "span[ptile=1]" -a openmpi mpirun.lsf  ./test


And for 2., you would use something like:


bsub -o %J.out -e %J.err -n 4 -R "span[ptile=1]" mpirun ./test








From: users-bounces@open-mpi.org [mailto:users-bounces@open-mpi.org] On Behalf Of Jeroen Kleijer
Sent: May-05-09 9:26 AM
To: Open MPI Users
Subject: Re: [OMPI users] LSF launch with OpenMPI


If you wish to submit to lsf using its native commands (bsub) you can do the following:


bsub -q ${QUEUE} -a openmpi -n ${CPUS} "mpirun.lsf  -x PATH -x LD_LIBRARY_PATH -x MPI_BUFFER_SIZE ${COMMAND} ${OPTIONS}"


It should be noted that in this case you don't call OpenMPI's mpirun directly but use the mpirun.lsf, a wrapper script provided by LSF. This wrapper script takes care of setting the necessary environment variables and eventually calls the correct mpirun. (the option "-a openmpi" tells LSF that we're using OpenMPI so don't try to autodetect)




Jeroen Kleijer

On Tue, May 5, 2009 at 2:23 PM, Jeff Squyres <jsquyres@cisco.com> wrote:

On May 5, 2009, at 6:10 AM, Matthieu Brucher wrote:

The first is what the support of LSF by OpenMPI means. When mpirun is
executed, it is an LSF job that is actually ran? Or what does it
imply? I've tried to search on the openmpi website as well as on the
internet, but I couldn't find a clear answer/use case.


What Terry said is correct.  It means that "mpirun" will use, under the covers, the "native" launching mechanism of LSF to launch jobs (vs., say, rsh or ssh).  It'll also discover the hosts to use for this job without the use of a hostfile -- it'll query LSF directly to see what hosts it should use.

My second question is about the LSF detection. lsf.h is detected, but
when lsb_launch is searched for ion libbat.so, it fails because
parse_time and parse_time_ex are not found. Is there a way to add
additional lsf libraries so that the search can be done?

Can you send all the data shown here:


Jeff Squyres
Cisco Systems

users mailing list