Skip to content
Min Si edited this page Mar 8, 2019 · 3 revisions

Quick Start

Installing PiP and PiP-patched Glibc

The source code and detailed installation guidance can be found at https://github.com/RIKEN-SysSoft/PiP

Installing MPICH-PiP

git clone https://github.com/pmodels/mpich-pip
cd mpich-pip
git submodule update --init --recursive
./autogen.sh

./configure --prefix=<MPICH_PIP_INSTALL_DIR> --with-pip-prefix=<PIP_INSTALL_DIR> --with-ldlinux=<PATCHED_GLIBC_INSTALL_DIR>
             CC=gcc FC=gfortran CXX=g++ --disable-static 
make -j && make install

Compiling an MPI program

<MPICH_PIP_INSTALL_DIR>/bin/mpicc -o a.out test.c

Executing the program binary

The following command launches 2 MPI processes, each of them is a PiP task. The two processes shares the same virtual address space if they are on the same node.

<MPICH_PIP_INSTALL_DIR>/bin/mpiexec -np 2 ./a.out


Platform-specific Guidance

Running MPICH-PiP on Oakforest-PACS

  1. MPICH configure options:
./configure --prefix=<MPICH_PIP_INSTALL_DIR> --with-pip-prefix=<PIP_INSTALL_DIR> --with-ldlinux=<PATCHED_GLIBC_INSTALL_DIR> \
            CC=gcc FC=gfortran CXX=g++ \                  
            --disable-mpe --disable-spawn --disable-static \
            --with-device=ch4:ofi:psm2 
  1. Special environment setting at execution:
HYDRA_HOST_FILE=$PJM_O_NODEINF HYDRA_LAUNCHER_EXEC=pjrsh mpiexec -np 2 ./a.out
Clone this wiki locally