LAMMPS 썸네일형 리스트형 Performance Optimization MPI task timing breakdown:Section | min time | avg time | max time |%varavg| %CPU | %total-----------------------------------------------------------------------Pair | 23.23 | 29.199 | 35.149 | 54.5 | 106.3 | 2.43Bond | 0.3972 | 0.41134 | 0.42617 | 1.2 | 100.0 | 0.03Neigh | 2.2348 | 3.4266 | 4.8853 | 33.5 | 196.6 | 0.29Comm | 383.68 .. 더보기 Possible Acclerations fix wall/gran : kokkosfix rigid/small : ompfix gravity : kokkosfix viscous : kokkospair_style gran/hertz/history : omp---- optional pair_style gran/hooke : omppair_style gran/hooke/history : kokkos---- kokkos accelerator는 fix pour와 함께 사용이 불가하다. - kokkos의 gpu, omp 모두 불가 - stage 2, 3에서는 fix pour를 사용하지 않으니 kokkos가 가능할지도 gpu accelerator는 granular simulation에서 딱히 지원되는 fix나 pair style이 현존하지 않는다.gpu .. 더보기 LAMMPS with AOCC Updated 260207 환경설정source /opt/AMD/aocc-compiler-5.0.0/setenv_AOCC.sh 컴파일러 위치 확인, mpicc, mpicxx, mpifort는 wrapping되어 있다.$ which clang/opt/AMD/aocc-compiler-5.0.0/bin/clang$ which clang++/opt/AMD/aocc-compiler-5.0.0/bin/clang++$ which flang/opt/AMD/aocc-compiler-5.0.0/bin/flang$ which mpicc/usr/local/bin/mpicc$ which mpicxx/usr/local/bin/mpicxx$ which mpifort/usr/local/bin/mpifort$ mpicxx --versionAMD clang ver.. 더보기 MPI+OMP in AOCC export OMP_NUM_THREADS=2export OMP_PLACES=coresexport OMP_PROC_BIND=closempirun -np 48 \ --map-by ppr:12:numa:pe=2 \ --bind-to core \ ./lmp -sf omp -pk omp 2 -in in.AK1 FlagMeaning-np 48Use 48 MPI ranks total--map-by ppr:12:numa:pe=212 ranks per NUMA node × 4 = 48 ranks; each gets 2 cores (for OMP)--bind-to coreBinds each rank and its threads to specific physical coresOMP_PLACES=coresEach thr.. 더보기 IntelOneAPI command line options for NUMA I_MPI_PIN=1 I_MPI_PIN_DOMAIN=core I_MPI_PIN_ORDER=spread I_MPI_DEBUG=5 mpirun -np 48 ./lmp -in in.AK 더보기 LAMMPS IntelOneAPI build (2025.5.14) 이제 LAMMPS의 소스코드를 다운 받는다.git clone https://github.com/lammps/lammps.git :~/Downloads/lammps$ mkdir build:~/Downloads/lammps$ cd build:~/Downloads/lammps/build$ source /opt/intel/oneapi/setvars.sh $ which icx/opt/intel/oneapi/compiler/2025.1/bin/icx$ which icpx/opt/intel/oneapi/compiler/2025.1/bin/icpx$ which ifx/opt/intel/oneapi/compiler/2025.1/bin/ifx (GCC 사용시 적합)cmake ../cmake \ -G Ninja \ .. 더보기 AOCC, AOCL Cmake (optional) cmake ../../cmake \ -G Ninja \ -D BUILD_MPI=ON \ -D BUILD_OMP=ON \ -D CMAKE_C_COMPILER=/opt/openmpi/aocc/5.0.6/bin/mpicc \ -D CMAKE_CXX_COMPILER=/opt/openmpi/aocc/5.0.6/bin/mpicxx \ -D CMAKE_Fortran_COMPILER=/opt/openmpi/aocc/5.0.6/bin/mpifort \ -D CMAKE_C_FLAGS="-Ofast -march=znver4 -fopenmp -fvector-transform -mllvm -enable-strided-vectorization" \ -D CMAKE_CXX_FLAGS="-Ofast -march=znv.. 더보기 IntelOneAPI 환경에서 실행 환경변수 세팅방법은, 아래의 두개 중 하나를 사용하면 된다. 개인용 워크스테이션이라면 쉘 스크립트가 추천된다.source /opt/intel/oneapi/setvars.shmodule load compiler-intel-llvm/latest 또 한가지 유의할 점은, 가끔 아래와 같은 에러가 뜨는데,./lmp: error while loading shared libraries: liblammps.so.0: cannot open shared object file: No such file or directory 라이브러리 파일을 동일 디렉토리에 넣어도 라이브러리 패스를 세팅하지 않으면 뜨는 에러이다.임시로는 아래와 같이 설정 export LD_LIBRARY_PATH="$PWD:$LD_LIBRARY_PATH" 더보기 이전 1 2 3 4 ··· 6 다음