📔
활용정보
초보사용자 가이드누리온 지침서뉴론 지침서활용정보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
  • 가. 설치 환경
  • 나. 설치 전 환경설정
  • 다. 설치과정
  • 1. lammps 압축 해제 및 디렉터리 설정
  • 2. 옵션 패키지 설치 과정 예시
  • 3. lammps package 설치 및 설정
  • 4. make 파일 수정 및 make
  1. 소프트웨어 설치
  2. 누리온
  3. LAMMPS

lammps-2Aug2023 설치 소개

이 문서에서는 KISTI 누리온 시스템에서 lammps-2Aug2023 버전을 make로 빌드하는 방법에 대하여 소개합니다.

가. 설치 환경

구분
내용

대상 시스템

Nurion

OS Version

Linux / CentOS 7.9

CPU

Intel Xeon Phi 7250

Intel Xeon 6148

Compiler

Intel oneAPI 21.2

MPI

Intel MPI 21.2

기타

Intel Math Kernel Library (MKL)

나. 설치 전 환경설정

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

$ source /apps/compiler/intel/oneapi_21.2/setvars.sh
$ module purge
$ module load intel/oneapi_21.2 impi/oneapi_21.2

※ 설치 시에만 source 적용이 필요하며 이후에는 module 만 load 하고 작업을 수행하면 됩니다.

다. 설치과정

※ lammps 다운로드 예시

$ wget https://github.com/lammps/lammps/archive/refs/tags/stable_2Aug2023_update4.tar.gz

※ 아래는 일부 패키지 설치 예시이며 필요하지 않은 패키지는 생략하고 설치 진행하여도 무방합니다. 다만, make 단계에서 package 세팅 시 해당 패키지를 제외하고 make를 진행해야 오류가 발생하지 않습니다.

※ plumed 를 제외한 예시 패키지는 모두 ${MY_LAMMPS_DIR}/lib 에서 설치 진행합니다. MY_LAMMPS_DIR 은 lammps 를 압축 해제한 디렉터리 입니다.

※ package에 따라 추가적인 설치 과정이나 make 파일 수정이 필요할 수 있습니다.

1. lammps 압축 해제 및 디렉터리 설정

$ tar -xzf stable_2Aug2023_update4.tar.gz
$ cd lammps-stable_2Aug2023_update4

# 현재 경로를 MY_LAMMPS_DIR 로 설정 
$ export MY_LAMMPS_DIR=$PWD

2. 옵션 패키지 설치 과정 예시

voro++ 설치

$ wget https://math.lbl.gov/voro++/download/dir/voro++-0.4.6.tar.gz
$ tar -xzf voro++-0.4.6.tar.gz

$ cd voro++-0.4.6
$ mkdir -p ${MY_LAMMPS_DIR}/build/library

$ cp config.mk bak_config.mk

$ vi config.mk

-수정 내용-
CXX=mpiicpc
PREFIX=${MY_LAMMPS_DIR}/build/library

$ make > make.log 2>&1
$ make install

# 디렉터리 변경
$ cd $MY_LAMMPS_DIR/lib/voronoi
$ ln -s ${MY_LAMMPS_DIR}/build/library/include/voro++ includelink
$ ln -s ${MY_LAMMPS_DIR}/build/library/lib liblink

poems 설치

$ cd ../poems
(절대 경로 : cd ${MY_LAMMPS_DIR}/lib/poems)

$ cp  Makefile.mpi bak_Makefile.mpi

$ vi Makefile.mpi

-수정 내용-
CC =	        mpiicpc -std=c++11
LINK =         	mpiicpc -std=c++11

$ make -f Makefile.mpi > make.log 2>&1

awpmd 설치

$ cd ../awpmd
(절대 경로 : cd ${MY_LAMMPS_DIR}/lib/awpmd)

$ cp Makefile.lammps.linalg bak_Makefile.lammps.linalg

$ vi Makefile.lammps.linalg

-수정 내용-
(수정이 필요하지 않은 경우 저장하지 않고 vim 종료)
awpmd_SYSLIB = -llinalg

$ cp Makefile.mpi bak_Makefile.mpi

$ vi Makefile.mpi

- 수정 내용-
CC =	    mpiicpc -std=c++11

$ make -f Makefile.mpi > make.log 2>&1

atc 설치

$ cd ../atc
(절대 경로 : cd ${MY_LAMMPS_DIR}/lib/atc)

$ cp Makefile.lammps.linalg bak_Makefile.lammps.linalg

$ vi Makefile.lammps.linalg

-수정 내용-
(수정이 필요하지 않은 경우 저장하지 않고 vim 종료)
atc_SYSLIB = -llinalg

$ cp Makefile.mpi bak_Makefile.mpi
$ vi Makefile.mpi

-수정 내용-
CC =	        mpiicpc -std=c++11

$ make -f Makefile.mpi > make.log 2>&1

linalg 설치

$ cd ../linalg
(절대 경로 : cd ${MY_LAMMPS_DIR}/lib/linalg)

$ cp Makefile.mpi bak_Makefile.mpi
 
$ vi Makefile.mpi

-수정 내용-
CC =          mpiicpc -std=c++11

$ make -f Makefile.mpi > make.log 2>&1

plumed 설치

$ cd ../plumed
(절대 경로 : cd ${MY_LAMMPS_DIR}/lib/plumed)

$ cp Install.py bak_Install.py

$ vi Install.py
- 수정 내용- 
123번째 라인 cmd 로 시작되는 부분
--enable-static-patch CXX=mpiicpc

$ cd ../../src
(절대 경로 : cd ${MY_LAMMPS_DIR}/src)

$ make lib-plumed args="-b" > plumed.make.log 2>&1
(다른 패키지보다 설치에 약간의 시간이 더 소요될 수 있음)

3. lammps package 설치 및 설정

(cd $MY_LAMMPS_DIR/src 경로에서 make 단계 진행)

$ make yes-most
$ make yes-voronoi
$ make yes-poems
$ make yes-awpmd
$ make yes-atc
$ make yes-plumed
$ make yes-intel
$ make yes-mpiio
$ make yes-ml-snap

$ make package-status > package.list 2>&1
(package.list에서 설정된 패키지 확인 가능)

$ vi Makefile.package.settings 
(package.settigs 파일 확인하고 수정사항이 없는 경우 vim 종료)
# Makefile settings generated by libraries used by specific LAMMPS packages
# this file is auto-edited when those packages are included/excluded

include ../../lib/plumed/Makefile.lammps
include ../../lib/atc/Makefile.lammps
include ../../lib/awpmd/Makefile.lammps
include ../../lib/poems/Makefile.lammps
include ../../lib/voronoi/Makefile.lammps
include ../../lib/plugin/Makefile.lammps

4. make 파일 수정 및 make

Makefile.mpi 수정

$ cd MAKE

$ cp Makefile.mpi bak_Makefile.mpi

$ vi Makefile.mpi

-compiler/linker settings 수정 내용-
# 예시 OPTFLAGS 의-xCOMMON-AVX512 는 SKL, KNL 노드 공통 최적화 옵션이며 
# -xMIC-AVX512 는 KNL, -xCORE-AVX512는 SKL 노드 최적화 옵션이므로 3가지 옵션 중 택일

CC =            mpiicpc
OPTFLAGS = -xCOMMON-AVX512 -O3 -fp-model fast=2 -no-prec-div -qoverride-limits -std=c++11

CCFLAGS = -qopenmp -qno-offload -fno-alias -ansi-alias -restrict \
-DLMP_INTEL_USELRT -DLMP_USE_MKL_RNG $(OPTFLAGS)

CCFLAGS += -I$(MKLROOT)/include -I/apps/common/jpeg/9c/include
SHFLAGS =       -fPIC
DEPFLAGS =      -M

LINK =          mpiicpc
LINKFLAGS =     -qopenmp $(OPTFLAGS)
LIB = -ltbb -ltbbmalloc
SIZE =          size

ARCHIVE =       ar
ARFLAGS =       -rc
SHLIBFLAGS =    -shared

-FFT library 수정 내용-
FFT_INC = -DFFT_MKL -DFFT_SINGLE -DFFT_MKL_THREADS
FFT_PATH =
FFT_LIB = -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lmkl_rt

make 실행

$ cd ..
$ make mpi > make.mpi.log 2>&1

※ make 시 오류가 발생하는 경우 clean 방법

$ cd $MY_LAMMPS_DIR/src
$ make clean-all
PreviousLAMMPSNextlammps-3Mar20 설치 소개(SKL)

Last updated 2 months ago

1️⃣