-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Min Si edited this page Mar 8, 2019
·
3 revisions
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
Running MPICH-PiP on Oakforest-PACS
- 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
- Special environment setting at execution:
HYDRA_HOST_FILE=$PJM_O_NODEINF HYDRA_LAUNCHER_EXEC=pjrsh mpiexec -np 2 ./a.out