天天看點

如何提升CAE/CFD的高性能計算應用效率?

cae(computer aided engineering)是指利用計算機對工程及工業産品的結構、性能及運作狀态等進行仿真,cfd(computational fluid dynamics)是指利用計算機數值求解流體力學問題。

目前,基于高性能計算機的cae/cfd仿真在航空航天、汽車船舶、石油化工、土木建築等領域有廣泛的應用。并且,随着計算機技術的不斷發展,cae/cfd在上述領域的作用愈漸重要,特别是在航空航天領域,cae/cfd已經成為與理論分析和風洞實驗并列的三種研究手段之一。美國航天局nasa預測,航空航天飛行器的設計會在不遠的将來發生革命性的變化,即實作在基于cae/cfd仿真資料的數值風洞中的虛拟飛行。

高性能計算在cae/cfd上應用的首要目标是用最低的成本擷取最接近真實的結果。目前,cae/cfd行業軟體衆多,客戶對這些軟體的應用要求也是千差萬别,難以形成統一的解決方案。

那麼高性能計算在cae/cfd中應如何應用優化呢?首先,我們先分下cae/cfd的特征。

cae/cfd軟體基本上采用有限元法或有限體積法求解控制方程,在計算時涉及大量的前後時間步疊代以及交界區域處理,屬于計算密集型,對cpu性能的要求自然是越高越好。

一般來講,采用顯式時間格式的cae/cfd軟體對記憶體容量的要求一般,而采用隐式時間格式的cae/cfd軟體對記憶體容量有比較高的要,至于對記憶體帶寬的要求則是與單節點内的程序數直接關聯的,程序數越多,記憶體帶寬要求越高。

在i/o層面上,多數cae/cfd軟體在讀操作時,由主程序讀入資料,然後向從程序分發資料;在寫操作時,由主程序統一收集從程序的資料,然後主程序寫出資料。也就是說,隻有主程序直接負責i/o操作。是以,cae/cfd對i/o存儲的壓力一般。

如前所述,由于cae/cfd軟體在計算時要做前後時間步疊代和交界區域處理,是以,對網絡通信也比較高,宜采用infiniband網絡。

接下來,我們再看一下如何進行高性能計算的cae/cfd運作優化。

由于cae/cfd多為商業軟體,一般隻能做硬體級優化與運作級優化。考慮到前文的特征分析,在硬體級優化層面,我們可以通過配置高主頻cpu和四通道記憶體來分别提高cpu、記憶體的性能,更可以通過對網絡接連拓撲,路由選擇算法以及rdma等方面進行優化來提升infiniband網絡的通信能力。

在運作級優化層面,一般是采用mpi優化的政策。例如,mpi程序綁定優化,mpi消息傳遞機制優化,以及mpi通信共享記憶體優化等。随着pgas(partitioned global address space)程式設計模型,以及gpu、mic等加速協處理器的發展,上述傳統算法将會被極大改進。

以fluent算例為例,浪潮使用其自主開發的“天眼”高性能應用特征監控分析系統(英文:teye),監測和分析了fluent的應用特征。在intel xeon e5-2680v3 cpu平台上和144個程序下,計算了1000萬網格規模的fluent算例。

在下圖中,通過浪潮天眼可以看出fluent 的cpu使用率接近100%,參與計算的實體核心基本上在滿載運作,說明了fluent屬于計算密集型。

如何提升CAE/CFD的高性能計算應用效率?

浪潮天眼分析fluent算例的cpu使用率

在記憶體帶寬方面,天眼監測到fluent的記憶體帶寬需求主要發生在網格建構、合并及劃分之後總記憶體帶寬約為45gb/s。其中,讀記憶體帶寬約為40gb/s,寫記憶體帶寬約為5gb/s。fluent由主程序讀入和寫出資料,從程序不直接參與i/o操作。另外,資料讀寫量與fluent算例大小成正關系。

如何提升CAE/CFD的高性能計算應用效率?

浪潮天眼分析fluent算例的記憶體帶寬

此外,我們還可以看到除開始階段主節點的讀操作速率達到40mb/s外,在fluent的整個計算過程中,i/o操作壓力比較小。作為典型的cfd軟體,fluent需要采用infiniband網絡進行資料通信。

如何提升CAE/CFD的高性能計算應用效率?

浪潮天眼監測fluent算例的磁盤讀寫操作情況

在計算初期,fluent通過網絡進行大量的資料發送與接收操作。在之後的計算過程中,資料發送與接收呈現連續流特征,其速率維持在60mb/s ~ 100 mb/s。由此可見,fluent是一款網絡密集型軟體。

如何提升CAE/CFD的高性能計算應用效率?

浪潮天眼監測fluent算例的infiniband網格資料發送與接收情況

下圖為浪潮天眼分析監測的fluent算例的雷達圖,直覺地顯示了fluent的各項應用特征。

如何提升CAE/CFD的高性能計算應用效率?

  通過浪潮天眼分析的fluent軟體應用特征雷達圖

浪潮在高性能計算方面擁有豐富的cae/cfd優化經驗,通過浪潮天眼可以更全面、更精細的分析cae/cfd軟體特征,提供軟硬一體化的全方位優化方案。目前浪潮的cae/cfd高性能計算應用方案已經廣泛的應用在了航空航天、汽車船舶、建築建設等行業。

原文釋出時間為:2016-06-02

本文來自雲栖社群合作夥伴至頂網,了解相關資訊可以關注至頂網。

繼續閱讀