On the HPCF, the mprun command has been surrounded by a wrapper script and aliased as mpirun, so that it provides a reasonable set of defaults for the HPCF systems and locks out some facilities that are known to cause trouble to the system or other users. Please do NOT attempt to bypass the checks.

If the command option -hpcf_dryrun is specified, the script will print out the expanded command that it would have called and the environment that it would use, and do nothing. This may help with debugging, and in building scripts and make files for use elsewhere, but be careful that you do not set an option that relies on the configuration of the HPCF.

Unsupported Facilities

The -c, -j, -l, -m, -nr, -Ns, -p, -R, -S, -u, -U, -W, -x, -Ys, -Z or -Zt options must not be used, because HPCF jobs are run under GridEngine.

The -np option will be set automatically, but can be set directly; please do not run with a small number of processes in a large queue, as it stops other people from working. For complex reasons, threaded MPI programs are not currently supported - please contact HPCF support (support@hpcf.cam.ac.uk) if you want to do this.

There is some fairly horrible code to do with setting MPI_PROCBIND, which is an important tuning parameter, and the wrapper currently forces MPI_SPIN=1, MPI_COSCHED=0 and PARALLEL=1 (don't ask). As part of this, there are some environment variables HPCF_PE, HPCF_SLOTS, HPCF_CPUS, HPCF_NODEPE and HPCF_CPULIST set up by GridEngine to control mpirun - please do not touch these. This is all temporary, because there are Solaris changes coming in this area.

You are strongly advised not to set, unset or change any environment variable beginning MPI_, SUNHPC_ or MP_ (except the ones controlled by HPCF_VERBOSE) without contacting HPCF support (support@hpcf.cam.ac.uk) first. We don't know what many of these do, and some are known to have weird effects or even cause system trouble. Such variables will be diagnosed and will be flattened if HPCF_MODE is yes.

Currently, the only exceptions to the above are MPI_CHECK_ARGS which may be used for detecting some errors, and the variables beginning MPI_PROF for controlling MPI profiling. Please contact HPCF support if you feel that others should be let through with HPCF_MODE set to yes.

If HPCF_MODE is yes, the mprun command will set the environment variables: