-
slurm简介
slurm是资源管理器和作业调度器,介绍请见:https://slurm.schedmd.com/overview.html
-
安装slurm
环境:ubuntu 20.04
slurm的安装请见:https://zhuanlan.zhihu.com/p/573822867?utm_id=0
-
安装singularity和lammps
请见上一篇文章:https://www.ctyun.cn/developer/article/427114399719493
-
通过slurm和singularity跑lammps作业
slurm跑MPI的几种方式:
方式1:Slurm 直接启动任务并通过 PMI-1、PMI-2 或 PMIx API 执行通信初始化。(大多数现代 MPI 实现都支持。)
srun --mpi=pmix_v4
方式2:Slurm 为作业创建资源分配,然后 mpirun 使用 Slurm 的基础设施 (srun) 启动任务。
方式3:Slurm 为作业创建资源分配,然后 mpirun 使用 Slurm 以外的某种机制(例如 SSH 或 RSH)启动任务。这些任务在 Slurm 的监视或控制之外启动,需要从批处理节点(例如 SSH)访问节点
使用singularity容器跑MPI
mpirun -n 4 singularity exec mpitest.sig /opt/mpitest
结合slurm跑lammps作业
编写lammps.slurm文件,内容如下:
#!/bin/bash
#SBATCH --job-name singularity-mpi
#SBATCH -N $NNODES # total number of nodes
#SBATCH --time=00:05:00 # Max execution time
mpirun -n $NP singularity exec library://hpc/default/lammps:latest /lammps/lmp_intel_cpu_intelmpi -in /data/in.lj
通过slurm命令提交作业
sbatch lammps.slurm