聶寧明,胡長軍,張云泉,賀新福,張博堯,李士剛
1.中國科學院 計算機網絡信息中心,北京 100190
2.北京科技大學 計算機與通信工程學院,北京 100083
3.中國科學院 計算技術研究所,北京 100190
4.中國原子能科學研究院,北京 102413
材料微觀結構演化大規模分子動力學軟件比較*
聶寧明1+,胡長軍2,張云泉3,賀新福4,張博堯1,李士剛3
1.中國科學院 計算機網絡信息中心,北京 100190
2.北京科技大學 計算機與通信工程學院,北京 100083
3.中國科學院 計算技術研究所,北京 100190
4.中國原子能科學研究院,北京 102413
分子動力學模擬是研究材料輻照效應下微觀結構演化的重要工具。對4款主流材料計算大規模分子動力學開源軟件LAMMPS、Ls1-MarDyn、IMD和CoMD進行了詳細的介紹,從數據結構、計算方法、并行分解方式、原子存儲等多個方面進行了橫向分析比較。通過設計算例測試了各軟件的計算效率、并行性能和內存使用情況。針對壓力容器關鍵材料輻照缺陷演化計算特點,提出了設計節省存儲空間的面向單晶的新型數據結構的設想,為后續實現大時空尺度分子動力學模擬研究提供了研究基礎。
分子動力學模擬;數據結構;材料輻照損傷
材料輻照損傷研究涉及從原子尺度到宏觀尺度的9個數量級的跨越,以及皮秒量級原子鍵斷裂過程到幾十年工程結構失效和破壞的跨時間尺度的非線性過程。這一演化和發展過程在實驗中很難觀測和發現。因此,目前為止,材料工作者對材料輻照損傷過程中內部微觀過程和演化機理尚缺乏深入的了解。高性能計算機技術的發展使人們從微觀層次深入理解材料成為可能,成為當今國際材料界的重要研究領域。分子動力學模擬作為原子尺度模擬的經典計算方法,在材料微觀結構演化規律研究中處于重要地位。
分子動力學模擬(molecular dynamics simulation,MD)是通過利用計算機求解體系內所有粒子的運動方程來模擬粒子的運動軌跡,從而獲得系統的溫度、體積、壓力、應力等宏觀量和微觀過程量。從20世紀50年代發展以來[1-2],已經在包括物理、計算化學、計算生物、材料科學、藥物設計等多個領域有了十分豐富的應用。分子動力學模擬作為一種非常有效的材料計算技術,已成為與實驗同等重要的科學研究方法。
由于計算能力的限制,目前分子動力學通常模擬的是幾萬到幾千萬個原子條件下材料的內部演化過程,而通常材料的微觀結構及缺陷尺寸遠遠大于現有計算能力所實現的計算規模,計算模擬結果與實際材料的微觀演化過程及宏觀性能等還有很大的差異。因此分子動力學模擬發展的關鍵在于空間規模的擴大和時間尺度的延長。只有在原子個數無限多,計算時間足夠長時,才能真實地反映材料性質的宏觀行為。
近些年,隨著高性能計算機技術的飛速發展,分子動力學計算技術被注入了新的活力。2015年7月,我國研制的“天河二號”超級計算機再度榮登全球超級計算機500強排行榜榜首,連續5次稱冠世界[3]。高性能計算機的發展為大規模分子動力學模擬提供了發展的肥沃土壤。制約實際應用的瓶頸在于大規模分子動力學軟件的研發。開展大規模分子動力學模擬軟件的研究成為國際上的研究熱點。科學家們基于混合架構高性能計算機開發了新的分子動力學程序,例如LLNL與IBM的團隊開發了面向高性能計算機的經典分子動力學代碼——ddcMD代碼。2005年,他們首次從原子層次、原子尺度研究了金屬鉭和鈾在超高溫高壓下的凝固過程,在IBM BlueGene/L的131 072個CPU上,達到101.7萬億次/秒的持續計算性能,獲得了Gordon Bell獎,該研究對評估核武器儲備的可靠性具有重要意義[4]。2007年,他們又實現了第一個基于分子動力學的微米尺度原子級K-H不穩定性數值模擬,在IBM BlueGene/L全系統212 992個CPU上,獲得了54.3萬億次/秒的持續計算性能,再次獲得了Gordon Bell獎[5]。近年來美國啟動了名為“Spatio-Temporal Frontiers of Atomistic Simulations in the Petaflop Computational World”[6]的科研項目,旨在基于高性能計算機開發可擴展的分子動力學程序,研究晶界與位錯的相互作用以及材料中空洞的形核與長大過程,在此基礎上采用可擴展并行短程MD程序SPaSM在Roadrunner上對106~1012原子進行了大規模的仿真模擬,達到了369萬億次/秒持續計算性能[7]。除此之外,針對不同領域應用的通用分子動力學軟件也有許多,如LAMMPS(http://lammps. sandia.gov/)、NAMD(http://www.ks.uiuc.edu/Research/ namd/)、GROMACS(http://www.gromacs.org/)等,它們各有各的特點,在不同領域獲得了廣泛的應用。本文關注的是在材料計算領域廣泛使用,可進行大規模并行計算的開源分子動力學軟件。選取了4款開源分子動力學軟件LAMMPS(large-scale atomic/ molecular massively parallel simulator)、Ls1-MarDyn(large systems 1:molecular dynamics)、IMD(ITAP molecular dynamics)和CoMD進行詳細的比較說明,為后續研發工作提供研究基礎與支持。
本文安排如下:首先是分子動力學軟件的介紹,對選取的4款大規模并行計算的分子動力學軟件LAMMPS、Ls1-MarDyn、IMD和CoMD進行詳細介紹。接下來,對這4款軟件在并行性能、數據結構、原子結構存儲等幾個方面進行橫向比較,并通過數值算例進行驗證和分析說明。最后,通過總結前文對4款MD軟件在大規模并行計算上特點的分析,提出針對輻照效應下金屬材料計算特點的數據結構設計思想,為下一步研究工作指出方向。
2.1 LAMMPS軟件
LAMMPS軟件是由美國Sandia國家實驗室開發的一款通用的大規模分子動力學并行計算軟件,是世界上使用最廣泛的幾款分子動力學軟件之一。從2004年到2011年之間,就達到了8萬9千多次的下載量。
LAMMPS主要用于分子動力學相關的一些計算和模擬工作,可在包括氣態、液態或者固態相形態、各種系綜下,采用不同的力場和邊界條件來模擬全原子、聚合物、生物、金屬、粒狀和粗粒化體系,可實現從幾個粒子到上億粒子體系的分子動力學計算。LAMMPS可提供并支持多種勢函數計算,包括對勢,如Lennard-Jones(LJ)勢(多用于氣體、液體分子間作用力計算)、Morse勢等,多體勢,如EAM(embedded atom model)勢(多用于單一金屬或合金體系計算)、MEAM(modified EAM)勢等,應用十分廣泛。
LAMMPS軟件為開源軟件,以C++編寫,支持用戶的自行修改和擴展。LAMMPS支持串行與并行計算。并行LAMMPS采用MPI并行,針對并行計算特點設計數據結構與并行策略,具有良好的并行擴展性。其軟件結構可由如圖1所示的類結構關系圖來展示。

Fig.1 Software structure chart of LAMMPS圖1LAMMPS軟件結構示意圖
在計算粒子間相互作用時,LAMMPS通過cutoff來設定每個粒子需計算的相互作用粒子范圍大小,采用neighbor list,也即近鄰列表的數據結構來記錄每個粒子的鄰居粒子信息,如圖2所示。粒子信息存儲在數組中,每個粒子的鄰近表數組中存儲粒子的鄰居粒子索引。在計算時,通過neighbor list來追蹤所有與該粒子有相互作用的粒子間作用力等信息。

Fig.2 Data structure of neighbor list for LAMMPS圖2 LAMMPS neighbor list數據結構展示
LAMMPS采用空間分解方法來并行分配模擬區域。將整個模擬區域分解成若干子區域并分配到各個處理器上。在每個處理器的計算子區域上設置ghost區域來存儲子區域邊界原子信息,以便并行計算時各個處理器間可以相互通信與計算。
LAMMPS提供了兩種方法來實現負載均衡,Shift方法和RCB方法,分別如圖3(a)和圖3(b)所示。Shift方法通過改變處理器間的分割線,來調整分給每個處理器的空間。最后劃分的子區域還是網格的形式。RCB方法是一種類似“砌瓷磚”的方法,它不是把模擬區域劃成網格狀,而是劃成大小不等的四邊形區域,來讓每個區域有相等數目的原子。

Fig.3 Load balancing method of LAMMPS圖3LAMMPS的負載均衡
此外,LAMMPS已有支持其他架構計算的版本,包括GPU(支持CUDA、OpenCL)和Intel Xeon Phi等架構,以及OPENMP版本的代碼。
2.2 IMD軟件
IMD是一款由德國University of Stuttgart于1997年開始研發的用于經典分子動力學模擬的開源軟件包[8],支持包括對勢、適用于金屬材料的EAM勢、適用于共價系統的Stillinger-Weber和Tersoff勢,以及適用于液體的Gay-Berne勢等多種勢函數的分子動力學計算。1999年,IMD在德國Julich超算中心的超級計算機T3E-1200-262上用512核實現了5×109個粒子的分子模擬,取得了當時的世界紀錄[9]。
IMD采用模塊化設計,C語言編寫,使用標準的MPI庫來實現并行消息傳遞。其軟件結構如圖4所示。IMD采用link cell的數據結構來存儲數據。先將整個box分成若干cell,每個cell是個結構體,每一項存儲指向原子相關信息數組的指針,具體如圖5所示。此外,IMD還提供可選項,對于3D的EAM勢計算算例,可提供與LAMMPS類似的neighbor list的數據結構進行數據存儲[10]。

Fig.4 Software structure of IMD圖4 IMD軟件結構示意
并行分解時,IMD將處理器排列成三維的笛卡爾網格,然后按區域將box里cells數組細分成相同大小的塊,并將它們分配給不同的處理器。各處理器設置ghost區域用作接收與發送粒子數據的緩沖區。IMD不提供負載平衡的策略。

Fig.5 Data structure of cell in IMD圖5 IMD中cell的數據結構展示
IMD除支持MPI的版本之外,還有OpenMP、MPI+OpenMP和GPU版本的實現。
2.3 Ls1-MarDyn軟件
以IMD的開發團隊為基礎,德國University of Stuttgart、University of Kaiserslautern、Technische Universit?t München和University of Paderborn幾家大學聯合開發了旨在挑戰萬億級別的分子模擬的MD代碼——“Ls1-MarDyn”[11]。Ls1-MarDyn保持了目前最大規模的分子動力學模擬紀錄,在德國萊布尼茲超級計算中心的超級計算機SuperMUC上用14萬核實現了4×1012個粒子的分子模擬[12]。Ls1-MarDyn只支持剛性粒子和恒體積系綜下的MD計算,適用于短程力計算,因此Ls1不適用于離子計算。
Ls1-MarDyn是以C++編寫的開源代碼,基于MPI實現并行。Ls1-MarDyn采用模塊化設計,將代碼分為物理模型計算模塊和并行算法模塊兩類,其軟件結構如圖6所示。目前,Ls1-MarDyn只支持LJ勢、Tersoff勢等對勢計算,無法實現EAM等多體勢計算。

Fig.6 Software structure of Ls1-MarDyn圖6 Ls1-MarDyn軟件結構示意圖
針對其適用于氣體流體之類分子運動變化頻繁的計算特點,Ls1-MarDyn代碼設計link cell數據結構來進行數據存儲。將模擬區域以網格劃分成小的單元格cell,單元格長為截斷半徑,依據分子位置信息,將每個分子對應到相應的cell中,如圖7(a)所示。針對不均勻的分子分布,Ls1-MarDyn對link cell數據結構做出改進,對包含粒子數目較多的單元格進行2次分割,設計了自適應link cell的數據結構,如圖7(b)所示。
Ls1-MarDyn采用了兩種并行區域分解方式[13]。一種是按進程數等分模擬區域,即將n個進程以盡量分配給每個維度相同進程數的原則建立笛卡爾坐標,將模擬區域等分為n個等體積的小區域并分到每個進程。這種區域分解方法簡單,易操作,只需初始化時建立一次即可。但是當計算到后期粒子變化移動較多時,會造成計算負載不均衡。另一種是基于KD樹的區域分解方法,也即用垂直于坐標軸的線將模擬區域遞歸地劃分為兩個負載相近的子區域,直到分割的子區域被分配到處理器上(負載近似于1/p),其中負載的計算以cell為基本單位進行估算。Ls1-MarDyn暫時還未有支持GPU、OpenMP、Intel MIC等異構計算版本代碼。
2.4 CoMD:Classical Molecular Dynamics Proxy Application軟件
CoMD(http://www.exmatex.org/comd.html)是由美國能源部ASCR資助的Exascale Co-Design Center forMaterialsinExtremeEnvironment(ExMatEx)中心設計開發的MD代碼,由LANL的JamalMohd-Yusof、Chris Sewell和Sriram Swaminarayan基于SPaSM的分子動力學代碼來進行開發維護。ExMatEx中心旨在極端環境下進行材料特性的E級超大規模計算模擬研究,該項目強調多尺度模型、計算機科學,以及通過協同設計實現百億億次的超大規模材料模擬。因此CoMD的研發是作為協同設計的工具,方便整個Ex-MatEx根據需要對新的體系結構、編程模型等進行多尺度建模計算、功能擴展和重新實現以及性能測試等而開發實現的。CoMD是開源代碼,目前發布的是1.1版本[14],只能計算LJ勢和EAM勢,EAM勢的計算只支持fcc晶格結構,只能建立規則的長方體box。CoMD是以C語言編寫的基礎MD程序,功能不多,主要結構如圖8所示。

Fig.7 Data structure of link cell for Ls1-MarDyn圖7 Ls1-MarDyn的link cell數據結構示意圖

Fig.8 Software structure of CoMD圖8CoMD軟件結構示意圖
CoMD基于MPI實現并行,采用link cell的數據結構存儲數據,采用空間分解方法進行任務劃分。CoMD根據cutoff大小劃分cell,按坐標XYZ方向進行處理器核數的劃分,再將每個方向上的cell均分到每個處理器上,將整個計算區域進行空間的分解。CoMD暫時還未考慮負載平衡策略的實現。CoMD除MPI版本之外,還實現了OpenMP并行。對于不同計算架構,CoMD還實現了針對各計算架構的版本,如AMD下的OpenCL版,基于NVDIA的GPU下的CUDA版,正在調試Intel MIC(aka Xeon Phi)和Intel's FF candidate architecture emulator架構下的眾核計算版本[15]。
3.1 大規模并行分子動力學軟件比較
通過上文的介紹,對LAMMPS、IMD、Ls1-Mar-Dyn以及CoMD這4種MD軟件的大致情況有了初步的了解,本節將對這4種軟件從數據結構、計算方法與并行分解方式等角度進行橫向的詳細比較。詳見表1。
4種軟件都采用空間分解的方式執行并行分解任務。只有LAMMPS和Ls1-MarDyn兩種軟件提供了負載平衡技術。相比較而言,基于自適應link cell結構的Ls1-MarDyn在負載均衡的調節上會比LAMMPS更加靈活。
由于本文考慮的都是設置有cutoff的短程力計算,對于此類型計算,通常有兩類數據結構用于粒子信息的存儲,分別為neighbor list和link cell。neighbor list結構是每個粒子都根據cutoff來確定并存儲自己的鄰居粒子,每次迭代時只遍歷自己的鄰居粒子。這種存儲方式的好處是計算時很容易找到需計算的對象,并且不會多出額外粒子的計算,計算效率很高。但是存儲代價高,每個粒子都要維護自己的list,在運行一定步數之后還需更新自己的list。因此這類數據結構更適合于鄰居粒子變化緩慢的應用,如固體材料等的計算。LAMMPS便是采用neighbor list的數據結構存儲原子,IMD也提供此類數據結構的存儲選項。link cell是將計算區域劃分成若干cell,按cell來存儲粒子信息。計算時,按照cutoff來確定每個cell的鄰居cell信息,按cell遍歷粒子進行計算。這種方式計算效率低,每次迭代計算時都需遍歷本身以及周圍鄰近cell,會多出非鄰居粒子的計算,計算量大。但是好處是存儲量較少,且易于做負載平衡。因此此類結構更適于類似氣體、流體材料等鄰居粒子頻繁變化的計算。IMD、Ls1-MarDyn和CoMD都采用了link cell的數據結構存儲粒子信息。
MD計算中對于粒子間作用力計算的關鍵在于勢函數的計算。對于EAM多體勢的計算,需要用到電子云密度,因此基本上都是采用的查表插值的方法來計算EAM勢。LAMMPS、IMD和CoMD都采用這種方式。Ls1-MarDyn只能計算對勢(LJ勢),采用參數化的方式計算勢。已經有其他軟件,如ddcMD,嘗試過繞開查表的方法使用參數化方式來計算EAM勢,取得了不錯的結果[5]。
隨著各種異構計算系統的出現,針對異構計算設計優化的軟件版本也日益增多。不論是成熟全面的LAMMPS、IMD,還是作為面向E級計算的ExMatEx項目中的基礎程序模塊的CoMD軟件,在異構計算和節點內優化方面都做了些嘗試,在不同的計算機體系架構(如AMD、NVDIA GPU、aka Xeon Phi等)上開發了不同的程序版本(OpenACC、OpenCL、GPU、MIC等),并進行了優化。

Table 1 Summary of comparison for 4 kinds of softwares表1 4款軟件比較總結
3.2 MD計算模擬數值實驗
本節將對以上4款MD軟件進行算例測試。所有的測試算例都是在中科院超級計算中心的超級計算集群“元”上完成。其計算節點配置為2顆Intel E5-2680 V2(Ivy Bridge|10C|2.8 GHz)處理器,每個處理器上有10個CPU核,共64 GB DDR3 ECC 1 866 MHz內存。采用的MPI版本為OPENMPI1.6.5。采用的編譯器為Intel composer_xe_2013_sp1.0.080。
本文設計了銅熔化的算例來測試各MD軟件性能,對銅原子系統在600 K的溫度下的分子動力學過程進行了計算模擬,cutoff為5埃,時間步為0.005 ps。對于LAMMPS、IMD和CoMD軟件,都選取了單核內存占用量最大的原子規模進行計算,也即LAMMPS為7.4×108原子,IMD為8.6×108原子,CoMD為3.4×108原子。由于Ls1-MarDyn軟件無法計算EAM勢,采用的是其自帶的4萬原子的LJ勢計算算例。
4款MD軟件的測試結果如表2所示。其中,參數原子更新頻率表征的是MD軟件計算效率的高低,由“每步計算時間×CPU核數/原子數”計算得到。從算例測試結果來看,計算效率最高的是LAMMPS,原子更新頻率達到了1.646 9。其次是IMD,原子更新頻率在7.7左右。CoMD軟件的計算效率,比LAMMPS低了一個數量級,但也能有12左右。以上3款MD軟件的并行性能與可擴展性都非常好。Ls1-Mar-Dyn軟件串行計算時原子更新頻率為66.965 8。雖然Ls1-MarDyn計算的是LJ勢,但由于其原子密度大,link cell中鄰居多,遍歷開銷大,導致其原子更新頻率差。
本文對4款MD軟件在計算時原子存儲所占空間也進行了測試。對于LAMMPS、IMD和CoMD軟件的測試,選取的是使得程序在每CPU核上所能運行的內存達到最大時的原子規模的算例。而Ls1-MarDyn軟件測試的是其自帶的小規模算例,其測試結果不具比較意義。測試結果如表2所示。從測試結果來看,每原子所占空間最少的是IMD,LAMMPS次之,最多的是CoMD。分析3款軟件的原子存儲構成,大致都包括原子變量存儲空間、通信buffer空間和neighbor list或link cell的存儲空間3類,其理論分析結果與測試結果基本一致。
從以上的測試結果來看,若根據現有有限的計算資源情況估計,也即每個計算節點有20個CPU核,共64 GB內存,每CPU核計算內存不能超過2.5 GB,那么理論上對應10萬核時的原子計算規模,LAMMPS為6.6×1011,CoMD為3.4×1011,IMD為8.6×1011。Ls1-MarDyn軟件因為沒有測試其內存使用的最大規模而無法準確估計,但從上面的分析來看,Ls1-MarDyn在10萬核上計算的原子規模量級與前3款軟件差不多。
因此從存儲角度上來說,要在現有內存條件計算節點上,實現10萬核上核材料輻照缺陷演化的1012的原子規模的計算,還需對現有MD軟件進行存儲優化。下一步將考慮從核材料輻照缺陷演化模擬計算的特點出發,針對該材料的特殊性設計更加節省存儲空間的數據結構來減少分子動力學計算中對于鄰居存儲的需要,從而達到擴大可計算的原子模擬規模的目的。

Table 2 Results of software parallel performance and atomic storage test表2 軟件并行性能與原子存儲測試結果
本文對4款主流材料計算大規模分子動力學開源軟件LAMMPS、Ls1-MarDyn、IMD和CoMD進行了詳細的介紹,從數據結構、計算方法、并行分解方式、原子存儲等多個方面進行橫向分析比較。在數據結構方面,MD模擬中常見兩類數據結構neighbor list和link cell,分別被LAMMPS和IMD、Ls1-MarDyn以及CoMD所采用。LAMMPS采用了易于查找鄰居粒子信息的neighbor list結構,在金屬材料銅熔化算例測試中獲得了最好的計算效率。采用link cell結構的IMD、CoMD等軟件由于cell結構特征增加了多余的計算量,計算效率稍遜于LAMMPS。但由于cell結構節省了存儲量,也使得IMD軟件在同等內存限制條件下能計算更大規模的分子動力學模擬。算例測試展示了幾款軟件不俗的并行性能,想要得到更有區分度的測試結果,還需要更大規模(幾千甚至上萬核)的算例實驗。通過對各軟件內存使用情況的測試和分析,在下一步的研究工作中,將針對材料輻照缺陷演化計算特點,提出節省原子存儲量的新型數據結構,希望在10萬CPU核上實現1012原子規模的分子動力學模擬。
[1]Alder B J,Wainwright T E.Phase transition for a hard sphere system[J].The Journal of Chemical Physics,1957, 27(5):1208-1209.
[2]Alder B J,Wainwright T E.Studies in molecular dynamics I general method[J].The Journal of Chemical Physics,1959, 31(2):459-466.
[3]TOP500 supercomputer[EB/OL].[2015-11-12].http://www. top500.org/.
[4]Streitz F H,Glosli J N,Patel M V,et al.100+TFlop solidification simulations on BlueGene/L[C]//Proceedings of the 2005 ACM/IEEE Supercomputing Conference,Seattle, USA,Nov 12-18,2005.New York:ACM,2005.
[5]Glosli J N,Richards D F,Caspersen K J,et al.Extending stability beyond CPU millennium:a micron-scale atomistic simulation of Kelvin-Helmholtz instability[C]//Proceedings of the 2007 ACM/IEEE Conference on Supercomputing, Reno,USA,Nov 10-16,2007.New York:ACM,2007:1-11. [6]Spatio-temporal frontiers of atomistic simulations in the petaflop computational world[EB/OL].[2015-11-12].http://lanl. gov/orgs/adtsc/sc10/Heterogwebfiles/Germann.pdf.
[7]Germann T C,Kadau K,Swaninarayan S.369 Tflop/s molecular dynamics simulations on the petaflop hybrid supercompute“rRoadrunner”[J].Concurrency and Computation: Practice and Experience,2009,21(17):2143-2159.
[8]Stadle J,Mikulla R,Trebin H R.IMD:a software package for molecular dynamics studies on parallel computers[J]. International Journal of Modern Physics C,1997,8(5): 1131-1140.
[9]Roth J,G?hler F,Trebin H-R.A molecular dynamics run with 5 180 116 000 particles[J].International Journal of Modern Physics C,2000,11(2):317-322.
[10]IMD.The ITAP molecular dynamics program[EB/OL]. [2015-11-12].http://imd.itap.physik.uni-stuttgart.de/.
[11]Large systems 1:molecular dynamics[EB/OL].(2014-08-19) [2015-11-12].http://www.ls1-mardyn.de/.
[12]Eckhardt W,Heinecke A,Bader R,et al.591 TFLOPS multi-trillion particles simulation on superMUC[C]//LNCS 7905:Proceedings of the 28th International Supercomputing Conference,Leipzig,Germany,Jun 16-20,2013.Berlin,Heidelberg:Springer,2013:1-12.
[13]Eckhardt W,Heinecke A.An efficient vectorization of linkedcell particle simulations[C]//Proceedings of the 9th Conference on Computing Frontiers,Cagliari,Italy,May 15-17, 2012.New York:ACM,2012:241-244.
[14]“CoMD:classicalmolecular dynamics proxy application, version 1.1”[GB/OL].(2013-02)[2015-11-12].https://github. com/exmatex/CoMD.
[15]Mohd-Yusof J.CoDesign molecular dynamics(CoMD)proxy app deep dive[C]//Exascale Research Conference,Arlington, USA,Oct 1-3,2012.

NIE Ningming was born in 1983.She received the Ph.D.degree in computational mathematics from Academy of Mathematics and Systems Science,Chinese Academy of Sciences in 2010.Now she is an associate professor at Computer Network Information Center,Chinese Academy of Sciences.Her research interest is high performance computing.
聶寧明(1983—),女,湖南衡陽人,2010年于中國科學院數學與系統科學研究院獲得博士學位,現為中國科學院計算機網絡信息中心副研究員,主要研究領域為高性能計算。

HU Changjun is a full professor and Ph.D.supervisor at School of Computer and Communication Engineering, University of Science and Technology Beijing,and the member of CCF.His research interest is high performance computing.
胡長軍,男,北京科技大學計算機與通信工程學院教授、博士生導師,CCF會員,主要研究領域為高性能計算。

ZHANG Yunquan was born in 1973.He received the Ph.D.degree from Institute of Software,Chinese Academy of Sciences in 2000.Now he is a professor and Ph.D.supervisor at Institute of Computing Technology,Chinese Academy of Sciences,and the member of CCF.His research interests include heterogeneous computing,large scale parallel software optimization,parallel programming model and performance model,etc.
張云泉(1973—),男,2000年于中國科學院軟件研究所獲得博士學位,現為中國科學院計算技術研究所研究員、博士生導師,CCF會員,主要研究領域為異構計算,大規模并行軟件優化,并行程序模型和性能模型等。

HE Xinfu was born in 1981.He is an associate professor at China Institute of Atomic Energy.His research interest is multiscale modeling of radiation damage in nuclear materials.
賀新福(1981—),男,中國原子能科學研究院副研究員,主要研究領域為核材料輻照損傷的多尺度建模。

ZHANG Boyao was born in 1987.He is an assistant engineer at Computer Network Information Center,Chinese Academy of Sciences.His research interest is parallel computing.
張博堯(1987—),男,中國科學院計算機網絡信息中心助理工程師,主要研究領域為并行計算。

LI Shigang is an assistant professor at Institute of Computing Technology,Chinese Academy of Sciences,and the member of CCF.His research interests include large-scale parallel computing based on MPI,heterogeneous computing and scalable deep learning algorithms on multi-/many-core clusters,etc.
李士剛,男,中國科學院計算技術研究所助理研究員,CCF會員,主要研究領域為基于MPI的大規模并行計算,多核眾核集群上的異構計算和可擴展深度學習算法研究等。
Comparison of Large-Scale Molecular Dynamics Software for Materials Microstucture Evolution*
NIE Ningming1+,HU Changjun2,ZHANG Yunquan3,HE Xinfu4,ZHANG Boyao1,LI Shigang3
1.Computer Network Information Center,ChineseAcademy of Sciences,Beijing 100190,China
2.School of Computer and Communication Engineering,University of Science and Technology Beijing,Beijing 100083,China
3.Institute of Computing Technology,ChineseAcademy of Sciences,Beijing 100190,China
4.China Institute ofAtomic Energy,Beijing 102413,China
+Corresponding author:E-mail:nienm@sccas.cn
Molecular dynamics simulation is an important tool for studying materials microstructure evolution under radiation effects.This paper introduces four kinds of mainstream large-scale molecular dynamics open source software for materials computing,LAMMPS,Ls1-MarDyn,IMD and CoMD,and compares and analyzes data structures,computational methods,parallel decomposition methods and atomic storage,etc.By the design examples,this paper testscomputational efficiency,parallel performance and memory usage.A new idea of less memory-used data structure design for the single crystal is prepared for the simulation characteristics of metal materials evolution under irradiation defects.It provides the basis for subsequent research to realize large temporal and spatial scale molecular dynamics simulation.
molecular dynamics;data structure;material irradiation damage
10.3778/j.issn.1673-9418.1512050
A
:TP391
*The National Natural Science Foundation of China under Grant No.61303050(國家自然科學基金);the High Technology Research and Development Program of China under Grant No.2015AA01A303(國家高技術研究發展計劃(863計劃));the Program of Youth Innovation Promotion Association,Chinese Academy of Sciences under Grant No.2015375(中國科學院青年創新促進會項目);the Informationization Project of ChineseAcademy of Sciences under Grant No.XXH2503-02(中國科學院信息化專項).
Received 2015-12,Accepted 2016-02.
CNKI網絡優先出版:2016-02-03,http://www.cnki.net/kcms/detail/11.5602.TP.20160203.1126.008.html
NIE Ningming,HU Changjun,ZHANG Yuquan,et al.Comparison of large-scale molecular dynamics software for materials microstucture evolution.Journal of Frontiers of Computer Science and Technology,2017,11(3):355-364.