21本镜像可自动识别intel和amd架构,正常使用gmx即可
在这个阶段,你完全不需要关心底层是 Intel 还是 AMD,直接敲 gmx,路由脚本会自动为你调度。
mkdir -p /workspace/test_run
cd /workspace/test_run
wget https://files.rcsb.org/download/1AKI.pdb
这里将 PDB 转换为 GROMACS 识别的拓扑文件,并定义水盒子:
# 生成拓扑 (输入 15 选择 OPLS-AA/L 力场)
gmx pdb2gmx -f 1AKI.pdb -o 1AKI_processed.gro -water spce <<EOF
15
EOF
# 定义模拟盒子 (边缘距离 1.0 nm 的立方体)
gmx editconf -f 1AKI_processed.gro -o 1AKI_newbox.gro -c -d 1.0 -bt cubic
向盒子中加水,并用钠/氯离子中和系统电荷:
# 填充水分子
gmx solvate -cp 1AKI_newbox.gro -cs spc216.gro -o 1AKI_solv.gro -p topol.top
# 生成离子的 mdp 配置文件
cat > ions.mdp <<EOF
integrator = steep
emtol = 1000.0
emstep = 0.01
nsteps = 50000
nstlist = 1
cutoff-scheme = Verlet
ns_type = grid
coulombtype = cutoff
rcoulomb = 1.0
rvdw = 1.0
pbc = xyz
EOF
# 预处理并替换水分子为离子 (输入 13 选择 SOL)
gmx grompp -f ions.mdp -c 1AKI_solv.gro -p topol.top -o ions.tpr -maxwarn 2
gmx genion -s ions.tpr -o 1AKI_solv_ions.gro -p topol.top -pname NA -nname CL -neutral <<EOF
13
EOF
消除不合理的原子重叠,稳定系统:
cat > minim.mdp <<EOF
integrator = steep
emtol = 1000.0
emstep = 0.01
nsteps = 50000
nstlist = 1
cutoff-scheme = Verlet
rlist = 1.0
coulombtype = PME
rcoulomb = 1.0
rvdw = 1.0
pbc = xyz
EOF
gmx grompp -f minim.mdp -c 1AKI_solv_ions.gro -p topol.top -o em.tpr
gmx mdrun -v -deffnm em
跳过 NVT/NPT,直接进行简短的动力学模拟,测试 4090 性能:
cat > md.mdp <<EOF
integrator = md
dt = 0.002
nsteps = 50000 ; 100 ps
nstxout = 5000
nstvout = 5000
nstfout = 5000
nstenergy = 5000
nstlog = 5000
cutoff-scheme = Verlet
nstlist = 20
rlist = 1.0
coulombtype = PME
rcoulomb = 1.0
rvdw = 1.0
tcoupl = V-rescale
tc-grps = Protein Non-Protein
tau_t = 0.1 0.1
ref_t = 300 300
pbc = xyz
dispcorr = EnerPres
EOF
# 预处理
gmx grompp -f md.mdp -c em.gro -p topol.top -o md.tpr -maxwarn 2
# 极致性能运行:将非键相互作用、PME、坐标更新、键合相互作用全部卸载到 GPU
gmx mdrun -deffnm md -nb gpu -pme gpu -update gpu -bonded gpu
MD 运行结束后,你怎么知道你的智能脚本确实起作用了?请查看生成的日志文件:
head -n 100 md.log
/usr/local/gromacs/bin/gmx_intel,并且在 FFT library 一栏会显示 Intel MKL。/usr/local/gromacs/bin/gmx_amd,FFT library 显示为 fftw。
认证作者