高性能計算環(huán)境搭建及在空投入水結(jié)構(gòu)設(shè)計中的應(yīng)用
結(jié)構(gòu)入水是一個非常復(fù)雜的過程,從結(jié)構(gòu)撞水、入水到結(jié)構(gòu)在水下航行,空氣、水和結(jié)構(gòu)三者之間的相互作用,是一個典型的流-固耦合問題。涉及到流體力學(xué)、固體力學(xué)、動力學(xué)、計算力學(xué)等多學(xué)科知識。在傳統(tǒng)的"設(shè)計-試制-試驗"的設(shè)計方法上,對該問題的研究存在著很大的障礙。而利用高性能計算技術(shù)可以建立合理的分析模型,在計算機上逼真地模擬所設(shè)計的產(chǎn)品的各種性能,并獲得各種參數(shù),靜動態(tài)圖示各種結(jié)果,為突破這些領(lǐng)域的關(guān)鍵技術(shù)提供了有力的技術(shù)手段。
高性能計算技術(shù)的應(yīng)用是研發(fā)技術(shù)更新和提高的一個重要環(huán)節(jié),為越來越多的企業(yè)和科研單位所重視。借助先進的建模工具和硬件平臺,可以進一步提高企業(yè)的設(shè)計水平,為實現(xiàn)國家創(chuàng)新發(fā)展的目標打下技術(shù)基礎(chǔ)。
2 高性能計算技術(shù)簡介
高性能計算技術(shù)(High-Performance Computing)主要是指從體系結(jié)構(gòu)、并行算法和軟件開發(fā)等方面研究開發(fā)高性能計算機的技術(shù)。隨著信息化社會的飛速發(fā)展,高性能計算已成為繼理論科學(xué)和實驗科學(xué)之后科學(xué)研究的第三大支柱。在一些新興的學(xué)科,如新材料技術(shù)和生物技術(shù)領(lǐng)域,高性能計算機已成為科學(xué)研究的必備工具。
隨著對產(chǎn)品各種設(shè)計性能要求的不斷提高和高性能計算技術(shù)的蓬勃發(fā)展,現(xiàn)在,高性能計算技術(shù)被大范圍的應(yīng)用到產(chǎn)品的性能仿真分析中,尤其在航天航空,船舶,汽車,海洋工程等領(lǐng)域的產(chǎn)品虛擬設(shè)計和性能分析方面得到了越來越廣泛的應(yīng)用。
3 高性能計算應(yīng)用軟件的特點與硬件平臺的選擇
3.1 高性能計算應(yīng)用軟件的特點
CAE分析軟件作為高性能計算應(yīng)用軟件的主要類別,通常包括前處理、計算分析和后處理這3個模塊。前處理主要是建立問題的幾何模型、進行網(wǎng)格劃分、建立用于計算分析的數(shù)值模型、確定模型的邊界條件和初始條件等;計算分析是對所建立的數(shù)值模型進行求解,經(jīng)常需要求解大型的線性方程組,這個過程是CAE分析中計算量最大、對硬件性能要求最高的部分;后處理則是以圖形化的方式對所得的計算結(jié)果進行檢查和處理。
高性能計算技術(shù)應(yīng)用的一個重要特點是,主要采用國際上公認的大型商業(yè)軟件進行分析和計算。根據(jù)水下航行體設(shè)計的特點,主要采用FlUENT、ABAQUS、ANSYS、LS-DYNA、ADAMS等CFD和FEA軟件。
根據(jù)求解算法的不同,高性能計算軟件總體上可以分為隱式和顯式兩類。從對計算資源的需求來說,隱式解法的基本特點是內(nèi)存占用多、磁盤IO大、進程通信量大,因此,隱式解法要求系統(tǒng)的內(nèi)存容量大、訪存帶寬高、磁盤IO速度快、通信延遲低;相對而言,顯式解法對內(nèi)存、磁盤IO和通信延遲的要求要低一些。
從軟件的擴展性上來說,隱式算法和顯式算法有明顯的區(qū)別。采用隱式算法的軟件,擴展性比較差,計算性能在8-16 CPU以上就很難獲得進一步的提升;而采用顯式算法的軟件,擴展性就要好得多,在64-128 CPU以內(nèi)都能獲得較好的并行性能。
從并行技術(shù)的角度來說,隱式算法通常采用OpenMP或者Pthreads等共享內(nèi)存的方式實現(xiàn),而顯式算法通常采用MPI或者PVM等消息傳遞方式實現(xiàn)。采用共享內(nèi)存方式的優(yōu)點是實現(xiàn)容易,性能較高,但只能運行在SMP結(jié)構(gòu)的服務(wù)器上;而消息傳遞方式則可適用于SMP或者DMP結(jié)構(gòu)的服務(wù)器上。不過,隨著集群計算的發(fā)展,SMP平臺上的大多數(shù)算法也已移植到了DMP平臺上,雖然并不完全。比如ABAQUS/Standard的Direct求解器和Lanczos特征值求解器就只支持Threads模式,因此必須采用SMP平臺才能實現(xiàn)并行計算。 #p#page_title#e#
3.2 高性能計算硬件平臺的選擇
硬件平臺的選擇對高性能計算的成功實施至關(guān)重要,它直接影響到性能仿真的運行、管理和維護。對于用戶來講,往往是在軟件選型已經(jīng)完成之后,才開始考慮硬件選型。因此在硬件平臺的選擇上,必須綜合考慮不同應(yīng)用軟件的特點,才能確定最佳配置方案。
目前市場上的高性能服務(wù)器主要有共享內(nèi)存的SMP和分布式內(nèi)存的Cluster兩種體系結(jié)構(gòu)。在共享內(nèi)存的系統(tǒng)中,所有的處理器通過公用的總線可以使用一個共同的物理內(nèi)存空間,因此,每個CPU和其他CPU共享所有內(nèi)存。常見的產(chǎn)品有SGI的Altix和Origin系列、HP的SuperDome系列等。在分布式內(nèi)存的系統(tǒng)中,每個計算節(jié)點擁有屬于自己的內(nèi)存,不能由其他計算節(jié)點使用。節(jié)點之間由專用的高速通信網(wǎng)絡(luò)連接,通過消息傳遞接口MPI進行通信。常見的產(chǎn)品有曙光天潮系列、聯(lián)想深騰系列等。
采用共享內(nèi)存的SMP架構(gòu)的服務(wù)器,既可以支持OpenMP和Pthreads并行,也可以支持MPI和PVM并行,能夠利用軟件的所有并行功能。但SMP系統(tǒng)的價格相對而言較高,而且對于主要采用隱式算法的軟件而言,最多只能利用8-16顆CPU,因此配置CPU數(shù)更多的SMP服務(wù)器并沒有太大的意義,反而會造成投資的浪費。
分布式內(nèi)存的Cluster系統(tǒng)是近年來迅速普及的一種高性能服務(wù)器體系。集群是一組獨立的計算機(節(jié)點)的集合體,節(jié)點間通過高性能的互連網(wǎng)絡(luò)連接,可以協(xié)同工作并表現(xiàn)為一個單一的、集中的計算資源(單一系統(tǒng)映象)供并行計算任務(wù)使用。構(gòu)建這類服務(wù)器的成本比較低,具有良好的性價比和可擴放性。集群作為當前高性能計算機的主流架構(gòu),在Top 500中占據(jù)了75%以上的份額。因此,當前主流的CAE軟件都提供了對集群架構(gòu)和MPI的支持。當前市場上的集群系統(tǒng)大多是采用4-8路的SMP服務(wù)器作為計算節(jié)點,因此也支持OpenMP。
拋開軟件的擴展性問題,實際應(yīng)用中單個作業(yè)使用的CPU數(shù)一般不會超過16個,以FEA應(yīng)用為主的系統(tǒng),常采用由多個16-CPU的SMP服務(wù)器組成的集成系統(tǒng),以CFD應(yīng)用為主的系統(tǒng),常采用"SMP集群+PC Cluster"的混合集群系統(tǒng)。結(jié)合我們所選擇的軟件平臺,并考慮并行體系結(jié)構(gòu)和處理器類型,以及所涉及問題的規(guī)模,我們選擇SGI Altix450,16CPU/24G內(nèi)存的圖形工作站作為高性能計算服務(wù)器。
4 高性能計算環(huán)境組建
4.1 高性能計算服務(wù)器的網(wǎng)絡(luò)連接
整個網(wǎng)絡(luò)連接的示意圖如圖1所示。高性能計算服務(wù)器采用SGI Altix450,使用的是suse linux操作系統(tǒng),客戶端是統(tǒng)一定制的windows系統(tǒng)。
一般情況下,前處理和后處理可以在客戶端利用員工個人計算機進行,計算分析過程在服務(wù)器上進行,這樣在客戶機端和服務(wù)器端之間需要傳遞數(shù)據(jù)。為了方便的在這兩者之間進行數(shù)據(jù)讀取,采用linux下的samba服務(wù)器功能。當啟動samba服務(wù)器功能,并進行相應(yīng)的設(shè)置后,客戶機端就可以將服務(wù)器的共享硬盤區(qū)域以網(wǎng)絡(luò)驅(qū)動器的方式掛接到本地,使用時就像是操作本地硬盤一樣。
4.2 軟件安裝與設(shè)置
高性能計算服務(wù)器端主要安裝各種分析軟件的linux版。客戶機端需要的軟件主要有字符界面終端,可以選擇putty軟件和圖形界面終端即X服務(wù)器,可以選擇Xming或者Exceed等軟件。
出于安全方面的考慮,服務(wù)器禁止以Telnet的方式遠程訪問,一般是通過SSH的方式遠程登陸到服務(wù)器上。在putty里有一個特性叫"X11 Forwording",使用這一特性連接服務(wù)器,直接啟動任何X程序(比如Fluent)時,程序就會自動連接到客戶機端的本地X服務(wù)器(本地X服務(wù)器已啟動)。 #p#page_title#e#
5 高性能計算技術(shù)入水沖擊中的應(yīng)用實例
論文應(yīng)用Ls_dyna軟件對結(jié)構(gòu)高速空投入水過程進行仿真計算為例,介紹高性能計算在產(chǎn)品設(shè)計中的應(yīng)用。
5.1模型建立
算例中的模型包括流體模型和結(jié)構(gòu)模型。在CAD軟件中建立結(jié)構(gòu)的三維模型,導(dǎo)入CAE前處理軟件進行網(wǎng)格劃分,流體幾何模型直接在前處理軟件中建立。論文所用的CAD軟件為PRO/E,前處理軟件為ANSYS。建立的網(wǎng)格模型如圖2所示,流體的網(wǎng)格數(shù)量為110萬。
設(shè)置邊界條件,生成k文件,并對k文件進行修改,修改材料屬性,添加流固耦合控制等,設(shè)置結(jié)構(gòu)入水的初始條件,然后提交Ls_dyna求解器進行計算。
5.2實例計算
論文中結(jié)構(gòu)入水的初始條件為:入水速度40m/s、入水傾角85°、入水攻角0°。采用4個節(jié)點并行計算,求解物理時間為0.2s,對如此規(guī)模的計算,大約需要計算機時為20小時。
對計算結(jié)果進行后處理,可以得到如下結(jié)果:
通過計算最終得到如下計算結(jié)果:
1)入水時刻產(chǎn)生的飛濺、開空泡以及壓力波
圖3 剛體入水產(chǎn)生飛濺現(xiàn)象
圖4 壓力波
2)不同時刻剛體的運行姿態(tài)
圖5不同時刻剛體運行姿態(tài)
3)加速度和速度曲線
圖6 剛體加速度曲線
圖7 剛體速度曲線
通過上面的分析結(jié)果,可以看到結(jié)構(gòu)入水的前三個不同階段,由于剛體的入水速度比較高,形成很長的空泡段,所以看不到空泡閉合階段。通過上面的結(jié)果還可以看到剛體各個時刻的運行姿態(tài)以及運行過程中的各種參數(shù)隨時間的變化。
6 結(jié)論
隨著計算機技術(shù)的不斷發(fā)展,高性能計算技術(shù)正在成為繼理論分析和實驗研究之后的一種新的研究途徑,為理論分析和試驗研究提供了不可缺少的重要補充。本文主要針對研究院所中小規(guī)模的高性能計算的實現(xiàn)進行了介紹。本實踐為空投結(jié)構(gòu)研制提供了有力的技術(shù)手段,取得了較好的效果。
參考文獻:
[1] SUSE LINUX 管理指南 Edition 4 2005.Novell Inc..
[2] 遲學(xué)斌,趙 毅.高性能計算技術(shù)及其應(yīng)用.中國科學(xué)院院刊2007年第四期.
[3] 時黨勇,李裕春,張勝民. 基于ANSYS/LS-DYNA8.1進行顯示動力分析,清華大學(xué)出版社,北京.2005(1)