張士存 王騰飛
(南車青島四方機(jī)車車輛股份有限公司信息技術(shù)部,山東 青島266111)
隨著科學(xué)技術(shù)的不斷發(fā)展,制造類、研究類企業(yè)對計(jì)算機(jī)數(shù)值計(jì)算的需求逐漸增加,越來越多的企業(yè)開始建立自己的企業(yè)級仿真計(jì)算中心。一般的企業(yè)在討論提高仿真計(jì)算中心的計(jì)算效率時(shí),都會首先考慮通過擴(kuò)展硬件和軟件種類來實(shí)現(xiàn),經(jīng)常會忽略對現(xiàn)有資源的優(yōu)化,常常導(dǎo)致經(jīng)過一段時(shí)間的擴(kuò)展后,仿真計(jì)算中心的管理變得十分復(fù)雜,出現(xiàn)問題的頻率也日漸增加。對企業(yè)現(xiàn)有仿真計(jì)算中心的資源進(jìn)行優(yōu)化,不僅可以免除軟硬件資源擴(kuò)展的龐大投入,還可以提高仿真計(jì)算效率,提升企業(yè)的核心競爭力。
下面將以某企業(yè)的仿真計(jì)算中心為例,介紹企業(yè)級仿真計(jì)算中心的主要優(yōu)化方向和優(yōu)化方法。
某公司于2009年采購了刀片計(jì)算集群,初步建成仿真計(jì)算中心。該中心共有32個(gè)計(jì)算節(jié)點(diǎn),單節(jié)點(diǎn)8核CPU、24G內(nèi)存,在仿真軟件并行計(jì)算許可不受限的前提下,可最多實(shí)現(xiàn)256核CPU的并行計(jì)算。為增強(qiáng)計(jì)算中心求解計(jì)算能力,該公司于2012年增購了刀片計(jì)算集群,新增8個(gè)計(jì)算節(jié)點(diǎn),單節(jié)點(diǎn)16核CPU、64G內(nèi)存,主要為流體仿真計(jì)算、碰撞仿真計(jì)算提供計(jì)算資源。
該公司現(xiàn)擁有 ANSYS、ABAQUS、HyperWorks、STARCCM+、LS-DYNA、VAONE、SYSWELD、Ansoft等主流仿真分析軟件,涵蓋了強(qiáng)度、動(dòng)力學(xué)、流體、碰撞、噪聲、焊接、電磁等機(jī)車行業(yè)主要相關(guān)學(xué)科。其中部分仿真軟件由于需求量大已多次購買,具有多個(gè)不同版本的軟件許可證。
優(yōu)化計(jì)算中心存儲設(shè)備的文件系統(tǒng),提高計(jì)算中心的數(shù)據(jù)存儲效率;將先后采購的不同型號HP刀片計(jì)算集群進(jìn)行整合,實(shí)現(xiàn)計(jì)算中心所有刀片集群的數(shù)據(jù)互通和資源融合。
基于現(xiàn)有資源調(diào)度系統(tǒng)進(jìn)行功能擴(kuò)展,增加作業(yè)調(diào)度系統(tǒng)管理的硬件數(shù)量和軟件種類,并保證對未來采購的仿真軟硬件資源進(jìn)行擴(kuò)展性管理。實(shí)現(xiàn)按角色、任務(wù)規(guī)模、仿真類型、等待時(shí)間等多種規(guī)則對仿真任務(wù)進(jìn)行優(yōu)先級排序,解決仿真資源搶占沖突問題;通過調(diào)度系統(tǒng)自動(dòng)為計(jì)算任務(wù)分配求解計(jì)算節(jié)點(diǎn),保證計(jì)算中心的負(fù)載均衡,避免單一節(jié)點(diǎn)的計(jì)算壓力過大。
對仿真軟件許可證、仿真計(jì)算節(jié)點(diǎn)的使用情況進(jìn)行實(shí)時(shí)監(jiān)控和圖形展現(xiàn),能夠?qū)崟r(shí)查看仿真軟硬件資源使用情況;根據(jù)各計(jì)算節(jié)點(diǎn)的硬件使用率對計(jì)算任務(wù)進(jìn)行合理分配,減少計(jì)算節(jié)點(diǎn)的空閑數(shù)量和閑置時(shí)間,提高硬件使用效率和計(jì)算速度,縮短仿真計(jì)算周期。
實(shí)現(xiàn)仿真求解過程的遠(yuǎn)程實(shí)時(shí)查看,可通過遠(yuǎn)程控制計(jì)算節(jié)點(diǎn)等方式對求解過程進(jìn)行實(shí)時(shí)干預(yù),啟動(dòng)、暫停、修改、恢復(fù)、結(jié)束仿真計(jì)算任務(wù);借助虛擬化技術(shù),使用日常辦公計(jì)算機(jī)遠(yuǎn)程操控計(jì)算中心的幾何模型和仿真數(shù)據(jù),對幾何模型進(jìn)行簡化、網(wǎng)格劃分等前處理,對計(jì)算結(jié)果進(jìn)行數(shù)據(jù)修正、仿真動(dòng)畫編輯等后處理,提供高質(zhì)量的遠(yuǎn)程操作顯示畫面,減少數(shù)據(jù)上傳、下載的次數(shù)和時(shí)間;通過使用專用客戶端、文件服務(wù)器等方式實(shí)現(xiàn)幾何模型和仿真數(shù)據(jù)的上傳、下載,突破大文件上傳、下載瓶頸。
借鑒云計(jì)算技術(shù)提供遠(yuǎn)程用戶服務(wù)的理念,整合當(dāng)前的仿真計(jì)算基礎(chǔ)架構(gòu),利用Citrix虛擬桌面云技術(shù)提供仿真前、后處理服務(wù),通過定制開發(fā)增加調(diào)度管理、統(tǒng)計(jì)分析等核心功能,形成一個(gè)功能完整的面向數(shù)值仿真應(yīng)用的企業(yè)級仿真計(jì)算中心。
3.1.1 并行文件系統(tǒng)
并行文件系統(tǒng)是應(yīng)用于多機(jī)環(huán)境的網(wǎng)絡(luò)文件系統(tǒng),單個(gè)文件的數(shù)據(jù)采用分條等形式存放于不同的I/O節(jié)點(diǎn)之上,支持多機(jī)多個(gè)進(jìn)程的并發(fā)存取,同時(shí)支持元數(shù)據(jù)和數(shù)據(jù)的分布存放,并提供統(tǒng)一的目錄空間。在并行文件系統(tǒng)環(huán)境下,所有客戶端可以在同一時(shí)間并發(fā)讀寫同一個(gè)文件。
利用并行文件系統(tǒng),提供高性能仿真數(shù)據(jù)存儲服務(wù),實(shí)現(xiàn)Linux計(jì)算環(huán)境、Windows計(jì)算環(huán)境、三維虛擬桌面云等不同平臺間文件系統(tǒng)命名的統(tǒng)一和存儲空間的共用。
3.1.2 計(jì)算云
原仿真計(jì)算中心共有31個(gè)計(jì)算節(jié)點(diǎn)、1個(gè)管理節(jié)點(diǎn)、1臺I/O服務(wù)器,新增計(jì)算中心設(shè)備共有8個(gè)高性能計(jì)算節(jié)點(diǎn)、1臺管理服務(wù)器、2臺I/O服務(wù)器。針對現(xiàn)有的計(jì)算硬件資源,采用以下方案進(jìn)行整合:
(1)搭建Windows/Linux混合架構(gòu)計(jì)算集群,基本覆蓋現(xiàn)有的所有CAE計(jì)算軟件。原計(jì)算中心一個(gè)刀片機(jī)箱的16個(gè)計(jì)算節(jié)點(diǎn)由Linux系統(tǒng)變更為 Windows系統(tǒng),提供Windows環(huán)境的并行計(jì)算。原計(jì)算中心I/O服務(wù)器作為Windows計(jì)算集群的管理節(jié)點(diǎn)。
(2)原計(jì)算中心另一個(gè)刀片機(jī)箱的16個(gè)刀片服務(wù)器全部使用Linux系統(tǒng),與新增的8個(gè)高性能計(jì)算節(jié)點(diǎn)連通,組成Linux計(jì)算集群,提供Linux環(huán)境的并行計(jì)算。新增計(jì)算中心設(shè)備中的管理服務(wù)器更改為Linux計(jì)算集群的管理節(jié)點(diǎn)。
(3)新增計(jì)算中心設(shè)備中的2臺I/O服務(wù)器部署并行文件系統(tǒng),互為冗余備份,所有計(jì)算節(jié)點(diǎn)安裝部署并行文件系統(tǒng)的客戶端。
(4)制定計(jì)算中心硬件擴(kuò)展集成規(guī)范,后期計(jì)算中心新增硬件設(shè)備的安裝部署,均按該規(guī)范與既有計(jì)算中心設(shè)備進(jìn)行集成。
3.1.3 存儲云
現(xiàn)有的仿真計(jì)算中心數(shù)據(jù)存儲系統(tǒng)為32T光纖磁盤陣列存儲。通過在I/O服務(wù)器上部署并行文件系統(tǒng),可以將現(xiàn)有的光纖磁盤陣列升級為存儲云,為刀片服務(wù)器、三維虛擬桌面云同時(shí)提供數(shù)據(jù)存儲服務(wù),在提高數(shù)據(jù)交互速率的同時(shí),實(shí)現(xiàn)計(jì)算云和應(yīng)用云的仿真數(shù)據(jù)共享。
3.2.1 仿真許可證調(diào)度
利用仿真資源調(diào)度系統(tǒng)的許可證狀態(tài)解析技術(shù),結(jié)合現(xiàn)有仿真許可證服務(wù)器分布情況,研究仿真資源調(diào)度系統(tǒng)的功能擴(kuò)展,從而實(shí)現(xiàn)數(shù)值仿真求解過程與軟件許可證資源密切聯(lián)動(dòng),保障計(jì)算平臺服務(wù)的穩(wěn)定性。提供在線應(yīng)用集成功能,方便管理員快速簡便地集成仿真計(jì)算軟件,應(yīng)用集成支持FlexLM、LMX、LSTC等主流License管理器。
3.2.2 仿真硬件資源調(diào)度
利用仿真資源調(diào)度系統(tǒng)的硬件資源調(diào)度分配技術(shù),對現(xiàn)有仿真硬件資源進(jìn)行集中調(diào)度分配,實(shí)現(xiàn)仿真硬件資源與仿真許可證資源的捆綁式調(diào)度,并根據(jù)仿真硬件資源剩余情況調(diào)整仿真任務(wù)排隊(duì)優(yōu)先級,計(jì)算中心能滿足軟硬件資源請求的仿真任務(wù)將優(yōu)先進(jìn)行計(jì)算,以保證仿真硬件資源的充分利用。
3.2.3 仿真處理命令封裝
將各個(gè)仿真軟件的常用求解命令集成封裝于服務(wù)式門戶平臺,用戶僅操作鼠標(biāo)即可發(fā)起、控制仿真求解任務(wù),仿真計(jì)算底層技術(shù)將實(shí)現(xiàn)透明化,降低Linux仿真計(jì)算環(huán)境的使用門檻,大幅提升計(jì)算平臺應(yīng)用便捷性。
提供多種方式配置軟件計(jì)算命令行參數(shù),包括輸入文件、核數(shù)、求解選項(xiàng)、下拉選擇框等等,管理員可根據(jù)軟件計(jì)算命令行參數(shù)要求進(jìn)行配置,系統(tǒng)用戶在提交頁面進(jìn)行作業(yè)參數(shù)的設(shè)定,系統(tǒng)根據(jù)用戶設(shè)定和軟件配置,自動(dòng)提交作業(yè)并進(jìn)行調(diào)度。用戶無需關(guān)注繁瑣的求解計(jì)算命令,而管理員無需關(guān)注復(fù)雜的Shell腳本代碼。
3.3.1 基于Citrix虛擬桌面云的仿真前、后處理可視化
利用Citrix虛擬桌面云技術(shù),在具有高性能圖卡的服務(wù)器上搭建若干具有較高圖形處理能力的 Win7/Win2008虛擬桌面,作為應(yīng)用云的主要組成部分,在虛擬桌面部署仿真許可證,提供仿真前、后處理服務(wù)。仿真工程師只需在PC客戶端使用IE瀏覽器,就可以方便地遠(yuǎn)程連接仿真應(yīng)用云進(jìn)行仿真先、后處理,本地?zé)o需安裝任何仿真分析軟件。
3.3.2 計(jì)算求解過程遠(yuǎn)程可視化
利用VNC的遠(yuǎn)程控制技術(shù),結(jié)合Linux的遠(yuǎn)程連接特點(diǎn),在Linux系統(tǒng)上安裝部署VNC遠(yuǎn)程控制軟件,實(shí)現(xiàn)用戶遠(yuǎn)程查看和控制仿真計(jì)算過程的功能。對仿真任務(wù)的求解過程進(jìn)行實(shí)時(shí)干預(yù),可啟動(dòng)、暫停、修改、恢復(fù)、結(jié)束仿真計(jì)算任務(wù)。同時(shí),禁止用戶對Linux系統(tǒng)進(jìn)行有潛在安全風(fēng)險(xiǎn)的操作,保證Linux計(jì)算環(huán)境的安全穩(wěn)定。
為保證仿真計(jì)算中心的高度可用性,盡早發(fā)現(xiàn)和避免硬件故障、軟件錯(cuò)誤、調(diào)度失效等潛在風(fēng)險(xiǎn),計(jì)算中心應(yīng)具備集中監(jiān)控所有計(jì)算資源的功能。主要監(jiān)控功能分為以下幾部分:
(1)計(jì)算節(jié)點(diǎn)的CPU、內(nèi)存、網(wǎng)絡(luò)I/O實(shí)時(shí)監(jiān)控。通過Web瀏覽器就可實(shí)時(shí)監(jiān)控計(jì)算中心各個(gè)計(jì)算節(jié)點(diǎn)運(yùn)行狀態(tài),如:計(jì)算節(jié)點(diǎn)狀態(tài)(脫機(jī)、聯(lián)機(jī)、不可到達(dá))、CPU核數(shù)、CPU主頻、CPU利用率、內(nèi)存、可用內(nèi)存、當(dāng)前運(yùn)行的軟件。提供計(jì)算節(jié)點(diǎn)在線維護(hù)模塊,管理員可在Web瀏覽器上進(jìn)行計(jì)算節(jié)點(diǎn)的上線/下線操作。
(2)數(shù)值仿真求解應(yīng)用的運(yùn)行、排隊(duì)等隊(duì)列實(shí)時(shí)監(jiān)控。對已提交仿真任務(wù)的狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控,可查看處于運(yùn)行、排隊(duì)、停止等狀態(tài)的仿真計(jì)算任務(wù)。
(3)虛擬桌面云的CPU、內(nèi)存、網(wǎng)絡(luò)I/O實(shí)時(shí)監(jiān)控。通過Web瀏覽器就可實(shí)時(shí)監(jiān)控各虛擬桌面的運(yùn)行狀態(tài),如:CPU核數(shù)、CPU主頻、CPU利用率、內(nèi)存、可用內(nèi)存、使用用戶信息。
(4)存儲云的磁盤占用情況實(shí)時(shí)監(jiān)控。利用并行文件系統(tǒng),對存儲云的磁盤使用情況進(jìn)行實(shí)時(shí)監(jiān)控,以圖形、報(bào)表等形式顯示磁盤的運(yùn)行狀態(tài)和空間占用情況。
(5)軟件許可證占用情況實(shí)時(shí)監(jiān)控。在應(yīng)用云上部署軟件許可證監(jiān)控應(yīng)用,對所有仿真軟件許可證的使用情況進(jìn)行實(shí)時(shí)監(jiān)控,并以列表形式加以展示,包括許可證名稱、總數(shù)量、已用數(shù)量等;針對正在使用的許可證,可以查看該許可證所對應(yīng)的仿真任務(wù)名稱、用戶名稱、開始時(shí)間等。
隨著高性能計(jì)算相關(guān)技術(shù)的發(fā)展,仿真計(jì)算中心的優(yōu)化、擴(kuò)展與升級逐漸呈現(xiàn)出多樣化、復(fù)雜化的趨勢。只有針對企業(yè)級仿真計(jì)算中心的特點(diǎn),定期總結(jié)仿真計(jì)算中心使用經(jīng)驗(yàn),不斷對現(xiàn)有計(jì)算資源進(jìn)行調(diào)優(yōu),才能使仿真計(jì)算中心發(fā)揮出最佳性能。
[1]顧冠群,陶軍,吳家皋.高性能計(jì)算機(jī)網(wǎng)絡(luò)研究進(jìn)展[M].南京:東南大學(xué)出版社,2006
[2]Kai Hwang,Geoffrey C.Fox,Jack J.Dongarra.云計(jì)算與分布式系統(tǒng):從并行處理到物聯(lián)網(wǎng)[M].武永衛(wèi),秦中元,李振宇,等,譯.北京:機(jī)械工業(yè)出版社,2013
[3]徐享忠,于永濤,劉永紅.系統(tǒng)仿真[M].第2版.北京:國防工業(yè)出版社,2012
[4]王鵬,呂爽,聶治,等.并行計(jì)算應(yīng)用及實(shí)戰(zhàn)[M].北京:機(jī)械工業(yè)出版社,2009