Difference between revisions of "Cray"

From Mpich
Jump to: navigation, search
(Created page with "This page describes how to build mpich master from the [https://github.com/pmodels/mpich/ Github repository] == Cray build instructions == Building on the Cray is like other...")
 
Line 19: Line 19:
  
 
* In fact, there are atomic types all over the place, and libfabric's gni provider doesn't have a fallback like the above general patch.  For now load <code> PrgEnv-gnu </code> into your environment.  That should bring in a fairly recent gcc (gcc-7.3 as of this writing)
 
* In fact, there are atomic types all over the place, and libfabric's gni provider doesn't have a fallback like the above general patch.  For now load <code> PrgEnv-gnu </code> into your environment.  That should bring in a fairly recent gcc (gcc-7.3 as of this writing)
 +
 +
=== Running notes ===
 +
 +
Since we used <code>PrgEnv-gnu</code> to build MPICH, you will need to make sure <code>PrgEnv-gnu</code> is in your environment.  For me, my submitted jobs kept wanting to load <code>PrgEnv-intel</code> by default, so I had to insert
 +
  module swap PrgEnv-intel PrgEnv-gnu
 +
into my job submission script.

Revision as of 20:35, 9 May 2018

This page describes how to build mpich master from the Github repository

Cray build instructions

Building on the Cray is like other systems: you'll need fairly up-to-date Autotools (autoconf >= 2.67, automake >= 1.15, libtool >= 2.44). On Argonne's theta machine, you can find these in ~robl/soft/cray/autotools

configure options

Configure MPICH with these Cray specific options:

  • --with-device=ch4:ofi:gni for the Cray transport
  • --with-pmi=cray to pick up Cray PMI library from modules
  • --with-pm=no: Hydra won't work on the cray. Instead, aprun launches the processes.

Build notes

  • libfabric will use standard atomic types if detected, but the Intel compilers do not export all the types needed. You will need

https://github.com/ofiwg/libfabric/pull/3984/ until we update libfabric to something newer than 1.6.0

  • In fact, there are atomic types all over the place, and libfabric's gni provider doesn't have a fallback like the above general patch. For now load PrgEnv-gnu into your environment. That should bring in a fairly recent gcc (gcc-7.3 as of this writing)

Running notes

Since we used PrgEnv-gnu to build MPICH, you will need to make sure PrgEnv-gnu is in your environment. For me, my submitted jobs kept wanting to load PrgEnv-intel by default, so I had to insert

  module swap PrgEnv-intel PrgEnv-gnu

into my job submission script.