📔
활용정보
초보사용자 가이드누리온 지침서뉴론 지침서활용정보MyKSC 지침서
  • 활용정보
  • 1️⃣소프트웨어 설치
    • 누리온
      • LAMMPS
        • lammps-2Aug2023 설치 소개
        • lammps-3Mar20 설치 소개(SKL)
        • lammps-3Mar20 설치 소개(KNL)
        • lammps-12Dec18 설치 소개
      • GROMACS
        • GROMACS-2021.4 버전 설치 소개 (SKL)
        • GROMACS-2021.4 버전 설치 소개 (KNL)
        • GROMACS-2020.2 버전 설치 소개 (KNL)
        • GROMACS-2020.2 버전 설치 소개 (SKL)
        • GROMACS-2018.6 버전 설치 소개 (KNL)
        • GROMACS-2018.6 버전 설치 소개 (SKL)
        • GROMACS-5.1.4 설치
      • Quantum Espresso
        • Quantum Espresso-7.2 설치 소개
        • Quantum Espresso-6.6 설치 소개
        • Quantum Espresso-6.2.1 설치 소개
      • OpenFOAM
        • OpenFOAM-v1912 설치 소개
        • OpenFOAM-v1712 설치 소개
        • OpenFOAM-7 버전 설치 소개(SKL)
        • OpenFOAM-7 버전 설치 소개(KNL)
        • OpenFOAM-5.x 버전 설치 소개(SKL)
        • OpenFOAM-5.x 버전 설치 소개(KNL)
      • VASP
        • VASP 6.5.0 설치 소개
        • VASP 6.1.0 설치 소개
        • VASP 5.4.4 설치 (KNL)
        • VASP 5.4.4 설치 (SKL)
        • VASP 5.3.5 설치
      • 누리온 R-3.6.2 버전 설치 소개
      • CP2K
        • CP2K-6.1.0 버전 설치 소개
        • CP2K-5.1.0 버전 설치 소개
      • SIESTA
        • SIESTA 4.1-b3 설치(KNL)
        • SIESTA 4.1-b3 설치(SKL)
      • WRF-V3.9.1.1 설치
      • RASPA v2.0.47 설치 소개
      • gcc v8.1.0 설치
      • UPP v3.1 설치 소개
      • mpiP v3.4.1 설치 소개
      • V_Sim v3.7.2 설치 소개
      • foam-extend v3.1 설치 소개
      • ParaView v5.2.0 설치 소개
      • AutoDock Vina v1.1.2 설치 소개
      • DDSCAT v7.3.3 설치 소개
    • 뉴론
      • VASP
        • VASP 6.4.3 설치 (GPU)
        • VASP 5.4.4 설치 (GPU)
      • GROMACS
        • GROMACS-2018.6 (GPU 버전) 설치
        • GROMACS-2016.4 (GPU 버전) 설치
      • LAMMPS
        • lammps-16Mar18 (GPU 버전) 설치
      • NAMD 2.12 (GPU 버전) 설치
      • Quantum Espresso
        • Quantum Espresso-7.3 (GPU 버전) 설치
        • Quantum Espresso-6.6 (GPU 버전) 설치
        • Quantum Espresso-6.4 (GPU 버전) 설치
      • OpenFOAM-v1912 설치 소개 (SKL)
  • 2️⃣슈퍼컴퓨터 활용 팁
    • 공통
      • oneAPI 소개
      • AMD Instinct MI100 GPU 성능 테스트
      • Checkpoint 기능 관련 안내
      • 인터렉티브 작업 제출 예제
      • git 사용 방법 안내
      • PYTHON 2.7 EOL(End of Life) 안내
      • Conda 의 활용 소개
      • CPU 관련 오류 사항 ( illegal instruction )
      • vasp.5.4.4.18Apr17 Version Bug 이슈
      • 컴파일러별 AVX-512 옵션 정리
      • Linux(Unix) 에서 Text 파일 내용에 ^M 이 붙어 있는 경우 해결 방법
      • vasp.5.4.1.24Jun15 Version Bug 이슈
      • 오픈 소스 빌드 시에 OpenMP 체크 오류 (Intel 컴파일러)
      • X86_64 어셈블리 프로그래밍 기초
    • 누리온
      • MVAPICH2/MVAPICH2-X 성능 비교(VASP)
      • WRF
        • WRF 멀티노드 활용(SKL)
        • WRF 멀티노드 활용(KNL)
      • VASP
        • VASP 멀티노드 활용(SKL)
        • VASP 멀티노드 활용(KNL)
      • LAMMPS
        • LAMMPS 멀티노드 활용(SKL)
        • LAMMPS 멀티노드 활용(KNL)
      • Gromacs
        • Gromacs 멀티노드 활용 (SKL)
        • Gromacs 멀티노드 활용 (KNL)
      • QE
        • QE 멀티노드 활용(SKL)
        • QE 멀티노드 활용(KNL)
    • 뉴론
      • SSH Port Forwarding 을 통한 Jupyter 작업 실행
      • AMD 노드 활용
      • LAMMPS 멀티노드 활용
      • Gromacs 멀티노드 활용
      • OpenMPI 3.1.X 이슈 사항
      • MPI 환경설정 및 작업 제출 방법(2021.03)
  • 3️⃣동영상 지침서
    • 공통
      • 파일 전송 (FTP) 사용법
    • 누리온
      • 작업 제출 방법
      • 작업 스크립트 작성법
      • 슈퍼컴퓨터 모듈 사용법
      • 슈퍼컴퓨터 접속 방법 [Windows 사용자]
      • 슈퍼컴퓨터 접속 방법 [Mac 사용자]
    • 뉴론
      • 인터렉티브 작업 방법
      • Slurm 작업 제출 방법
      • conda 설정방법
      • 작업 스크립트 작성 방법
  • 4️⃣기타
    • 누리온
      • FAQ (2025.03)
      • 사용자 지침서 (2021.05)
      • 데스크톱 가상화(VDI)
      • TSMSF 사용자 지침서
      • i-PI 사용법 (LAMMPS)
      • 딥러닝 프레임워크 병렬화 사용법
      • Q-CHEM v5.2 사용자 지침서
      • ABAQUS 사용자 지침서(2020.12)
      • OpenFOAM 사용자 지침서
      • 가우시안16(Gaussian16) S/W 사용 안내 (2019.03)
      • ANSYS FLUENT 사용자 지침서(2020.03)
      • ANSYS CFX 사용자 지침서(2020.02)
      • NASTRAN 사용자 지침서(2020.02)
      • LS-DYNA 사용자 지침서(2020.02)
      • 가우시안16(Gaussian16) LINDA S/W 사용 안내 (2019.08)
    • 뉴론
      • 공유 노드 정책 변경에 따른 메모리 할당량 설정 안내
      • SLURM 스케줄러 Fairshare 스케줄링 정책
      • FAQ (2025.01)
      • OpenFOAM 사용자 지침서
      • Jupyter 사용자 지침서
      • 딥러닝 프레임워크 병렬화 사용법
      • Keras 기반 Multi GPU 사용 방법 (2020.10)
      • 가우시안16(Gaussian16) GPU S/W 사용 안내 (2019.08)
      • slurm 스케쥴러 기본 사용법 (2021.04)
      • 뉴론 시스템 개요(2021.04)
  • External Link
    • Nurion Guide(Eng)
    • Neuron Guide(Eng)
Powered by GitBook
On this page
  • 가. 설치 환경
  • 나. 설치 전 환경 설정
  • 다. OpenFOAM-v5.0 버전 설치 과정
  • 라. 테스트
  • 마. 기타
  1. 소프트웨어 설치
  2. 누리온
  3. OpenFOAM

OpenFOAM-5.x 버전 설치 소개(KNL)

이 문서에서는 SKL 계산노드용 OpenFOAM-5.x 을 컴파일 하여 설치 하는 방법에 대해 예시로 소개합니다.

가. 설치 환경

구분
내용

대상 시스템

누리온

OS Version

리눅스 / CentOS 7.9

CPU

Intel Xeon Phi 7250 Intel Xeon 6148

컴파일러

Intel 2018.3

MPI

IntelMPI 2018.3

기타

나. 설치 전 환경 설정

OpenFOAM-v5.x 버전 설치에 필요한 gmp, mpfr, mpc, boost, CGAL 는 누리온 시스템에 미리 설치된 /apps/common 라이브러리들을 사용합니다. 만약 다른 버전의 gmp, mpfr, mpc, boost, CGAL 가 필요한 경우는 사용자의 홈 디렉터리(/home01/$USER)나 scratch 디렉터리(/scratch/$USER)에 설치 후 환경 설정을 해서 사용하시면 됩니다.

[ 환경 설정 ]
$ module purge
$ module load cmake/3.12.3
$ module load intel/18.0.3 impi/18.0.3

다. OpenFOAM-v5.0 버전 설치 과정

설치 과정 소개는 tar 를 이용한 압축 해제 방법과 설정 방법등 진행 절차를 위주로 설명하고, 소스 파일 다운로드 등은 생략합니다. 설치 소개 시 사용된 경로 $HOME/OpenFOAM-5.0/KNL 는 설치 안내를 위한 경로이므로, 설치하시고자 하는 경로를 입력하여 설치 진행하시기 바랍니다.

$ cd $HOME/OpenFOAM-5.0/KNL
$ mkdir OpenFOAM
$ cd OpenFOAM
$ tar -xzf OpenFOAM-5.x-version-5.0.tar.gz 
$ tar -xzf ThirdParty-5.x-version-5.0.tar.gz
$ mv OpenFOAM-5.x-version-5.0 OpenFOAM-5.0
$ mv ThirdParty-5.x-version-5.0 ThirdParty-5.0
$ vi OpenFOAM-5.0/etc/config.sh/settings 
 - - - [settings 수정 사항] 참고 - - -
$ vi OpenFOAM-5.0/etc/bashrc 
 - - - [bashrc 수정 사항] 참고 - - -
$ vi ThirdParty-5.0/makeCGAL
 - - - [makeCGAL 수정 사항] 참고 - - -
$ vi OpenFOAM-5.0/etc/config.sh/mpi
 - - - [mpi 수정 사항] 참고 - - -
$ vi OpenFOAM-5.0/wmake/rules/linux64Icc/c++ 
 - - - [c++ 수정 사항] 참고 - - -
$ vi ThirdParty-5.0/scotch_6.0.3/src/Make.inc/Makefile.inc.x86-64_pc_linux2.icc 
- - - [Makefile.inc.x86-64_pc_linux2.icc 수정 사항] 참고 - - -
$ vi ThirdParty-5.0/etc/wmakeFiles/scotch/Makefile.inc.i686_pc_linux2.shlib-OpenFOAM
 - - - [Makefile.inc.i686_pc_linux2.shlib-OpenFOAM 수정 사항] 참고 - - -
$ sed -i -e 's/\(boost_version=\)boost-system/\1boost_1_68_0/' OpenFOAM-5.0/etc/config.sh/CGAL
$ sed -i -e 's/\(cgal_version=\)cgal-system/\1CGAL-4.9.1/' OpenFOAM-5.0/etc/config.sh/CGAL
$ source OpenFOAM-5.0/etc/bashrc  $ mkdir -p $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
$ ln -s /apps/common/gmp/6.1.2          $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/gmp-system
$ ln -s /apps/common/mpfr/4.0.1         $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/mpfr-system
$ ln -s /apps/common/mpc/1.1.0          $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/mpc-system
$ ln -s /apps/common/boost/1.68.0       $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/boost_1_68_0
$ ln -s /apps/common/CGAL/4.9.1         $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/CGAL-4.9.1
$ ln -s /apps/applications/cmake/3.12.3  $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/cmake-system

$ cd ThirdParty-5.0
$ ./Allwmake  

$ cd $WM_PROJECT_DIR 
$ ./Allwmake
[settings 수정 사항]
38line :      WM_ARCH=linux64
61line :         64)
62line :             WM_ARCH=linux64
63line :             export WM_COMPILER_LIB_ARCH=64
64line :             export WM_CC='icc'
65line :             export WM_CXX='icpc'
66line :             export WM_CFLAGS='-m64 -fPIC -xMIC-AVX512'
67line :             export WM_CXXFLAGS='-m64 -fPIC -xMIC-AVX512 -std=c++0x'

68line :             export WM_LDFLAGS='-m64 -fPIC -xMIC-AVX512'

※ "-xMIC-AVX512" 옵션은 KNL CPU 타입 전용 옵션으로, __ SKL 계산노드와 KNL 계산노드 모두 실행을 희망하는 경우는 "-xCOMMON-AVX512" 로 변경

[bashrc 수정 사항]
47line : #export FOAM_INST_DIR=$HOME/$WM_PROJECT
50line : export FOAM_INST_DIR=$/OpenFOAM-5.0/KNL/$WM_PROJECT
65line : export WM_COMPILER=Icc 

89line : export WM_MPLIB=INTELMPI

※ 위 수정 예제에서 $/OpenFOAM-5.0/KNL 경로는 설치 시 사용된 경로이므로 변경

[makeCGAL 수정 사항]
 46line : cgalPACKAGE=${cgal_version:-CGAL-4.8.1}

 47line : boostPACKAGE=${boost_version:-boost_1_68_0}
[mpi 수정 사항]
 46line :     libDir=`mpiicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/'`
[c++ 수정 사항]
 9line : CC          = icpc -std=c++11 -xMIC-AVX512 -fp-trap=common -fp-model precise
[Makefile.inc.x86-64_pc_linux2.icc 수정 사항]
 10line : CCP             = mpiicc
 12line : CFLAGS          = $(WM_CFLAGS) -O3 -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_PTHREAD -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -DSCOTCH_PTHREAD -restrict -DIDXSIZE64
[Makefile.inc.i686_pc_linux2.shlib-OpenFOAM 수정 사항]
  6line : AR              = icc
  9line : CCS             = icc
 10line : CCP             = mpiicc
 11line : CCD             = mpiicc

라. 테스트

$ module purge
$ module load intel/18.0.3 impi/18.0.3
$ source $/OpenFOAM-5.0/KNL/OpenFOAM/OpenFOAM-5.0/etc/bashrc 
$ mkdir -p $FOAM_RUN 
$ run 
$ cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily .
$ cd pitzDaily 
$ blockMesh 
$ simpleFoam 

마. 기타

Intel 컴파일러를 이용하여 OpenFOAM 설치 시 KNL CPU 타입 전용 옵션인 "-xMIC-AVX512"를 사용하게 될 경우 KNL 계산노드에서 설치를 진행해야 오류가 발생하지 않습니다. "-xMIC-AVX512" 옵션을 사용할 경우 PBS 스케줄러의 Interactive 기능을 이용하여 KNL 계산노드로 접속하여 빌드를 진행해야 합니다. 아래는 누리온 KNL 계산노드(debug 큐) 로 접속하는 예제입니다.

$ qsub -I -V -q debug -l select=1:ncpus=68:mpiprocs=68:ompthreads=1 -l walltime=12:00:00 -A openfoam

※ qsub 명령 뒤 문자는 I(대문자 아이) 이고, select 와 walltime 앞에 문자는 l(소문자 엘) 입니다.

PreviousOpenFOAM-5.x 버전 설치 소개(SKL)NextVASP

Last updated 1 month ago

1️⃣