使用GROMACS进行分子动力学模拟

本文以GROMACS软件为例介绍如何在E-HPC上进行分子动力学模拟。

背景信息

GROMACS(GROningen MAchine for Chemical Simulations)是一款通用软件,用于对具有数百万颗粒子的系统进行基于牛顿运动方程的分子动力学模拟。

GROMACS主要用于生物化学分子,如蛋白质、脂质等具有多种复杂键合相互作用的核酸分析。GROMACS计算典型的模拟应用,如高效地计算非键合相互作用,许多研究人员用其研究非生物系统的聚合物。

GROMACS支持分子动力学的常见算法,可以采用GPU来加速核心计算过程。更多信息,请参见GROMACS官网

相关算例

准备工作

  1. 登录弹性高性能计算控制台

  2. 创建E-HPC集群。

    具体操作,请参见创建集群。请注意以下配置参数:

    • 计算节点:选择GPU机型,如ecs.gn5-c8g1.2xlarge。

    • VNC:打开VNC开关,打开后可以自动部署远程可视化窗口。

  3. 安装软件。

    1. 集群页面,找到目标集群,单击软件管理后的asdad图标。

    2. 可安装软件页签下,选中gromacs-gpu 2018.1、openmpi 3.0.0、cuda-toolkit 9.0、vmd 1.9.3软件复选框。

    3. 在页面右上角,单击安装

    4. 在弹出的安装软件对话框中,单击确定

    5. 已安装软件页签下,可查看安装的软件。

  4. 创建一个名为gmx.test的sudo用户。

    具体操作,请参见创建用户

操作步骤

  1. 下载并解压算例(本示例使用算例2的相关文件)。

    1. 集群页面,找到目标集群,单击远程连接

    2. 远程连接页面,输入gmx.test的用户名、密码和端口,单击ssh连接

    3. 执行如下命令,下载并解压算例。

      cd /home/gmx.test
      wget https://public-ehpc-package.oss-cn-hangzhou.aliyuncs.com/water_GMX50_bare.tar.gz
      tar xzvf water_GMX50_bare.tar.gz
      chown -R gmx.test water-cut1.0_GMX50_bare
      chgrp -R users water-cut1.0_GMX50_bare
  2. 集群页面,在对应集群信息的右上角,单击作业daad

  3. 编辑作业文件。

    1. 作业页面左上角,单击作业文件编辑

    2. 单击浏览集群文件,并在弹出的请输入集群用户名和密码对话框中,输入gmx.test的用户名和密码后,单击确定

    3. 在/home/gmx.test/water-cut1.0_GMX50_bare路径下右键单击新建文件,输入标题后单击确定。例如:gmx.pbs。

    4. 在gmx.pbs文件上,右键单击打开,将以下代码拷贝到gmx.pbs文件中并保存。sada568作业文件配置如下:

      说明

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

      #!/bin/sh
      #PBS -j oe
      #PBS -l select=1:ncpus=8:mpiprocs=4
      #PBS -q workq
      
      #module命令依赖的环境变量
      export MODULEPATH=/opt/ehpcmodulefiles/
      module load gromacs-gpu/2018.1
      module load openmpi/3.0.0
      module load cuda-toolkit/9.0
      export OMP_NUM_THREADS=1
      
      cd /home/gmx.test/water-cut1.0_GMX50_bare/0096
      
      #前处理过程,生成tpr格式输入文件
      /opt/gromacs-gpu/2018.1/bin/gmx_mpi grompp -f pme.mdp -c conf.gro -p topol.top -o topol_pme.tpr
      
      #-ntomp指定每个进程开启的OpenMP线程数,-nsteps指定模拟迭代步数
      mpirun -np 4 /opt/gromacs-gpu/2018.1/bin/gmx_mpi mdrun -ntomp 1 -eps nst100000 -pin on -s topol_pme.tpr

  4. 提交作业。

    1. 作业页面,单击提交作业

    2. 根据界面提示,配置作业参数。

      配置作业名和作业执行命令,其他参数保持默认。

      • 作业名:请输入作业名gmx.test。

      • 作业执行命令:请输入作业执行命令./gmx.pbs,表示执行gmx.pbs文件。

    3. 作业页面右上角,单击提交作业

    4. 在弹出的对话框中,输入gmx.test用户名和密码后,单击确定

查看作业计算性能和结果

  1. 在左侧导航栏,选择作业与性能管理 > 作业

  2. 单击目标作业列表右侧详情,可以查看作业详细信息。

    说明

    作业运行需要一定的时间,请您耐心等待。

  3. 查看本次作业计算性能。

    1. 在左侧导航栏,选择作业与性能管理 > E-HPC优化器

    2. 找到目标集群,单击节点

    3. 按照下图选择目标集群,然后在节点性能页签下,依次选择作业、节点、时间段和指标,查看指标性能。

      adada23
  4. 单击进程性能页签,选择时间段、作业和节点,查看当前CPU使用率Top5的进程信息。

    时间段支持选择5分钟、10分钟、15分钟、1小时、4小时、12小时和1天,您可根据需求选择对应的时间段,默认选择10分钟。进程性能

  5. 单击进程图,然后单击剖析进程中您想剖析的进程,在弹出的对话框中设置剖析时长和采样频率,启动对GROMACS作业的实时性能剖析,获取热点函数的剖析图。

    452

  6. 单击性能剖析页签,查看剖析结果。

    adada
  7. 使用VNC远程可视化查看作业结果。

    1. 在左侧导航栏,单击集群

    2. 集群页面,找到目标集群,单击更多 > VNC

    3. 使用VNC远程连接可视化服务。

      具体操作,请参见连接可视化服务

    4. 在Terminal窗口运行/opt/vmd/1.9.3/vmd,打开VMD软件。

    5. 在VMD Main对话框中,选择File > Read Molecule,选择/home/gmx.test/water-cut1.0_GMX50_bare/0096路径下的conf.gro文件后并导入。

    6. 在conf.gro文件上右键选择File > Read Molecule,选择/home/gmx.test/water-cut1.0_GMX50_bare/0096路径下的traj.trr文件后并导入。

    7. 在VMD Main对话框中,单击Graphics

    8. Graphical Representations对话框中,可以选择Coloring MethodDrawing Method等,修改模拟样式。adad

阿里云首页 弹性高性能计算E-HPC 相关技术圈