阿里云E-HPC GROMACS分子动力学模拟实践

GROMACS 简介

gromacs logo

GROMACS(GROningen MAchine for Chemical Simulations)是一款通用软件包,用于对具有数百万颗粒子的系统进行基于牛顿运动方程的分子动力学模拟。GROMACS主要用于生物化学分子,如蛋白质,脂质等具有多种复杂键合相互作用的核酸。由于GROMACS在计算典型的主流模拟应用如非键合相互作用非常高效,许多研究人员将其用于非生物系统如聚合物的研究。

GROMACS支持从现代分子动力学实现中预期的所有常见算法,可以采用GPU卡来加速核心计算过程。其代码由世界各地的开发人员维护。详情可参见官网www.gromacs.org 。

准备工作

若您尚未拥有E-HPC集群,请先创建E-HPC集群

安装软件包

运行以下示例需要在创建集群时或者软件管理界面上选择安装GROMACS相关软件包。

  • 使用GROMACS的GPU加速版本需要安装如下软件包

GROMACS-GPU
openmpi 3.0.0
cuda

:若需运行gromacs-gpu加速版本,在创建集群时必须使用GPU系列机型作为计算节点,否则集群无法按照以下指引运行。

创建用户

进入E-HPC管理控制台,点选左侧栏的“用户”标签,进行用户创建。本案例中,我们创建一个名为gmx.test的sudo用户。

输入算例介绍

算例1:水中的溶菌酶(Lysozyme in Water)

本算例为用户设置一个蛋白质(lysozyme)加上离子在水盒子里的模拟过程。

官方教程链接:http://www.mdtutorials.com/gmx/

非官方中文翻译链接:http://jerkwin.github.io/GMX/GMXtut-1/

下载地址:http://public-ehs.oss-cn-hangzhou.aliyuncs.com/packages/Lysozyme.tar.gz

算例2:水分子运动

本算例为模拟大量水分子在给定空间、温度内的运动过程。

下载地址:http://public-ehs.oss-cn-hangzhou.aliyuncs.com/packages/water_GMX50_bare.tar.gz

运行GROMACS的GPU加速版本

算例下载与解压

执行命令

  • 集群命令运行界面点击“批量执行”,选择集群登录节点执行下图所示的算例下载、解压、修改权限操作。

执行命令

作业管理界面

  • 依次选择"创建作业"->“新建文件”->“使用文件模板”->“pbs demo”,对pbs demo脚本进行编辑,得到运行GROMACS-GPU版本作业的pbs脚本如下所示。
#!/bin/sh
#PBS -j oe
#PBS -l select=1:ncpus=8

export MODULEPATH=/opt/ehpcmodulefiles/   #module命令依赖的环境变量
module load gromacs-gpu/2018.1
module load openmpi/3.0.0
module load cuda-toolkit/9.0

cd /home/gmx.test/water-cut1.0_GMX50_bare/1536
/opt/gromacs-gpu/2018.1/bin/gmx_mpi grompp -f pme.mdp -c conf.gro -p topol.top -o topol_pme.tpr   #前处理过程,生成tpr格式输入文件
mpirun -np 1 -host compute9 /opt/gromacs-gpu/2018.1/bin/gmx_mpi mdrun -ntomp 8 -nsteps 400000 -pin on -nb gpu -s topol_pme.tpr   #-ntomp指定每个进程开启的OpenMP线程数,-nsteps指定模拟迭代步数

注: 本例中,作业在名为gmx.test的用户下提交,在一个包含8个CPU核和1块P100 GPU卡的计算节点compute9上运行。在实际使用场景中用户可根据集群配置情况做出适当修改。

  • 设置下图左侧作业基本参数后,点击确认提交作业。作业个性化配置、作业导入、作业导出以及作业状态查看,请参见作业管理

作业基本参数

  • 点击作业列表右侧的 “详情” 按钮,查看作业详细信息。

作业状态

作业详情

GROMACS作业性能监测

  • 返回E-HPC管理控制台,点击左侧栏的“集谛”标签,进入集谛性能监测界面。在“节点性能”面板上查看各项硬件性能指标,实时监测节点硬件资源的利用情况以及随时间的变化趋势。如下图所示,GROMACS作业的GPU利用率维持在60%以上。

cm节点数据

  • 点击“进程性能”面板,查看当前CPU利用率前五的进程信息。由于本案例中的GROMACS作业仅使用一个进程,每个进程开启八个线程,因此图中“gmx_mpi”进程始终占据第一位,且CPU占用率远超其它四个进程之和。

cm进程信息

  • 点击上图中“剖析进程5833”,设置剖析时长和采样频率,启动对GROMACS作业的实时性能剖析,获取热点函数火焰图如下。从图中可以查看GROMACS作业中各函数的耗时占比和调用栈关系。

剖析结果

GROMACS计算结果可视化

  • 在软件管理界面安装MD可视化工具VMD,使用远程可视化功能打开远程可视化桌面。Terminal运行/opt/vmd/1.9.3/vmd,打开VMD软件。

vmd界面

  • 加载分子结构文件和轨迹文件,查看模拟效果。

模拟过程

更多E-HPC功能及实践案例请参考

HPC Benchmark

计算性能测试:介绍如何基于HPL进行系统浮点性能评测

内存性能评估:介绍如何基于STREAM工具进行内存带宽性能评测

通信性能评估:介绍如何基于IMB对不同消息粒度下节点间MPI通信效率进行评测

HPC Application

LAMMPS:基于LAMMPS的分子动力学典型算例3d Lennard-Jones melt,包含作业创建、提交、可视化全流程

TensorFlow:基于TensorFlow的机器学习环境部署、计算流程。使用HPC调度器提交作业

OpenFOAM:基于OpenFOAM的计算流体力学仿真算例

WRF:基于WRF的气象预报典型算例

E-HPC产品特色及应用

多队列管理与自动伸缩

断点续算

批量执行命令

基于OSS的作业提交

数据迁移

E-HPC场景化操作指导

批处理计算
流体力学

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值