本文以GROMACS軟體為例介紹如何在E-HPC上進行分子動力學類比。
背景資訊
GROMACS(GROningen MAchine for Chemical Simulations)是一款通用軟體,用於對具有數百萬顆粒子的系統進行基於牛頓運動方程的分子動力學類比。
GROMACS主要用於生物化學分子,如蛋白質、脂質等具有多種複雜鍵合相互作用的核酸分析。GROMACS計算典型的類比應用,如高效地計算非鍵合相互作用,許多研究人員用其研究非生物系統的彙總物。
GROMACS支援分子動力學的常見演算法,可以採用GPU來加速核心計算過程。更多資訊,請參見GROMACS官網。
相關算例
算例1:水中的溶菌酶
本算例為一個蛋白質加上離子在水盒子裡的類比過程。
算例下載地址:https://public-ehpc-package.oss-cn-hangzhou.aliyuncs.com/Lysozyme.tar.gz
算例2:水分子運動
本算例為類比大量水分子在給定空間、溫度內的運動過程。
算例下載地址:https://public-ehpc-package.oss-cn-hangzhou.aliyuncs.com/water_GMX50_bare.tar.gz
準備工作
建立E-HPC叢集。具體操作,請參見使用嚮導建立叢集。
配置叢集時,本文使用的軟硬體參數配置樣本如下:
參數
說明
硬體參數
部署方式為標準,包含2個管控節點,1個計算節點和1個登入節點,其中計算節點使用GPU執行個體規格(例如ecs.gn5-c8g1.2xlarge)。
軟體參數
鏡像選擇CentOS 7.2公用鏡像,調度器選擇pbs,並開啟VNC開關。
建立叢集使用者。具體操作,請參見建立使用者。
叢集使用者用於登入叢集,進行編譯軟體、提交作業等操作,本文建立的使用者樣本如下:
使用者名稱:gmx.test
使用者組:sudo許可權組
安裝軟體。具體操作,請參見安裝軟體。
需安裝的軟體如下:
gromacs-gpu,版本為2018.1。
openmpi,版本為3.0.0。
cuda-toolkit,版本為9.0。
vmd,版本為1.9.3。
步驟一:串連叢集
選擇以下一種方式串連叢集。本文使用的使用者名稱為gmx.test,串連叢集後會預設登入到/home/gmx.test。
通過用戶端
該方式僅支援使用PBS調度器的叢集。操作前,請確保您已下載安裝E-HPC用戶端,且已配置用戶端所需環境。具體操作,請參見配置用戶端所需環境。
開啟並登入E-HPC用戶端。
在用戶端左側導覽列,單擊會話管理。
在會話管理頁面的右上方,單擊terminal,開啟Terminal視窗。
通過控制台
登入彈性高效能運算控制台。
在頂部功能表列左上方處,選擇地區。
在左側導覽列,單擊叢集。
在叢集頁面,找到目的地組群,單擊遠端連線。
在遠端連線頁面,輸入集群使用者名稱、登入密碼和連接埠,單擊ssh串連。
步驟二:提交作業
執行以下命令下載並解壓算例。
本文使用水分子運動算例作為樣本。
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執行以下命令建立作業指令檔,指令檔命名為gmx.pbs。
vim gmx.pbs作業指令碼內容樣本如下:
說明本樣本使用名為gmx.test的使用者提交作業,在一個包含8個vCPU和1塊P100 GPU卡的計算節點上運行。實際使用情境中,您可根據叢集配置情況做出適當修改。
#!/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 -nsteps 100000 -pin on -s topol_pme.tpr執行以下命令提交作業。
qsub gmx.pbs預期返回如下,表示產生的作業ID為0.scheduler。
0.scheduler
步驟三:查看作業結果
查看作業運行情況。
qstat -x 0.scheduler預期返回如下,當返回資訊中
S為R時,表示作業正在運行中;當返回資訊中S為F時,表示作業已經運行結束。Job id Name User Time Use S Queue ---------------- ---------------- ---------------- -------- - ----- 0.scheduler gmx.pbs gmx.test 00:34:42 F workq說明作業運行需要一定的時間,請您耐心等待。作業運行結束後,您可以執行
cat gmx.pbs.o0查看作業輸出。使用VNC可視化查看作業結果。
開啟VNC。
說明請確保叢集所屬安全性群組已開啟VNC所需連接埠。控制台操作時系統會自動開啟12016連接埠,用戶端操作時,請您自行開啟連接埠,首個VNC視窗使用12017連接埠,如果有多個使用者使用VNC,則連接埠號碼按順序遞增。
通過用戶端
在用戶端的左側導覽列,單擊會話管理。
在會話管理頁面的右上方,單擊VNC,開啟VNC視窗。
通過控制台
在彈性高效能運算控制台的左側導覽列,單擊叢集。
在叢集頁面,找到目的地組群,單擊更多 > VNC。
使用VNC遠端連線可視化服務。具體操作,請參見串連可視化服務。
在VNC視窗中,選擇Application>System Tools>Terminal。
運行
/opt/vmd/1.9.3/vmd開啟VMD軟體。在VMD Main對話方塊中,選擇File > New Molecule...。
單擊Filename處對應的Browse...,選擇結果檔案conf.gro。
說明conf.gro檔案所在路徑為/home/gmx.test/water-cut1.0_GMX50_bare/0096/conf.gro。
單擊Load,可在VMD 1.9.3 OpenGL Display視窗查看可視化結果。

步驟四:查看作業計算效能
僅控制台支援查看作業計算效能,用戶端暫不支援該功能。
登入彈性高效能運算控制台。
在左側導覽列,選擇作業與效能管理 > E-HPC最佳化器。
找到目的地組群,單擊節點。
在節點效能頁簽下,查看節點效能。
選擇作業和計算節點。
(可選)設定時間段。
選擇作業後,時間段會自動調整為作業啟動並執行時間段,您也可以自行調整時間段。
單擊指標選擇,選擇要查看的指標。
查看節點效能圖。
結果樣本如下,滑鼠上移到圖形上方可以查看詳細資料。

單擊進程效能頁簽,查看進程效能。
選擇作業和計算節點。
(可選)設定時間段。
選擇作業後,時間段會自動調整為作業啟動並執行時間段,您也可以自行調整時間段。
查看進程效能圖。
結果樣本如下,滑鼠上移到圖形上方可以查看詳細資料。

啟動效能剖析任務。
在進程效能圖上單擊您想要的時間點,然後在圖示上方單擊您想要剖析的進程。

在彈出的對話方塊中設定效能剖析參數,然後單擊確定。
參數包括時間長度和採樣頻率,單擊確定後即可啟動對作業的即時效能剖析。
單擊效能剖析頁簽,查看剖析結果。
選擇剖析任務,單擊查看。
查看剖析結果。
結果樣本如下,滑鼠上移到圖形上方可以查看詳細資料。
