软件资源
部分软件资源
- GNU
- Intel
- NVIDIA
- AMD
- Python
- Golang
- Open MPI
- Tcl/TK
- 计算软件
- VASP6 GPU 编译
- Quantum Espresso
- NAMD
- OOMMF
- Mumax3
- 支撑软件
- Singularity Image
- gnuplot
- OVITO
- Vim
- Zsh
- AlphaFold 2
- AlphaFold 3
- RoseTTAFold
- ParallelFold 2
GNU
GNU Compiler Collection
Name | Path | Module |
---|---|---|
GNU Compiler Collection (GCC) 12.1.0 & GNU Binutils 2.38 | /fs00/software/gcc/12.1.0 | gcc/12.1.0 |
GNU Compiler Collection (GCC) 11.3.0 & GNU Binutils 2.36.1 | /fs00/software/gcc/11.3.0 | gcc/11.3.0 |
GNU Compiler Collection (GCC) 10.5.0 & GNU Binutils 2.34 | /fs00/software/gcc/10.5.0 | gcc/10.5.0 |
GNU Compiler Collection (GCC) 9.5.0 & GNU Binutils 2.32 | /fs00/software/gcc/9.5.0 | gcc/9.5.0 |
GNU Compiler Collection (GCC) 8.5.0 & GNU Binutils 2.30 | /fs00/software/gcc/8.5.0 | gcc/8.5.0 |
GNU Compiler Collection (GCC) 7.5.0 & GNU Binutils 2.28.1 | /fs00/software/gcc/7.5.0 | gcc/7.5.0 |
GNU Compiler Collection (GCC) 6.5.0 & GNU Binutils 2.26.1 | /fs00/software/gcc/6.5.0 | gcc/6.5.0 |
GNU Compiler Collection (GCC) 5.4.0 | /fs00/software/gcc/5.4.0 | gcc/5.4.0 |
GNU Make
Name | Path | Module |
---|---|---|
GNU Make 4.3 | /fs00/software/make/4.3 | make/4.3 |
GNU Make 4.2.1 | /fs00/software/make/4.2.1 | make/4.2.1 |
GNU Make 4.2 | /fs00/software/make/4.2 | make/4.2 |
GNU Scientific Library
Name | Compiler | Path | Module |
---|---|---|---|
GNU Scientific Library (GSL) 2.7.1 | GCC 12.1.0 | /fs00/software/gsl/2.7.1-gcc12.1.0 | gsl/2.7.1-gcc12.1.0 |
GNU Scientific Library (GSL) 2.5 | GCC 8.3.0 | /fs00/software/gsl/2.5-gcc8.3 | gsl/2.5-gcc8.3 |
GNU C Library
Name | Compiler | Path | Module |
---|---|---|---|
GNU C Library (glibc) 2.36 | GCC 12.1.0 | /fs00/software/glibc/2.36-gcc12.1.0 | glibc/2.36-gcc12.1.0 |
GNU C Library (glibc) 2.30 | GCC 9.2.0 | /fs00/software/glibc/2.30-gcc9.2.0 | glibc/2.30-gcc9.2.0 |
GNU Binutils
Name | Compiler | Path | Module |
---|---|---|---|
GNU Binutils 2.38 | GCC 12.1.0 | /fs00/software/binutils/2.38-gcc12.1.0 | binutils/2.38-gcc12.1.0 |
GNU Binutils 2.27 | GCC 5.4.0 | /fs00/software/binutils/2.27-gcc5.4.0 | binutils/2.27-gcc5.4.0 |
Intel
Intel oneAPI
Name | Path | MODULEPATH |
---|---|---|
Intel oneAPI Base Toolkit 2024.0.1 Intel HPC Toolkit 2024.0.1 |
/fs00/software/intel/oneapi2024.0 | /fs00/software/modulefiles/oneapi/2024.0 |
Intel Parallel Studio
Name | Path | Module |
---|---|---|
Intel Parallel Studio XE 2020 Update 2 Cluster Edition | /fs00/software/intel/ps2020u2 | ips/2020u2 |
Intel Parallel Studio XE 2019 Update 5 Cluster Edition | /fs00/software/intel/ps2019u5 | ips/2019u5 |
Intel Parallel Studio XE 2018 Update 4 Cluster Edition | /fs00/software/intel/ps2018u4 | ips/2018u4 |
Intel Parallel Studio XE 2017 Update 6 Cluster Edition | /fs00/software/intel/ps2017u6 | ips/2017u6 |
Intel Parallel Studio XE 2017 Update 2 Cluster Edition | /fs00/software/intel/ps2017u2 | ips/2017u2 |
Intel Parallel Studio XE 2016 Update 4 Cluster Edition | /fs00/software/intel/ps2016u4 | ips/2016u4 |
Intel Parallel Studio XE 2015 Update 6 Cluster Edition | /fs00/software/intel/ps2015u6 | ips/2015u6 |
Intel Cluster Studio XE 2013 Service Pack 1 (SP1) Update 1 | /fs00/software/intel/cs2013sp1u1 | ics/2013sp1u1 |
Intel Cluster Studio XE 2013 | /fs00/software/intel/cs2013 | ics/2013 |
Intel Parallel Studio XE 2011 SP1 Update 3 | /fs00/software/intel/ps2011sp1u3 | ips/2011sp1u3 |
Intel Distribution for Python
Name | Path |
---|---|
Intel Distribution for Python 2.7 2019 Update 5 | /fs00/software/intel/ps2019u5/intelpython2 |
Intel Distribution for Python 3.6 2019 Update 5 | /fs00/software/intel/ps2019u5/intelpython3 |
Intel Distribution for Python 2.7 2018 Update 3 | /fs00/software/intel/python2018u3/intelpython2 |
Intel Distribution for Python 3.6 2018 Update 3 | /fs00/software/intel/python2018u3/intelpython3 |
Intel Distribution for Python 2.7 2017 Update 3 | /fs00/software/intel/python2017u3/intelpython2 |
Intel Distribution for Python 3.5 2017 Update 3 | /fs00/software/intel/python2017u3/intelpython3 |
NVIDIA
CUDA Toolkit
Name | Path | Module |
---|---|---|
CUDA Toolkit 12.3.1 | /fs00/software/cuda/12.3.1 | cuda/12.3.1 |
CUDA Toolkit 12.0.0 | /fs00/software/cuda/12.0.0 | cuda/12.0.0 |
CUDA Toolkit 11.8.0 | /fs00/software/cuda/11.8.0 | cuda/11.8.0 |
CUDA Toolkit 11.2.0 | /fs00/software/cuda/11.2.0 | cuda/11.2.0 |
CUDA Toolkit 10.2.89 | /fs00/software/cuda/10.2.89 | cuda/10.2.89 |
CUDA Toolkit 10.1.243 | /fs00/software/cuda/10.1.243 | cuda/10.1.243 |
CUDA Toolkit 10.0.130 | /fs00/software/cuda/10.0.130 | cuda/10.0.130 |
CUDA Toolkit 9.2.148 | /fs00/software/cuda/9.2.148 | cuda/9.2.148 |
CUDA Toolkit 9.0.176 with Patch 3 | /fs00/software/cuda/9.0.176 | cuda/9.0.176 |
CUDA Toolkit 8.0 GA2 8.0.61 with Patch 2 | /fs00/software/cuda/8.0.61 | cuda/8.0.61 |
cuDNN
Name | CUDA | Path | Module |
---|---|---|---|
cuDNN v8.9.7.29 | 12.x | /fs00/software/cudnn/8.9.7.29-cuda12 | cudnn/8.9.7.29-cuda12 |
cuDNN v8.9.7.29 | 11.x | /fs00/software/cudnn/8.9.7.29-cuda11 | cudnn/8.9.7.29-cuda11 |
cuDNN v8.7.0.84 | 11.x | /fs00/software/cudnn/8.7.0.84-cuda11 | cudnn/8.7.0.84-cuda11 |
cuDNN v8.7.0.84 | 10.2 | /fs00/software/cudnn/8.7.0.84-cuda10 | cudnn/8.7.0.84-cuda10 |
cuDNN v8.1.1.33 | 11.2 | /fs00/software/cudnn/11.2-v8.1.1.33 | cudnn/11.2-v8.1.1.33 |
cuDNN v8.2.2.26 | 10.2 | /fs00/software/cudnn/10.2-v8.2.2.26 | cudnn/10.2-v8.2.2.26 |
cuDNN v7.6.5.32 | 10.2 | /fs00/software/cudnn/10.2-v7.6.5.32 | cudnn/10.2-v7.6.5.32 |
cuDNN v7.6.4.38 | 10.1 | /fs00/software/cudnn/10.1-v7.6.4.38 | cudnn/10.1-v7.6.4.38 |
cuDNN v7.6.5.32 | 10.0 | /fs00/software/cudnn/10.0-v7.6.5.32 | cudnn/10.0-v7.6.5.32 |
cuDNN v7.1.4 | 9.2 | /fs00/software/cudnn/9.2-v7.1.4 | cudnn/9.2-v7.1.4 |
cuDNN v7.1.4 | 9.0 | /fs00/software/cudnn/9.0-v7.1.4 | cudnn/9.0-v7.1.4 |
cuDNN v7.0.5 | 8.0 | /fs00/software/cudnn/8.0-v7.0.5 | cudnn/8.0-v7.0.5 |
cuDNN v6.0 | 8.0 | /fs00/software/cudnn/8.0-v6.0 | cudnn/8.0-v6.0 |
cuDNN v5.1 | 8.0 | /fs00/software/cudnn/8.0-v5.1 | cudnn/8.0-v5.1 |
HPC SDK
Name | Path | MODULEPATH |
---|---|---|
HPC SDK 23.11 | /fs00/software/nvhpc/23.11 | /fs00/software/nvhpc/23.11/modulefiles |
HPC SDK 22.11 | /fs00/software/nvhpc/22.11 | /fs00/software/nvhpc/22.11/modulefiles |
HPC SDK 21.3 | /fs00/software/nvhpc/21.3 | /fs00/software/nvhpc/21.3/modulefiles |
HPC SDK 20.9 | /fs00/software/nvhpc/20.9 | /fs00/software/nvhpc/20.9/modulefiles |
HPC-X
Name | CUDA | Path | MODULEPATH |
---|---|---|---|
HPC-X 2.17.1 | 12.x | /fs00/software/hpcx/2.17.1-cuda12 | /fs00/software/hpcx/2.17.1-cuda12/modulefiles |
NCCL
Name | CUDA | Path | Module |
---|---|---|---|
NCCL 2.19.3 | 12.3 | /fs00/software/nccl/2.19.3-cuda12.3 | nccl/2.19.3-cuda12.3 |
NCCL 2.16.2 | 12.0 | /fs00/software/nccl/2.16.2-cuda12.0 | nccl/2.16.2-cuda12.0 |
NCCL 2.16.2 | 11.8 | /fs00/software/nccl/2.16.2-cuda11.8 | nccl/2.16.2-cuda11.8 |
NCCL 2.16.2 | 11.0 | /fs00/software/nccl/2.16.2-cuda11.0 | nccl/2.16.2-cuda11.0 |
NCCL v2.5.6 | 10.2 | /fs00/software/nccl/10.2-v2.5.6 | nccl/10.2-v2.5.6 |
NCCL v2.4.8 | 10.1 | /fs00/software/nccl/10.1-v2.4.8 | nccl/10.1-v2.4.8 |
TensorRT
Name | CUDA | cuDNN | Path | Module |
---|---|---|---|---|
TensorRT 8.6.1.6 | 12.0 | /fs00/software/tensorrt/8.6.1.6-cuda12.0 | tensorrt/8.6.1.6-cuda12.0 | |
TensorRT 8.6.1.6 | 11.8 | /fs00/software/tensorrt/8.6.1.6-cuda11.8 | tensorrt/8.6.1.6-cuda11.8 | |
TensorRT 8.5.2.2 | 11.8 | 8.6 | /fs00/software/tensorrt/8.5.2.2-cuda11.8-cudnn8.6 | tensorrt/8.5.2.2-cuda11.8-cudnn8.6 |
TensorRT 8.5.2.2 | 10.2 | 8.6 | /fs00/software/tensorrt/8.5.2.2-cuda10.2-cudnn8.6 | tensorrt/8.5.2.2-cuda10.2-cudnn8.6 |
TensorRT 8.2.0.6 | 11.4 | 8.2 | /fs00/software/tensorrt/8.2.0.6-cuda11.4-cudnn8.2 | tensorrt/8.2.0.6-cuda11.4-cudnn8.2 |
TensorRT 8.2.0.6 | 10.2 | 8.2 | /fs00/software/tensorrt/8.2.0.6-cuda11.4-cudnn8.2 | tensorrt/8.2.0.6-cuda10.2-cudnn8.2 |
AMD
AMD Optimizing C/C++ Compiler
Name | Path | Module |
---|---|---|
AMD Optimizing C/C++ Compiler 2.3.0 (AOCC) | /fs00/software/aocc/2.3.0 | aocc/2.3.0 |
AMD Optimizing C/C++ Compiler 2.1.0 (AOCC) | /fs00/software/aocc/2.1.0 | aocc/2.1.0 |
AMD Optimizing C/C++ Compiler 2.0.0 (AOCC) | /fs00/software/aocc/2.0.0 | aocc/2.0.0 |
AMD Optimizing CPU Libraries
Name | Path | Module |
---|---|---|
AMD Optimizing CPU Libraries 2.2 (AOCL) | /fs00/software/aocl/2.2 | aocl/2.2 |
AMD Optimizing CPU Libraries 2.0 (AOCL) | /fs00/software/aocl/2.0 | aocl/2.0 |
Python
请使用者自行解决License问题,本中心概不负责!
Anaconda
Name | Path | Module |
---|---|---|
Anaconda 3 (Python3) Latest | /fs00/software/anaconda/3 | anaconda/3 |
Anaconda 2 (Python2) Latest | /fs00/software/anaconda/2 | anaconda/2 |
Anaconda 5.0.1 (Python 3.6) | /fs00/software/anaconda/3-5.0.1 | anaconda/3-5.0.1 |
Anaconda 5.0.1 (Python 2.7) | /fs00/software/anaconda/2-5.0.1 | anaconda/2-5.0.1 |
Anaconda 3.4.1 (Python 3.6) | /fs00/software/anaconda/3-3.4.1 | anaconda/3-3.4.1 |
Anaconda 3.4.1 (Python 2.7) | /fs00/software/anaconda/2-3.4.1 | anaconda/2-3.4.1 |
Golang
Golang
Name | Path | Module |
---|---|---|
Golang 1.21.6 | /fs00/software/golang/1.21.6 | golang/1.21.6 |
Golang 1.19.5 | /fs00/software/golang/1.19.5 | golang/1.19.5 |
Golang 1.18.10 | /fs00/software/golang/1.18.7 | golang/1.18.10 |
Golang 1.17.13 | /fs00/software/golang/1.17.13 | golang/1.17.13 |
Golang 1.16.15 | /fs00/software/golang/1.16.15 | golang/1.16.15 |
Golang 1.15.15 | /fs00/software/golang/1.15.15 | golang/1.15.15 |
Open MPI
Open MPI
Name | Compiler | Path | Module |
---|---|---|---|
Open MPI 4.1.2 | GNU Compiler Collection (GCC) 11.2.0 | /fs00/software/openmpi/4.1.2-gcc11.2.0 | openmpi/4.1.2-gcc11.2.0 |
Open MPI 3.1.2 | GNU Compiler Collection (GCC) 8.2.0 | /fs00/software/openmpi/3.1.2-gcc8.2.0 | openmpi/3.1.2-gcc8.2.0 |
Open MPI 1.10.0 | Intel C++ Compiler XE 15.0 Update 3 & Fortran Compiler XE 15.0 Update 3 | /fs00/software/openmpi/1.10.0-iccifort-15.0.3 | openmpi/1.10.0-iccifort-15.0.3 |
Open MPI 1.10.0 | GNU Compiler Collection (GCC) 5.2.0 | /fs00/software/openmpi/1.10.0-gcc-5.2.0 | openmpi/1.10.0-gcc-5.2.0 |
Open MPI 1.10.5 | GNU Compiler Collection (GCC) 5.4.0 | /fs00/software/openmpi/1.10.5-gcc5.4.0 | openmpi/1.10.5-gcc5.4.0 |
Tcl/TK
Tcl/Tk
Name | Compiler | Path | Module |
---|---|---|---|
Tcl/Tk 8.6.12 | GNU Compiler Collection (GCC) 11.2.0 | /fs00/software/tcl/8.6.12-gcc11.2.0 | tcl/8.6.12-gcc11.2.0 |
Tcl/Tk 8.6.6 | Intel Parallel Studio XE 2017 Update 2 | /fs00/software/tcl/8.6.6-ips2017u2 | tcl/8.6.6-ips2017u2 |
Tcl/Tk 8.6.4 | /fs00/software/tcl/8.6.4 | tcl/8.6.4 | |
Tcl/Tk 8.6.4 | Intel Parallel Studio XE 2016 Update 2 | /fs00/software/tcl/8.6.4-ips2016u2 | tcl/8.6.4-ips2016u2 |
Tcl/Tk 8.6.4 | Intel Parallel Studio XE 2016 Update 2 | /fs00/software/tcl/8.6.4-ips2016u2-avx2 | tcl/8.6.4-ips2016u2-avx2 |
计算软件
请使用者自行解决License问题,本中心概不负责!
FFTW 3.3.7
/fs00/software/fftw/3.3.7-iccifort-17.0.6-* 依赖iccifort/17.0.6
FFTW 3.3.8
/fs00/software/fftw/3.3.8-ips2019u5 依赖ips/2019u5
LAMMPS 11Aug17
/fs00/software/lammps/11Aug17
OpenFOAM® v1806
/fs00/software/openfoam/v1806-ips2017u6
source /fs00/software/openfoam/v1806-ips2017u6/OpenFOAM-v1806/etc/bashrc
P4vasp 0.3.29
/fs00/software/p4vasp/0.3.29
Modulefile: p4vasp/0.3.29
Phonopy 1.11.2
/fs00/software/phonopy/1.11.2
Quantum ESPRESSO 5.2.0 & 6.1
/fs00/software/qe/5.2.0-ips2015u3/ 依赖ips/2015u3
/fs00/software/qe/6.1-ips2017u2/ 依赖ips/2017u2
ShengBTE
/fs00/software/shengbte 依赖 iccifort/15.0.3 openmpi/1.10.0-iccifort-15.0.3
Siesta 3.2-pl-5
/fs00/software/siesta/3.2-pl-5 依赖ips/2017u6
thirdorder 1.0.2 04d3f46feb78
/fs00/software/thirdorder/1.0.2
Modulefile: thirdorder/1.0.2 依赖 anaconda/2-4.3.1 spglib/1.9.9
TBPLaS
/fs00/software/tbplas
MKL+MPI Version
Modulefile:
- oneapi/2024.0/compiler/2024.0.2
- oneapi/2024.0/ifort/2024.0.2
- oneapi/2024.0/mkl/2024.0
- oneapi/2024.0/mpi/2021.11
VASP6 GPU 编译
VASP6 GPU(N卡) 编译实例
王勇 (孙建课题组)
人工微结构科学与技术协同创新中心高性能计算中心
根据vasp官方给出的信息,以后vasp gpu版本会着重开发openacc标准的版本,之前老cuda版本会逐渐被废弃,因此我们以vasp6.2 的openacc版本结合官方指导进行编译。 官方指导链接
https://www.vasp.at/wiki/index.php/OpenACC_GPU_port_of_VASP
编译器:
Openacc gpu Vasp6官方给出编译器意见为使用NVIDIA HPC-SDK或者 PGI's Compilers & Tools (version >=19.10)。在此vasp官方建议使用NVIDIA HPC-SDK且版本号最好为20.9,因为之后的版本可能会有一些对于vasp的bug。
关于NVIDIA HPC-SDK 20.9的安装,见
https://developer.nvidia.com/nvidia-hpc-sdk-209-downloads
相关主页,安装流程十分简单,使用wget下载,一键式安装,对于不连接外网的节点,可以手动下载tarball压缩包,上传后本地解压,在此不再赘述,安装前请使用nvidia-smi命令查看本地硬件驱动和兼容的cuda版本(version >=10.0),确保匹配,必要时候需升级硬件驱动。
安装HPC-SDK 20.9的过程中会询问安装路径,我们以路径为/usr/software/nv-hpcsdk
为例,在安装过程中指定此路径为例以后,需要设定环境变量:
export NVARCH=`uname -s`_`uname -m`;
export NVCOMPILERS=/usr/software/nv-hpcsdk #修改此处为安装路径
export PATH=$NVCOMPILERS/$NVARCH/20.9/compilers/bin:$PATH
export MANPATH=$MANPATH:$NVCOMPILERS/$NVARCH/20.9/compilers/man
export LD_LIBRARY_PATH=$NVCOMPILERS/$NVARCH/20.9/compilers/lib/:$LD_LIBRARY_PATH
export PATH=$NVCOMPILERS/$NVARCH/20.9/comm_libs/mpi/bin/:$PATH
上述可以每次使用gpu vasp6时手动添加在任务脚本,也可直接写在bashrc,但是不建议直接写在bashrc,可能会和intel版本的 mpirun冲突,造成其他之前软件的运行问题。
依赖库:
安装完NVIDIA HPC-SDK 20.9以后,还需要将软件运行需要的依赖库整理好,主要有CUDA Toolkit, QD, NCCL, 以及FFTW, 前三项直接包含在HPC-SDK,不需要单独安装。
对于FFTW,最好不要用nvhpc-sdk的编译器进行安装,如果设置了上面安装完hpc-sdk的环境变量,请先用GNU或者intel的编译器环境变量进行覆盖,不然可能会导致计算效率问题,可以自己编译,也可以直接使用集群内已经安装好的版本,路径为/fs00/software/fftw/3.3.8-ips2019u5
编译:
准备好编译器和依赖库以后,就可以进行编译了,进入vasp6.2根目录,
cp arch/makefile.include.linux_nv_acc makefile.include`
可以使用
which nvfortran | awk -F /compilers/bin/nvfortran '{ print $$1 }'`
查看nvfortran是否为nv-hpc-sdk的路径,如有问题,可以重新添加一遍环境变量。
(注:最近vasp官方又在官网添加了新的openacc+openmp混编版本的makefile.include.linux_nv_acc+omp+mkl来解决nccl库限制openacc版本只能单进程运行的问题,通过openmp来提升单进程多线程的运算效率,但目前没有太多相关测试的数据来支撑openmp混编会提升很多并行速度,所以在此我仍以旧版本的makefile.include.linux_nv_acc为例,同时官方也在积极改进这个问题,后续应该也可以多进程运行)
makefile.include的内容需要修改几处,包括确认编译器的位置,明确依赖库的路径等。修改后的makefile.include如下(需要注意和修改的位置后面有注释):
#Precompiler options
CPP_OPTIONS= -DHOST=\"LinuxPGI\" \
-DMPI -DMPI_BLOCK=8000 -DMPI_INPLACE -Duse_collective \
-DscaLAPACK \
-DCACHE_SIZE=4000 \
-Davoidalloc \
-Dvasp6 \
-Duse_bse_te \
-Dtbdyn \
-Dqd_emulate \
-Dfock_dblbuf \
-D_OPENACC \
-DUSENCCL -DUSENCCLP2P
CPP = nvfortran -Mpreprocess -Mfree -Mextend -E $(CPP_OPTIONS) $*$(FUFFIX) > $*$(SUFFIX)
FC = mpif90 -acc -gpu=cc60,cc70,cc80,cuda11.0
FCL = mpif90 -acc -gpu=cc60,cc70,cc80,cuda11.0 -c++libs
FREE = -Mfree
FFLAGS = -Mbackslash -Mlarge_arrays
OFLAG = -fast
DEBUG = -Mfree -O0 -traceback
#Specify your NV HPC-SDK installation, try to set NVROOT automatically
NVROOT =$(shell which nvfortran | awk -F /compilers/bin/nvfortran '{ print $$1 }')
#or set NVROOT manually
#NVHPC ?= /opt/nvidia/hpc_sdk
#NVVERSION = 20.9
#NVROOT = $(NVHPC)/Linux_x86_64/$(NVVERSION)
#Use NV HPC-SDK provided BLAS and LAPACK libraries
BLAS = -lblas
LAPACK = -llapack
BLACS =
SCALAPACK = -Mscalapack
CUDA = -cudalib=cublas,cusolver,cufft,nccl -cuda
LLIBS = $(SCALAPACK) $(LAPACK) $(BLAS) $(CUDA)
#Software emulation of quadruple precsion
QD = $(NVROOT)/compilers/extras/qd #注意并修改这里
LLIBS += -L$(QD)/lib -lqdmod -lqd
INCS += -I$(QD)/include/qd
#Use the FFTs from fftw
FFTW = /fs00/software/fftw/3.3.8-ips2019u5 #修改fftw路径至本地安装路径
LLIBS += -L$(FFTW)/lib -lfftw3
INCS += -I$(FFTW)/include
OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
#Redefine the standard list of O1 and O2 objects
SOURCE_O1 := pade_fit.o
SOURCE_O2 := pead.o
#For what used to be vasp.5.lib
CPP_LIB = $(CPP)
FC_LIB = nvfortran
CC_LIB = nvc
CFLAGS_LIB = -O
FFLAGS_LIB = -O1 -Mfixed
FREE_LIB = $(FREE)
OBJECTS_LIB= linpack_double.o getshmem.o
#For the parser library
CXX_PARS = nvc++ --no_warnings
#Normally no need to change this
SRCDIR = ../../src
BINDIR = ../../bin
此外编译前和每次提交任务前请清除其他环境并重新设置一遍环境变量:
module load ips/2019u5 #这是为了我们使用集群安装好的fftw找到依赖的路径
export NVARCH=`uname -s`_`uname -m`;
export NVCOMPILERS=/usr/software/nv-hpcsdk
export PATH=$NVCOMPILERS/$NVARCH/20.9/compilers/bin:$PATH
export MANPATH=$MANPATH:$NVCOMPILERS/$NVARCH/20.9/compilers/man
export LD_LIBRARY_PATH=$NVCOMPILERS/$NVARCH/20.9/compilers/lib/:$LD_LIBRARY_PATH
export PATH=$NVCOMPILERS/$NVARCH/20.9/comm_libs/mpi/bin/:$PATH
/usr/software/nv-hpcsdk
为nv-hpc-sdk的安装路径
确认好以上所有设置后,就可以使用
make std gam ncl
进行编译了,注意,由于openacc版本的原因,直接取消了编译make gpu的方式,编译得到的vasp_std之类的版本直接可以使用GPU进行计算。
其他注意事项:
1.由于nccl库的限制,openacc的gpu版本只能单进程运行.
2.INCAR中NCORE在openacc版本中只能设为1.
3.INCAR中NSIM和KPAR参数需要对不同体系进行测试来达到效率最大化,一般来说,KPAR和所使用的GPU也就是进程数一致,NSIM需要设置的比在cpu上更大,具体请自行测试.
更多相关问题可以见GPU官方指导
也可以去VASP论坛提问
Quantum Espresso
使用Apptainer
例:使用qe7.1版本,输入文件为当前目录下的FeO_test.in
,申请1个GPU提交到723090ib
队列,使用pw.x
#BSUB -J FeO_test
#BSUB -q 723090ib
#BSUB -gpu num=1
export OMP_NUM_THREADS="$LSB_DJOB_NUMPROC"
QE="apptainer run --nv /fs00/software/singularity-images/ngc_quantum_espresso_qe-7.1.sif"
${QE} pw.x < FeO_test.in > FeO_test.out
NAMD
NAMD 2.12 (2016-12-22)
- /fs00/software/namd/2.12
例:输入文件为当前目录下的in.conf,申请48个核提交到e5v3ib队列
#BSUB -n 48
#BSUB -q e5v3ib
input=in.conf
#bindir=/fs00/software/namd/2.12/verbs/
bindir=/fs00/software/namd/2.12/ibverbs/
nodefile=nodelist
echo "group main" > $nodefile
for i in `echo $LSB_HOSTS`
do
echo "host $i" >> $nodefile
done
${bindir}charmrun ++remote-shell ssh ++nodelist $nodefile +p$LSB_DJOB_NUMPROC ${bindir}namd2 $input
OOMMF
The Object Oriented MicroMagnetic Framework (OOMMF) 1.2 alpha 6
- /fs00/software/oommf/12a6-tcl8.6.4-ips2016u2 依赖tcl/8.6.4-ips2016u2和ips/2016u2
- /fs00/software/oommf/12a6-tcl8.6.4-ips2016u2-avx2 依赖tcl/8.6.4-ips2016u2-avx2和ips/2016u2
例:输入文件为当前目录下的sample.mif,申请72个核提交到6140ib队列
#BSUB -q 6140ib
#BSUB -n 72
module load ips/2016u2
module load tcl/8.6.4-ips2016u2-avx2
oommfin=sample.mif
oommfrun=/fs00/software/oommf/12a6-tcl8.6.4-ips2016u2-avx2/oommf.tcl
OOMMF_HOSTPORT=`tclsh $oommfrun launchhost 0`
export OOMMF_HOSTPORT
tclsh $oommfrun mmArchive
tclsh $oommfrun boxsi -numanodes auto -threads $LSB_DJOB_NUMPROC $oommfin
tclsh $oommfrun killoommf all
Mumax3
mumax 3.10
- /fs00/software/mumax/3.10-cuda11.0/
例:输入文件为当前目录下的sample.mx3,申请1个GPU提交到723090ib队列
#BSUB -q 723090ib
#BSUB -gpu num=1
mx3in=sample.mx3
module load cuda/11.2.0
/fs00/software/mumax/3.10-cuda11.0/mumax3 $mx3in
支撑软件
请使用者自行解决License问题,本中心概不负责!
AWS CLI v2
Name | Path | Module |
---|---|---|
AWS CLI current | /fs00/software/aws-cli/v2/current | aws-cli/current |
AWS CLI 2.9.6 | /fs00/software/aws-cli/v2/2.9.6 | aws-cli/2.9.6 |
bbcp
Name | Path | Module |
---|---|---|
bbcp 14.04.14.00.1 | /fs00/software/bbcp/14.04.14.00.1 | bbcp/14.04.14.00.1 |
Boost
Name | Path | Module |
---|---|---|
Boost 1.72.0 | /fs00/software/boost/1.72.0 | boost/1.72.0 |
Boost 1.58.0 | /fs00/software/boost/1.58.0 | boost/1.58.0 |
CMake
Name | Path | Module |
---|---|---|
CMake 3.23.2 | /fs00/software/cmake/3.23.2/ | cmake/3.23.2 |
CMake 3.16.3 | /fs00/software/cmake/3.16.3/ | cmake/3.16.3 |
CMake 3.11.4 | /fs00/software/cmake/3.11.4/ | cmake/3.11.4 |
Git
Name | Path | Module |
---|---|---|
Git 2.38.1 | /fs00/software/git/2.38.1 | git/2.38.1 |
Grace
Name | Path | Module |
---|---|---|
Grace 5.1.25 | /fs00/software/grace/5.1.25 | grace/5.1.25 |
HDF5
Name | Path | Module |
---|---|---|
HDF5 1.10.5 | /fs00/software/hdf5/1.10.5 | hdf5/1.10.5 |
libpng
Name | Path | Module |
---|---|---|
libpng 1.5.26 | /fs00/software/libpng/1.5.26 | libpng/1.5.26 |
jq
Name | Path | Module |
---|---|---|
jq 1.7 | /fs00/software/jq/1.7 | jq/1.7 |
Libxc
Name | Compiler | Path | Module |
---|---|---|---|
Libxc 5.2.2 | GNU Compiler Collection (GCC) 11.2.0 | /fs00/software/libxc/5.2.2 | libxc/5.2.2 |
libzip
Name | Path | Module |
---|---|---|
libzip 1.6.1 | /fs00/software/libzip/1.6.1 | libzip/1.6.1 |
NetCDF-C
Name | Path | Module |
---|---|---|
NetCDF-C 4.7.0 | /fs00/software/netcdf/c-4.7.0 | netcdf/c-4.7.0 |
PCRE
Name | Path | Module |
---|---|---|
PCRE 8.39 | /fs00/software/pcre/8.39 | pcre/8.39 |
Qt
Name | Path | Module |
---|---|---|
Qt 5.11.1 | /fs00/software/qt/5.11.1 | qt/5.11.1 |
rclone
Name | Path | Module |
---|---|---|
rclone latest | /fs00/software/rclone/latest | rclone/latest |
rclone 1.66.0 | /fs00/software/rclone/1.66.0 | rclone/1.66.0 |
Spglib (OpenMP)
Name | Compiler | Path | Module |
---|---|---|---|
Spglib 1.9.9 | /fs00/software/spglib/1.9.9 | spglib/1.9.9 | |
Spglib 1.9.0 | GNU Compiler Collection (GCC) 5.2.0 | /fs00/software/spglib/1.9.0-gcc5.2.0 | spglib/1.9.0-gcc5.2.0 |
tmux
Name | Path | Module |
---|---|---|
tmux 3.3a | /fs00/software/tmux/3.3a | tmux/3.3a |
zlib
Name | Path | Module |
---|---|---|
zlib 1.2.11 | /fs00/software/zlib/1.2.11 | zlib/1.2.11 |
Singularity Image
/fs00/software/singularity-images/
有丰富的官方容器镜像包
gnuplot
gnuplot
Name | Path | Module |
---|---|---|
gnuplot 5.2.7 | /fs00/software/gnuplot/5.2.7 | gnuplot/5.2.7 |
gnuplot 5.2.2 | /fs00/software/gnuplot/5.2.2 | gnuplot/5.2.2 |
gnuplot 5.0.6 | /fs00/software/gnuplot/5.0.6 | gnuplot/5.0.6 |
gnuplot 5.0.1 | /fs00/software/gnuplot/5.0.1 | gnuplot/5.0.1 |
OVITO
OVITO
Name | Path | Module |
---|---|---|
OVITO 3.7.12 | /fs00/software/ovito/3.7.12 | ovito/3.7.12 |
OVITO 2.9.0 | /fs00/software/ovito/2.9.0 | ovito/2.9.0 |
Vim
Vim
Name | Path | Module |
---|---|---|
Vim 9.0.1677 | /fs00/software/vim/9.0.1677 | vim/9.0.1677 |
Vim 8.2.0488 | /fs00/software/vim/8.2.0488 | vim/8.2.0488 |
Vim 8.1 | /fs00/software/vim/8.1 | vim/8.1 |
Zsh
Name | Path | Module |
---|---|---|
Zsh latest | /fs00/software/zsh/latest | zsh/latest |
Zsh 5.8 | /fs00/software/zsh/5.8 | zsh/5.8 |
或从镜像站下载编译安装
Environment Modules
添加 Environment Modules 至 Zsh
echo "source /fs00/software/modules/latest/init/profile.sh" >> ~/.zshrc
命令行提示符
- 因登录时需判断命令行提示符是否为
$
,因此建议保持 Bash 为默认 Shell,登录后通过下列命令切换至 Zsh
module load zsh/latest && exec zsh
- 如设置 Zsh 为默认 Shell 或登录会自动切换至 Zsh,则必须更改 Zsh 的命令行提示符(环境变量PS1)以
$
结尾($+空格),否则登录会失败!
Oh My Zsh
安装
在本地克隆后获取安装脚本再进行安装
git clone https://mirror.nju.edu.cn/git/ohmyzsh.git
cd ohmyzsh/tools
REMOTE=https://mirror.nju.edu.cn/git/ohmyzsh.git sh install.sh
切换已有 Oh My Zsh 至镜像源
git -C $ZSH remote set-url origin https://mirror.nju.edu.cn/git/ohmyzsh.git
git -C $ZSH pull
升级
omz update
主题
Powerlevel10k
安装
git clone --depth=1 https://mirror.nju.edu.cn/git/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
编辑 ~/.zshrc
的主题 ZSH_THEME="powerlevel10k/powerlevel10k"
升级
cd ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k && git pull
256色终端
开启 xterm 终端的256色以便正确显示提示颜色
echo "export TERM=xterm-256color" >> ~/.zshrc
永久在左侧显示主机名
在集群中经常需要登录到各个节点,因此最好在左侧永久显示主机名防止误操作
编辑 ~/.p10k.zsh
- 将
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS
中的context
剪切到POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
的第一项 - 注释
typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_{CONTENT,VISUAL_IDENTIFIER}_EXPANSION=
这一行 - 更改
typeset -g POWERLEVEL9K_CONTEXT_PREFIX=
为''
插件
zsh-autosuggestions
安装
git clone https://mirror.nju.edu.cn/git/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
编辑 ~/.zshrc
在 plugins=
中添加 zsh-syntax-highlighting
plugins=( ... zsh-autosuggestions)
升级
cd ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions && git pull
zsh-syntax-highlighting
安装
git clone https://mirror.nju.edu.cn/git/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
编辑 ~/.zshrc
在 plugins=
最后添加 zsh-syntax-highlighting
plugins=( [plugins...] zsh-syntax-highlighting)
升级
cd ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting && git pull
AlphaFold 2
/fs00/software/alphafold/2.3.2/AlphaFold-v2.3.2.sif
#BSUB -J alphafold
#BSUB -q gpu
#BSUB -n 16
#BSUB -gpu num=1
export OMP_NUM_THREADS="$LSB_DJOB_NUMPROC"
export MKL_NUM_THREADS="$LSB_DJOB_NUMPROC"
ALPHAFOLD_DATADIR=/bbfs/data/alphafold/2
ALPHAFOLD_IMAGE=AlphaFold-v2.3.2.sif
ALPHAFOLD_APP=/app/alphafold
RUN_ALPHAFOLD="apptainer run --bind ${ALPHAFOLD_DATADIR}:${ALPHAFOLD_APP}/download \
--nv ${ALPHAFOLD_IMAGE}"
${RUN_ALPHAFOLD} python ${ALPHAFOLD_APP}/run_alphafold.py --use_gpu_relax \
--data_dir=${ALPHAFOLD_APP}/download \
--uniref90_database_path=${ALPHAFOLD_APP}/download/uniref90/uniref90.fasta \
--mgnify_database_path=${ALPHAFOLD_APP}/download/mgnify/mgy_clusters_2022_05.fa \
--bfd_database_path=${ALPHAFOLD_APP}/download/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--pdb70_database_path=${ALPHAFOLD_APP}/download/pdb70/pdb70 \
--uniref30_database_path=${ALPHAFOLD_APP}/download/uniref30/UniRef30_2021_03 \
--template_mmcif_dir=${ALPHAFOLD_APP}/download/pdb_mmcif/mmcif_files \
--obsolete_pdbs_path=${ALPHAFOLD_APP}/download/pdb_mmcif/obsolete.dat \
--model_preset=monomer \
--max_template_date=2022-10-1 \
--db_preset=full_dbs \
--output_dir=output \
--fasta_paths=input/input.fasta
AlphaFold 3
/fs00/software/alphafold/3.0.0/AlphaFold-v3.0.0.sif
0. 基本信息
alphafold3是Google DeepMind开发的、用于生物分子复合体结构预测的人工智能模型,该模型接受一个json形式的、用于描述生物分子体系的文件,输出预测结构与置信度打分信息。结构预测过程主要分为两步:
- data pipeline: 在一定参数控制下,基于输入的序列信息进行生物信息学搜索,得到结构预测所需的共进化信息 (multi-sequence alginment, msa) 与结构模板 (templates),并将这些信息与输入信息整合,将整合信息作为json文件输出
- inference: 读取整合入msa和templates的json文件,转化为模型输入特征进行推理,输出mmcif格式的预测结构与confidence score
此处部署的是基于官方github库打包的apptainer容器。容器内包含alphafold3程序本体和依赖,不包含程序运行所需的数据库与预训练权重——这些需要在运行时以命令行参数传入。集群上部署有生信搜索所需数据库,模型权重的使用受term of use控制,请自行向Google DeepMind申请。
1. 使用方法
为避免冗长的路径和指令重复出现,定义变量
path_to_af3db="/bbfs/data/alphafold/3"
path_to_af3container="/fs00/software/alphafold/3.0.0/AlphaFold-v3.0.0.sif "
io_dir=</path/to/your/input/and/output>
weights_dir=<path/to/directory/containing/your/af3-weights>
RUN_ALPHAFOLD="apptainer run --nv --bind ${path_to_af3db}:/databases,${io_dir}:/host_iopath,${weights_dir}:/af3_weights ${path_to_af3container} python run_alphafold.py"
其中${path_to_af3db}
是集群上alphafold3数据库地址,${io_dir}
是输入文件所在的、及希望结果输出的目录,${weights_dir}
是自己申请的alphafold3权重文件所在目录。run_alphafold.py
是官方github库提供的接口文件。本页面后续出现的指令均默认这些变量存在。
输出帮助信息 (包括参数说明)
${RUN_ALPHAFOLD} --help
将输入文件input.json
放在${io_dir}
目录下,如下指令可使用alphafold3预测此文件描述体系的结构
${RUN_ALPHAFOLD} --db_dir=/databases/ --model_dir=/af3_weights/ \
--json_path=/host_iopath/input.json --output_dir=/host_iopath/
程序将根据input.json
中的name字段值,在${io_dir}
下创建同名子目录,data pipeline结束时补全的json文件、预测结构文件和confidence score都会被保存在这个子目录中。运行时log信息通过stderr输出 (这是python logging模块的行为)。关于更详细的输入输出文件说明,请参考官方input documentation和output documentation。
2. 分步运行data pipeline与inference
如前所述,程序运行主要分为data pipeline和inference两步。其中,data pipeline只使用cpu计算且耗时很长,如果在gpu队列上运行会导致gpu资源长期空置,可能导致高额费用和gpu资源浪费。因此,推荐先在cpu队列上运行data pipeline,得到中间结果 (也就是补全的json) 退出,然后再到gpu队列上进行结构预测。
为满足上述需求,可以用bool型命令行参数--run_data_pipeline
和--run_inference
控制模型只运行其中一步,两参数默认值均为True.
分步运行指令示例:
- data pipeline (cpu job)
${RUN_ALPHAFOLD} --db_dir=/databases/ --model_dir=/af3_weights/ \ --json_path=/host_iopath/input.json --output_dir=/host_iopath/ \ --run_inference=False
- inference (gpu job)
${RUN_ALPHAFOLD} --db_dir=/databases/ --model_dir=/af3_weights/ \ --json_path=/host_iopath/input.json --output_dir=/host_iopath/ \ --run_data_pipeline=False
另外,出于研究或加速计算的目的,用户可能希望使用自行准备的msa或templates,因而需要跳过alphafold3搜索步骤,此时需要手动将msa和templates写进输入json文件,然后带--run_data_pipeline=False
参数运行模型,进行结构预测。关于如何将msa和templates写入json文件,请自行参考DeepMind-input documentation。注意,msa和templates会以文本形式写入json中,因此写入了msa和templates的json文件大小会达到数十到百Mb量级。
3. 关于其他命令行参数
除去以上参数外,容器还可接受很多其他参数,可以用${RUN_ALPHAFOLD} --help
查看,或是在run_alphafold.py
中查看。我认为有3点值得注意:
-
--input_dir
和--json_path
都可以指定输入文件,使用时只应指定其一。当指定input_dir时,模型会从input_dir中寻找一个json格式文件,当作输入文件 -
--jackhmmer_n_cpu
和--nhmmer_n_cpu
指定生信搜索中使用cpu cores数目的上限 - 机器学习程序通常允许设置random seed来保证运行的可重复性,alphafold3的random seed不能以命令行参数指定,而是在input.json中
4. 队列兼容性、测试中的运行耗时
data pipeline对设备要求不高,inference则可能对gpu设备有些要求。目前测试了两例:
- 2PV7,蛋白,双链homomer,单链长度298
- 1AKE,蛋白,双链homomer,单链长度214
在队列83a100ib和734090d上测试结果显示:以上体系在单张A100卡 (memory 40 G) 或单张4090d (memory 24 G) 上均可完成inference. 在队列722080tiib和72rtxib上无法成功运行. 其他GPU队列未做测试。注意,官方performance documentation文档指出官方仅测试过alphafold3在A100(80G), A100(40 G)和H100设备上推理的准确性,因此使用如4090等其他设备做推理时,请自行校验结果准确性。
测试中data pipeline和inference计算所需时间如下:
- 使用8 cpu cores对一条长约300的蛋白序列进行msa和templates搜索耗时为1.5-2 h;其中,搜出msa后,根据部分匹配片段信息挑选出templates耗时为10 s量级,相对于总时间可以忽略
- 对每个随机种子,alphafold3会预测5个结构并按置信度打分挑选最好的作为最终结果,此过程耗时100 s左右;inference步总耗时与设置随机种子数有关
更多performance信息可参考官方performance documentation。
5. 运行结果准确性评估
比较2PV7预测结构与实验结构,全原子RMSD=4.410 (单位: Angstrom,下同)。 为衡量单链水平结构误差,计算预测A:B链-实验A:B链间RMSD,4个RMSD值分别为3.012, 2.759, 2.971, 2.740. 此单链上,alphafold3预测准确度低于alphafold2. 为衡量2个subunits间相对位置误差,计算DockQ分数为0.499>0.23,预测结构docking成功。
1AKE双链结构预测有较大错误,预测结构与1AKE实验结构RMSD=18.176,与4AKE实验结构RMSD=26.791,该结果远不如alphafold2-multimer。subunits间DockQ=0.019<<0.23,说明结构相对位置也预测错误。尚不清楚是Alphafold3本身原因,还是部署或使用不当导致。使用4090d和A100推理的结果无明显差异。
dockQ (Mirabello & Wallner, 2024, Bioinformatics) 打分用于衡量模型对subunits 间位置关系预测准确度。此分数取值范围是0-1,通常<0.23认为错误,>0.8认为准确。
RoseTTAFold
/fs00/software/rosettafold/1.1.0
注意:apptainer
默认会bind用户的home
目录,如果用户本来就有RoseTTAFold
或者folding
的conda环境则可能会发生冲突。用户可通过添加--no-home
选项避免此问题。
#BSUB -J RoseTTAFold
#BSUB -q gpu
#BSUB -n 8
#BSUB -gpu num=1
###### Configurie Numpy threads ######
export OMP_NUM_THREADS="$LSB_DJOB_NUMPROC"
export MKL_NUM_THREADS="$LSB_DJOB_NUMPROC"
###### Definition ######
ROSETTAFOLD_DATADIR=/bbfs/data/rosettafold # path to RoseTTAFold data (host)
ROSETTAFOLD_IMAGE=RoseTTAFold-1.1.0.sif # path to RoseTTAFold image (host)
ROSETTAFOLD_APPDIR=/app/RoseTTAFold # path to RoseTTAFold working directory (container)
###### Database ######
UNIREF30_DB=$ROSETTAFOLD_DATADIR/UniRef30_2020_06
BFD_DB=$ROSETTAFOLD_DATADIR/bfd
PDB100_DB=$ROSETTAFOLD_DATADIR/pdb100_2021Mar03
###### Example ######
RUN_ROSETTAFOLD="apptainer run --bind $UNIREF30_DB:$ROSETTAFOLD_APPDIR/UniRef30_2020_06 \
--bind $BFD_DB:$ROSETTAFOLD_APPDIR/bfd \
--bind $PDB100_DB:$ROSETTAFOLD_APPDIR/pdb100_2021Mar03 \
--nv $ROSETTAFOLD_IMAGE"
# For monomer structure prediction (e2e)
${RUN_ROSETTAFOLD} $ROSETTAFOLD_APPDIR/run_e2e_ver.sh $ROSETTAFOLD_APPDIR/example/input.fa output/
# For monomer structure prediction (pyrosetta)
${RUN_ROSETTAFOLD} $ROSETTAFOLD_APPDIR/run_pyrosetta_ver.sh $ROSETTAFOLD_APPDIR/example/input.fa output/
# For complex modeling
${RUN_ROSETTAFOLD} python $ROSETTAFOLD_APPDIR/network/predict_complex.py \
-i $ROSETTAFOLD_APPDIR/example/complex_modeling/paired.a3m \
-o output/ -Ls 218 310
# For PPI screening using faster 2-track version (example input and output are at example/complex_2track)
${RUN_ROSETTAFOLD} python $ROSETTAFOLD_APPDIR/network_2track/predict_msa.py \
-msa $ROSETTAFOLD_APPDIR/example/complex_2track/input.a3m \
-npz output/complex.npz -L1 218
ParallelFold 2
/fs00/software/parallelfold/2.0-2.3.1/ParallelFold-v2.0-with-AlphaFold-v2.3.1.sif
#BSUB -J parafold
#BSUB -q gpu
#BSUB -n 16
#BSUB -gpu num=1
export OMP_NUM_THREADS="$LSB_DJOB_NUMPROC"
export MKL_NUM_THREADS="$LSB_DJOB_NUMPROC"
ALPHAFOLD_DATADIR=/bbfs/data/alphafold/2
PARAFOLD_IMAGE=ParallelFold-v2.0-with-AlphaFold-v2.3.1.sif
PARAFOLD_APP=/app/ParallelFold
RUN_PARAFOLD="apptainer run --bind ${ALPHAFOLD_DATADIR}:${PARAFOLD_APP}/download \
--nv ${PARAFOLD_IMAGE}"
${RUN_PARAFOLD} python ${PARAFOLD_APP}/run_alphafold.py --use_gpu_relax \
--parameter_path=${PARAFOLD_APP}/download/params \
--uniref90_database_path=${PARAFOLD_APP}/download/uniref90/uniref90.fasta \
--mgnify_database_path=${PARAFOLD_APP}/download/mgnify/mgy_clusters_2022_05.fa \
--bfd_database_path=${PARAFOLD_APP}/download/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--pdb70_database_path=${PARAFOLD_APP}/download/pdb70/pdb70 \
--uniref30_database_path=${PARAFOLD_APP}/download/uniref30/UniRef30_2021_03 \
--template_mmcif_dir=${PARAFOLD_APP}/download/pdb_mmcif/mmcif_files \
--obsolete_pdbs_path=${PARAFOLD_APP}/download/pdb_mmcif/obsolete.dat \
--model_preset=monomer \
--max_template_date=2022-10-1 \
--db_preset=full_dbs \
--output_dir=output \
--fasta_paths=${PARAFOLD_APP}/input/input.fasta