mpiP v3.4.1 설치 소개

mpiP는 MPI 애플리케이션을 위한 가벼운 프로파일링 라이브러리입니다. MPI 함수에 대한 통계 정보만 수집하기 때문에 mpiP는 추적 도구보다 상당히 적은 오버헤드와 훨씬 적은 데이터를 생성합니다.

이 문서에서는 mpiP 3.4.1 버전을 컴파일 하여 설치 하는 방법에 대해 예시로 소개합니다.

가. 설치 환경

구분
내용

대상 시스템

누리온

OS Version

리눅스 / CentOS 7.9

CPU

Intel Xeon Phi 7250 Intel Xeon 6148

컴파일러

GNU 7.2.0 version

MPI

Openmpi 3.1.0 version

기타

나. 설치 전 환경 설정

누리온 시스템에서는 PATH, LD_LIBRARY_PATH 설정을 손쉽게 하기 위해서 환경설정 툴인 Module이 구성되어 있으며 이하 설치 소개에서는 module load 를 이용한 환경설정 방법으로 안내 드립니다.

[ 환경 설정 ]

$ module purge
$ module load gcc/7.2.0 openmpi/3.1.0

다. 설치 과정

설치 과정 소개는 tar 를 이용한 압축 해제 방법과 설정 방법등 진행 절차를 위주로 설명하고, 소스 파일 다운로드 등은 생략합니다.

mpiP는 dependency로 인하여 설치 전 binutils와 libunwind 라이브러리에 대한 설치가 사전에 완료되어야 합니다.

설치 경로는 ${HOME}/apps/mpiP/3.4.1을 사용하였습니다. 이 위치는 사용자에게 맞는 위치로 변경하여야 합니다. 아래의 방법으로 설치 진행 시 라이브러리와 헤더 파일은 각각 my_lib, my_include** ** 디렉토리에 설치됩니다.

1. binutils 설치

[설치과정]

$ tar xzvf binutils-2.32.tar.gz
$ cd binutils-2.32
$ ./configure --prefix=${HOME}/apps/binutils \
--libdir=${HOME}/apps/my_lib \
--includedir=${HOME}/apps/my_include \
--enable-ld=yes --with-system-zlib \
--with-mpc=/apps/common/mpc/1.1.0 --with-mpfr=/apps/common/mpfr/4.0.1 \
--with-gmp=/apps/common/gmp/6.1.2 --enable-install-libiberty
$ make
$ make install

2. libunwind 설치

[설치과정]

$ tar xzvf libunwind-1.2.tar.gz
$ cd libunwind-1.2
$ ./configure --prefix=${HOME}/apps/libunwind \
--libdir=${HOME}/apps/my_lib \
--includedir=${HOME}/apps/my_include \
--enable-shared --enable-static
$ make
$ make install

3. mpiP 설치

[설치과정]

$ tar xzvf mpiP-3.4.1.tar.gz
$ cd mpiP-3.4.1
$ ./configure --prefix=${HOME}/apps/mpiP \
--libdir=${HOME}/apps/my_lib \
--includedir=${HOME}/apps/my_include \
LDFLAGS="-L/apps/compiler/gcc/7.2.0/openmpi/3.1.0/lib \
-L${HOME}/apps/my_lib" </p>
CPPFLAGS="-I/apps/compiler/gcc/7.2.0/openmpi/3.1.0/include \
-I${HOME}/apps/my_include"
$ vi mpiPi.h
----- 수정 사항은 아래의 내용 참고 -----
$ make
$ make install

[vi mpiPi.h수정 사항]

<수정 전>
#ifndef _MPIPI_H
#define _MPIPI_H

<수정 후>
#ifndef _MPIPI_H
#define _MPIPI_H
#define PACKAGE 1
#define PACKAGE_VERSION 1

Last updated