[Triolith-users] mpprun upgrade on Triolith on Monday, Jan. 27

Torben Rasmussen torbenr at nsc.liu.se
Mon Jan 20 13:51:14 CET 2014


Dear Triolith user,

Please read this e-mail carefully if you use mpprun to run jobs on Triolith!

If you don’t use mpprun, you can disregard this information.

On Monday January 27, NSC will upgrade mpprun on Triolith to version 
2.0, which is a complete rewrite of the NSC tool for launching MPI jobs. 
With the new version, there are some changes in functionality, which may 
require that you change your mpprun commands.

All jobs submitted from SSH or ThinLinc sessions started after 10:00 on 
Monday Jan. 27 will automatically use mpprun v. 2.0. That is, already 
queued jobs or jobs submitted from an already active login session are 
not affected by the change and will still use the old mpprun version 
even if they actually run after Monday Jan. 27.

In general, the new version works like the previous version, but some 
flags are now obsolete and implicit passing of arguments to the 
underlying MPI launcher is no longer supported. On the other hand, 
mpprun v. 2.0 supports newer versions of MPI, only requires a complete 
path to the binary that is to be launched if the binary is not on the 
PATH, and has OMP_NUM_THREADS awareness.

*IMPORTANT:* If you use any of the flags listed as obsolete below or 
rely on implicit passing of arguments to the underlying MPI launcher, 
you will need to change your job script before Monday Jan. 27!

Please don’t hesitate to contact support at nsc.liu.se if you need help 
with changing your script.


List of changes as of mpprun v. 2.0:

1. *Supported* flags:
-h, --help, -n, -np, --nranks, --pass=, -tv, --totalview, -v, --verbose

2. *Obsolete* flags:
--debug-mpprun, --dry, --force-mpi, --mv2-ignore-mpd, --mv2-KILL-mpd

3. Passing of unknown arguments to the underlying MPI launcher is no 
longer supported. Unknown command line arguments will now cause mpprun 
to fail. To pass arguments to the underlying MPI launcher one has to 
explicitly use the --pass flag.

4. The binary to be launched can be found from the PATH. Hence, a 
complete path is no longer required, but will still work.

5. OMP_NUM_THREADS awareness has been added. Based on the 
OMP_NUM_THREADS value, mpprun can decide how many MPI ranks to launch. 
This feature is still experimental.

6. Support for the latest versions of installed MPIs have been added.


Below you can find a few command line examples that demonstrate changes 
in mpprun functionality:

1. Finding binary from PATH.
mpprun v. 2.0:
$ module load vasp/5.3.3-18Dec12
$ mpprun vasp

Old version:
$ mpprun /software/apps/vasp/5.3.3-18Dec12/default/vasp
(NOTE: This way of using mpprun is still valid for v. 2.0)

2. Passing MPI specific flags through mpprun.
mpprun v. 2.0:
$ mpprun --pass="--bind-to-core --bysocket" 
/software/apps/vasp/5.3.2-13Sep12/openmpi/vasp-gamma

Old version:
$ mpprun --bind-to-core --bysocket 
/software/apps/vasp/5.3.2-13Sep12/openmpi/vasp-gamma
(NOTE: This way of implicitly passing flags through mpprun will *not* 
work with v. 2.0)


Kind regards,
NSC


More information about the Triolith-users mailing list