CAE(Computer Aided Engineering)是指利用計算機對工程及工業(yè)產(chǎn)品的結(jié)構(gòu)、性能及運行狀態(tài)等進行仿真,CFD(Computational Fluid Dynamics)是指利用計算機數(shù)值求解流體力學問題。
目前,基于高性能計算機的 CAE/CFD仿真在航空航天、汽車船舶、石油化工、土木建筑等領(lǐng)域有廣泛的應(yīng)用。并且,隨著計算機技術(shù)的不斷發(fā)展,CAE/CFD在上述領(lǐng)域的作用愈漸 重要,特別是在航空航天領(lǐng)域,CAE/CFD已經(jīng)成為與理論分析和風洞實驗并列的三種研究手段之一。美國航天局NASA預測,航空航天飛行器的設(shè)計會在不 遠的將來發(fā)生革命性的變化,即實現(xiàn)在基于CAE/CFD仿真數(shù)據(jù)的數(shù)值風洞中的虛擬飛行。
高性能計算在CAE/CFD上應(yīng)用的首要目標是用最低的成本獲取最接近真實的結(jié)果。目前,CAE/CFD行業(yè)軟件眾多,客戶對這些軟件的應(yīng)用要求也是千差萬別,難以形成統(tǒng)一的解決方案。
那么高性能計算在CAE/CFD中應(yīng)如何應(yīng)用優(yōu)化呢?首先,我們先分下CAE/CFD的特征。
CAE/CFD軟件基本上采用有限元法或有限體積法求解控制方程,在計算時涉及大量的前后時間步迭代以及交界區(qū)域處理,屬于計算密集型,對CPU性能的要求自然是越高越好。
一般來講,采用顯式時間格式的CAE/CFD軟件對內(nèi)存容量的要求一般,而采用隱式時間格式的CAE/CFD軟件對內(nèi)存容量有比較高的要,至于對內(nèi)存帶寬的要求則是與單節(jié)點內(nèi)的進程數(shù)直接關(guān)聯(lián)的,進程數(shù)越多,內(nèi)存帶寬要求越高。
在I/O層面上,多數(shù)CAE/CFD軟件在讀操作時,由主進程讀入數(shù)據(jù),然后向從進程分發(fā)數(shù)據(jù);在寫操作時,由主進程統(tǒng)一收集從進程的數(shù)據(jù),然后主進程寫出數(shù)據(jù)。也就是說,只有主進程直接負責I/O操作。因此,CAE/CFD對I/O存儲的壓力一般。
如前所述,由于CAE/CFD軟件在計算時要做前后時間步迭代和交界區(qū)域處理,因此,對網(wǎng)絡(luò)通信也比較高,宜采用InfiniBand網(wǎng)絡(luò)。
接下來,我們再看一下如何進行高性能計算的CAE/CFD運行優(yōu)化。
由于CAE/CFD多為商業(yè)軟件,一般只能做硬件級優(yōu)化與運行級優(yōu)化??紤]到前文的特征分析,在硬件級優(yōu)化層面,我們可以通過配置高主頻CPU 和四通道內(nèi)存來分別提高CPU、內(nèi)存的性能,更可以通過對網(wǎng)絡(luò)接連拓撲,路由選擇算法以及RDMA等方面進行優(yōu)化來提升InfiniBand網(wǎng)絡(luò)的通信能 力。
在運行級優(yōu)化層面,一般是采用MPI優(yōu)化的策略。例如,MPI進程綁定優(yōu)化,MPI消息傳遞機制優(yōu)化,以及MPI通信共享內(nèi)存優(yōu)化等。隨著PGAS(Partitioned Global Address Space)編程模型,以及GPU、MIC等加速協(xié)處理器的發(fā)展,上述傳統(tǒng)算法將會被極大改進。
分享到微信 ×
打開微信,點擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁分享至朋友圈。