SciClone Cluster Project Computational Science Cluster
Home
Introduction
Sponsors
Research
Hardware
Software
User Info
Documentation

Name: MPICH

Version: 1.2.5

Description:

MPICH is a portable implementation of the MPI message passing standard, augmented with the MPE library of extensions for performance profiling and debugging. Two variants have been installed on SciClone: the "v8plusa/generic" version will run on any node in the cluster, while the "v8plusb/ultra3cu" version is optimized for UltraSPARC III nodes only.

Installation Path:

/usr/local/v8plusa/generic/mpich-1.2.5/
/usr/local/v8plusb/ultra3cu/mpich-1.2.5/

Documentation:

Usage Notes:

MPICH programs on SciClone must be initiated via PBS using the pbsmpich command rather than with mpirun. See the SciClone User's Guide and pbsmpich man page for complete details.

Due to configuration and compilation problems, 64-bit versions of MPICH (v9a and v9b architectures) are not available on SciClone under Solaris 9.

Historically, LAM MPI has been faster and more stable than MPICH for most applications. However, MPICH 1.2.5 exhibits better reliability on SMP nodes and scalability to larger numbers of nodes than previous releases. Users are encouraged to experiment with both LAM and MPICH to determine which works best for a given application.

Environment Variables

For proper operation, the MPICH environment variable must be set in the user's ~/.cshrc file to specify the desired variant (v8plusa/generic or v8plusb/ultra3cu). $MPICH/bin should be in the user's search path, and $MPICH/man should be included in the MANPATH. The file /usr/local/etc/templates/cshrc contains the current recommended environment settings and includes options for specifying which version of MPICH to use, and for switching between MPICH and other MPI packages.

In addition, the P4_SOCKBUFSIZE variable can be used to control the socket buffer size used for TCP communication between processes, and the P4_GLOBMEMSIZE variable determines the amount of shared memory set aside for intranode message passing. These are set to reasonable defaults in /usr/local/etc/templates/cshrc, but may need to be tuned for optimum performance in particular applications.