扫描手机二维码

欢迎您的访问
您是第 位访客

开通时间:..

最后更新时间:..

  • 高安康 ( 副研究员 )

    的个人主页 http://faculty.ustc.edu.cn/gaoankang/zh_CN/index.htm

  •   副研究员   硕士生导师
教师博客 当前位置: 中文主页 >> 教师博客
Nektar++ on the USTC HPC cluster hanhai22
点击次数:

Access to the cluster


ssh username@211.86.151.115


Compilation instructions

Before you start compiling Nektar++, you need to load the following modules

module load boost/1.82.0 cmake/3.19.0 hpcx/2.19/hpcx \
tbb/latest compiler-rt/latest mkl/2022.1.0


Download the source code

git clone https://gitlab.nektar.info/gaoak/nektar.git nektar++
cd nektar++


Create the build directory

cd nektar++
mkdir build
cd build


for common build, run cmake

CC=mpicc CXX=mpicxx
cmake -DNEKTAR_USE_MPI=ON -DNEKTAR_USE_MKL=ON \
-DNEKTAR_USE_SYSTEM_BLAS_LAPACK=OFF \
-DNEKTAR_USE_FFTW=ON -DNEKTAR_USE_HDF5=ON \
-DTHIRDPARTY_BUILD_BOOST=OFF \
-DTHIRDPARTY_BUILD_HDF5=ON  \
-DTHIRDPARTY_BUILD_FFTW=ON  \
-DTHIRDPARTY_BUILD_BLAS_LAPACK=OFF   ..


for AVX512 build, run cmake

CC=mpicc CXX=mpicxx
cmake -DNEKTAR_USE_MPI=ON -DNEKTAR_USE_MKL=ON \
-DNEKTAR_USE_SYSTEM_BLAS_LAPACK=OFF \
-DNEKTAR_USE_FFTW=ON -DNEKTAR_USE_HDF5=ON \
-DTHIRDPARTY_BUILD_BOOST=OFF \
-DTHIRDPARTY_BUILD_HDF5=ON  \
-DNEKTAR_ENABLE_SIMD=AVX512  \
-DCMAKE_CXX_FLAGS=-mavx512f\ -mfma  \
-DTHIRDPARTY_BUILD_FFTW=ON  \
-DTHIRDPARTY_BUILD_BLAS_LAPACK=OFF   ..


Then run

make -j4 install


Submit jobs interactively

Create an interactive job on the compute node in the test queue

salloc -p test -N 1 -n 1 --qos=testqos



Submit a job using sbatch, sbatch job.sub, with a job.sub file

run module load first

module load module load boost/1.82.0 cmake/3.19.0 hpcx/2.19/hpcx \
tbb/latest compiler-rt/latest mkl/2022.1.0


then, sbatch job.sh with file

#!/bin/sh
#SBATCH -J 2Dcase
#SBATCH -o job-%j.log
#SBATCH -e job-%j.err
#SBATCH -p CPU-64C256GB
#SBATCH -N 1
#SBATCH -n 64
#SBATCH --exclude=cnode57,cnode58,cnode59,cnode66
#SBATCH --exclusive
#SBATCH --time=4:10:0
#SBATCH --qos=qos_cpu_64c256gb

echo Time is `date`
echo Directory is $PWD
echo This job runs on the following nodes:
echo $SLURM_JOB_NODELIST
echo This job has allocated $SLURM_JOB_CPUS_PER_NODE cpu cores.

export NEK_DIR=/home/ses/agao20/code/nektar/build
export NEK_BUILD=$NEK_DIR/dist/bin
export LD_LIBRARY_PATH=$NEK_DIR/ThirdParty/dist/lib:$NEK_DIR/dist/lib64:$LD_LIBRARY_PATH
export OMP_NUM_THREADS=1

MPIRUN=mpirun #Intel mpi and Open MPI
$MPIRUN --mca pml ob1 \
    --mca btl self,vader,tcp \
    --mca btl_vader_single_copy_mechanism none \
    --mca coll ^ucc,hcoll \ 
    $NEK_BUILD/IncNavierStokesSolver wing.xml wingc.xml  -i Hdf5 -v --set-start-chknumber 0 > runlog 2>&1


References

https://www.nektar.info/nektar-on-archer2/
https://www.nektar.info/nektar-ic-hpc/




















版权所有 ©2020 中国科学技术大学
地址:安徽省合肥市金寨路 96 号,邮政编码:230026