阿里云超算集谛优化GPU异构并行性能:GROMACS
“集諦”是一款內(nèi)置于阿里云彈性高性能計算(Elastic High Performance Computing,E-HPC)的云上性能監(jiān)控與分析引擎,支持集群資源利用情況的實時監(jiān)控和用戶作業(yè)運行情況的在線分析。對于采用GPU加速的異構(gòu)計算應(yīng)用場景,“集諦”除了監(jiān)控節(jié)點host端資源外還能監(jiān)控GPU device端的資源利用情況,給出GPU利用率、顯存利用率和PCI-E數(shù)據(jù)傳輸帶寬等性能指標隨時間的變化,幫助用戶更好得了解應(yīng)用運行狀態(tài),指導(dǎo)應(yīng)用改進。
分子動力學(Molecular Dynamic,MD)模擬是一種基于經(jīng)典牛頓力學建立分子結(jié)構(gòu)模型,對分子及分子體系的結(jié)構(gòu)和性質(zhì)進行研究分析的計算機模擬方法,是人類打開微觀運動世界的鑰匙。作為高性能計算領(lǐng)域的重要研究方向之一,分子動力學模擬在新材料研制、化學工業(yè)模擬、生物醫(yī)藥等多個領(lǐng)域被廣泛應(yīng)用,相關(guān)研究成果多次入選美國三大工程獎之一的戈登貝爾獎。分子動力學模擬包含了大量分子間相互作用力的計算,計算過程密集且規(guī)整,因此非常適合使用CPU向量運算部件和GPU卡進行加速。目前主流的幾款分子動力學模擬軟件GROMACS、NAMD、LAMMPS均可以采用GPU卡來加速其核心計算過程。下圖給出的使用分子動力學模擬方法后得到的生物大分子構(gòu)型的演變。
對GPU資源的充分利用是分子動力學軟件獲取理想模擬效率的關(guān)鍵。本文以GROMACS為例,使用“集諦”對其運行時性能特征進行多方位展示,分析當前性能瓶頸,從而對軟件性能進行優(yōu)化。
“集諦”GPU性能監(jiān)控介紹
節(jié)點維度:“集諦”按照用戶選取的節(jié)點構(gòu)造出多個坐標平面,每個坐標平面對應(yīng)展示一個節(jié)點的GPU資源利用情況。其中,節(jié)點內(nèi)不同GPU卡的性能數(shù)據(jù)以時間為橫軸展示在同一個坐標平面內(nèi)。這種節(jié)點維度的呈現(xiàn)方式有利于用戶對比節(jié)點內(nèi)不同GPU卡間的負載情況。
指標維度:“集諦”根據(jù)用戶選取的GPU子設(shè)備和性能指標構(gòu)造出多個坐標平面,每個坐標平面對應(yīng)展示某一GPU子設(shè)備&某一性能指標上不同節(jié)點的性能表現(xiàn),方便用戶對比節(jié)點間的GPU負載情況。
“集諦”指導(dǎo)GROMACS性能優(yōu)化
本文在ecs.gn5實例(8 core,16 vCPU,120GB內(nèi)存,2 P100)上運行分子動力學軟件GROMACS的GPU版本,并使用“集諦”監(jiān)控軟件執(zhí)行過程中的系統(tǒng)資源利用情況。
節(jié)點維度:
指標維度:
從上圖可以看出:
由此可見,CPU端計算資源接近用滿,負載較重;而GPU端計算資源、顯存和PCI-E帶寬均未達到瓶頸,尚有進一步可用的空間。GROMACS軟件本身采用“CPU+GPU”的主從協(xié)同計算模式,CPU和GPU任一端的性能瓶頸都會拖慢軟件的整體性能。因此為了提升GROMACS的軟件執(zhí)行效率,我們選擇將CPU端的PME計算過程進一步offload到GPU端。通過這種方式,我們在減少CPU端計算任務(wù)的同時又充分利用了GPU端的計算資源,從而使CPU和GPU兩端的計算負載更加均衡。完成該步優(yōu)化后,我們再次使用“集諦”監(jiān)控GROMACS執(zhí)行過程中的系統(tǒng)資源利用情況。
節(jié)點維度:
指標維度:
從上圖可以看出,在將PME計算過程offload到GPU端之后:
由此可見,對于采用“CPU+GPU”主從加速模式的軟件,通過平衡CPU端和GPU端的計算負載,能夠大幅提升軟件的執(zhí)行效率。
總結(jié)
集諦能夠從計算、內(nèi)存、網(wǎng)絡(luò)、磁盤、加速卡等方面系統(tǒng)地監(jiān)控集群資源的利用情況并系統(tǒng)地展示給用戶,方便用戶進行多方位地對比分析,幫助用戶迅速定位性能瓶頸,從而為用戶應(yīng)用程序的改進提供指導(dǎo)。
云服務(wù)器99元拼團購!拉新還可贏現(xiàn)金紅包!300萬等你瓜分!
馬上一鍵開團贏紅包: http://click.aliyun.com/m/100...
本文作者:慕笛
閱讀原文
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的阿里云超算集谛优化GPU异构并行性能:GROMACS的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【超详细】Java实现学生信息管理系统
- 下一篇: [react] react多个setSt