阿里雲E-HPC GROMACS分子動力學模擬實踐
GROMACS 簡介
GROMACS(GROningen MAchine for Chemical Simulations)是一款通用軟體包,用於對具有數百萬顆粒子的系統進行基於牛頓運動方程的分子動力學模擬。GROMACS主要用於生物化學分子,如蛋白質,脂質等具有多種複雜鍵合相互作用的核酸。由於GROMACS在計算典型的主流模擬應用如非鍵合相互作用非常高效,許多研究人員將其用於非生物系統如聚合物的研究。
GROMACS支援從現代分子動力學實現中預期的所有常見演算法,可以採用GPU卡來加速核心計算過程。其程式碼由世界各地的開發人員維護。詳情可參見官網www.gromacs.org 。
準備工作
若您尚未擁有E-HPC叢集,請先建立E-HPC叢集
安裝軟體包
執行以下示例需要在建立叢集時或者軟體管理介面上選擇安裝GROMACS相關軟體包。
- 使用GROMACS的GPU加速版本需要安裝如下軟體包
注:若需執行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加速版本
算例下載與解壓
- 進入E-HPC管理控制檯,點選叢集右側“更多”選項,選擇“執行命令”,進入叢集命令執行介面。
- 在叢集命令執行介面點選“批量執行”,選擇叢集登入節點執行下圖所示的算例下載、解壓、修改許可權操作。
- 返回E-HPC管理控制檯,點選左側欄的“作業”標籤,進入作業管理介面。
- 依次選擇"建立作業"->“新建檔案”->“使用檔案模板”->“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%以上。
- 點選“程式效能”皮膚,檢視當前CPU利用率前五的程式資訊。由於本案例中的GROMACS作業僅使用一個程式,每個程式開啟八個執行緒,因此圖中“gmx_mpi”程式始終佔據第一位,且CPU佔用率遠超其它四個程式之和。
- 點選上圖中“剖析程式5833”,設定剖析時長和取樣頻率,啟動對GROMACS作業的實時效能剖析,獲取熱點函式火焰圖如下。從圖中可以檢視GROMACS作業中各函式的耗時佔比和呼叫棧關係。
GROMACS計算結果視覺化
- 在軟體管理介面安裝MD視覺化工具VMD,使用遠端視覺化功能開啟遠端視覺化桌面。Terminal執行
/opt/vmd/1.9.3/vmd
,開啟VMD軟體。
- 載入分子結構檔案和軌跡檔案,檢視模擬效果。
更多E-HPC功能及實踐案例請參考
HPC Benchmark
記憶體效能評估:介紹如何基於STREAM工具進行記憶體頻寬效能評測
通訊效能評估:介紹如何基於IMB對不同訊息粒度下節點間MPI通訊效率進行評測
HPC Application
LAMMPS:基於LAMMPS的分子動力學典型算例3d Lennard-Jones melt,包含作業建立、提交、視覺化全流程
TensorFlow:基於TensorFlow的機器學習環境部署、計算流程。使用HPC排程器提交作業
OpenFOAM:基於OpenFOAM的計算流體力學模擬算例
E-HPC產品特色及應用
E-HPC場景化操作指導
相關文章
- 效能達1.5+倍!昇騰AI助力分子動力學模擬研究AI
- 車輛動力學模型在模擬測試中的應用實踐模型
- LAMMPS分子動力學核心技術實戰應用
- 阿里雲“大算力”支援嬴徹自動駕駛模擬提速 20 倍阿里自動駕駛
- [計算化學]分子動力學筆記筆記
- 上雲實踐操作(漫步雲端)之上雲動力
- 阿里雲 EventBridge 事件驅動架構實踐阿里事件架構
- Adams— 系統級多體動力學模擬平臺
- Apache RocketMQ 在阿里雲大規模商業化實踐之路ApacheMQ阿里
- 阿里雲RDS PG最佳實踐阿里
- 阿里雲HPC助力新制造 | 上汽模擬計算雲SSCC阿里
- 阿里雲OSS雲端儲存管理實踐阿里
- 5G+實時雲渲染,助力虛擬模擬實訓教學升級
- 效率提升一倍,成本下降 80%,阿里雲落地全球最大規模雲原生實踐阿里
- 阿里雲物聯網平臺裝置模擬器阿里
- 位元組跳動 Flink 大規模雲原生化實踐
- 動力傳動系統模擬測試解決方案
- CDC YAML 在阿里雲的最佳實踐YAML阿里
- 阿里雲 Serverless Kubernetes 的落地實踐分享阿里Server
- 雲上深度學習實踐分享——雲上MXNet實踐深度學習
- 阿里超大規模 Flink 叢集運維實踐阿里運維
- Python零基礎學習程式碼實踐——模擬彩票中獎Python
- 重塑技術引擎 阿里落地全球最大規模雲原生實踐支撐雙11阿里
- 阿里雲被整合,助力數字政府新實踐阿里
- 阿里雲在HBase冷熱分離的實踐阿里
- 最佳實踐:使用阿里雲CDN加速OSS訪問阿里
- 阿里雲NAS檔案遷移專案實踐阿里
- 阿里雲 VPC 內網效能測試最佳實踐阿里內網
- 訓練資料減少多達三個數量級,等變圖神經網路在長時間尺度上進行高保真分子動力學模擬神經網路
- 阿里雲李克:邊緣雲技術發展與實踐阿里
- 阿里智慧運維實踐|阿里巴巴DevOps實踐指南阿里運維dev
- 2022阿里雲碼上公益“第益課”大學生技術公益實踐計劃活動說明阿里
- 天翼雲高可用虛擬IP(HAVIP)實踐
- 雲原生新邊界——阿里雲邊緣計算雲原生落地實踐阿里
- 阿里雲Ansible 模組文件阿里
- 阿里雲視訊雲互動虛擬技術,打造虛擬直播最佳沉浸式體驗阿里
- 如約而至!ModelBase:經緯恆潤自研車輛動力學模擬軟體
- 阿里雲基於全新 RocketMQ 5.0 核心的落地實踐阿里MQ