누리온 지침서
초보사용자 가이드누리온 지침서 뉴론 지침서활용정보MyKSC 지침서
  • 누리온 지침서
  • 1️⃣시스템
    • 시스템 개요 및 구성
    • 사용자 환경
    • 사용자 프로그래밍 환경
    • 스케줄러(PBS)를 통한 작업 실행
    • 사용자 지원
  • 2️⃣소프트웨어
    • ANSYS FLUENT
    • ANSYS CFX
    • Abaqus (2023 버전 이전)
    • Abaqus (2024 버전 이후)
    • NASTRAN
    • 가우시안16(Gaussian16) LINDA
    • 가우시안16(Gaussian16)
  • 3️⃣부록
    • 작업 스크립트 주요 키워드
    • Conda
    • Singularity 컨테이너
    • Lustre stripe
    • 데이터 아카이빙
    • MVAPICH2 성능 최적화 옵션
    • 딥러닝 프레임워크 병렬화
    • 공통라이브러리 목록
    • 데스크톱 가상화(VDI)
    • 버스트버퍼(Burst Buffer)
    • 플랫 노드(Flat node)
    • DTN(데이터전송노드)
  • External Link
    • Nurion Guide(Eng)
    • Neuron Guide(Eng)
Powered by GitBook
On this page
  1. 부록

MVAPICH2 성능 최적화 옵션

MPI 라이브러리로 MVAPICH2를 활용하는 경우 작업 스크립트 내에서 환경변수를 사용하여 프로세스 간 통신 알고리즘을 설정할 수 있다. 주요 키워드는 아래와 같으며, 사용자는 코드 내에서 많이 활용되는 collective communication에 대하여 환경변수 설정을 활용하여 실행 성능을 최적화할 수 있다.

MV2_INTRA 환경변수는 노드 내 MPI 프로세스 통신에서 활용되며 MV2_INTER 환경변수는 노드 간 MPI 프로세스 통신에서 활용된다. MPI_Alltoall의 경우 INTRA 및 INTER 두가지 경우에 대하여 동일한 알고리즘이 적용된다. 크기가 다른 데이터 전송을 위한 루틴(예: MPI_Alltoallv) 또는 non-blocking 기반 루틴(예: MPI_Ibcast)에도 동일하게 적용 가능하며 설정 방법은 아래와 같다.

  • MVAPICH2 라이브러리 collective communication 주요 환경 변수

MPI 통신

환경변수

설정범위

MPI_Gather

MV2_INTRA_GATHER_TUNING

MV2_INTER_GATHER_TUNING

0 ~ 3

MPI_Bcast

MV2_INTRA_BCAST_TUNING

MV2_INTER_BCAST_TUNING

0 ~ 10

MPI_Scatter

MV2_INTRA_SCATTER_TUNING

MV2_INTER_SCATTER_TUNING

1 ~ 5

MPI_Allreduce

MV2_INTRA_ALLREDUCE_TUNING

MV2_INTER_ALLREDUCE_TUNING

1 ~ 6

MPI_Reduce

MV2_INTRA_REDUCE_TUNING

MV2_INTER_REDUCE_TUNING

1 ~ 6

MPI_Allgather

MV2_INTRA_ALLGATHER_TUNING

MV2_INTER_ALLGATHER_TUNING

1 ~ 11

MPI_Alltoall

MV2_ALLTOALL_TUNING

0 ~ 4

※ 사용 예시 (bash 스크립트 작성 경우) : export MV2_INTER_ALLREDUCE_TUNING=2

※ 각 환경변수에 대한 자세한 설명은 http://mvapich.cse.ohio-state.edu/userguide/ 참조

2022년 9월 22일에 마지막으로 업데이트되었습니다.

Previous데이터 아카이빙Next딥러닝 프레임워크 병렬화

Last updated 1 year ago

3️⃣