文/羅萱 林新華 金耀輝
HPC與云融合之道
文/羅萱 林新華 金耀輝
云與高性能計(jì)算可以融合嗎?上海交通大學(xué)提出新思路,他們嘗試?yán)瞄_(kāi)源云平臺(tái)為高性能計(jì)算提供彈性計(jì)算服務(wù),努力為未來(lái)的校級(jí)超算中心運(yùn)行管理提供借鑒。
高性能計(jì)算作為實(shí)驗(yàn)和理論以外的第三大科學(xué)研究手段,越來(lái)越受到重視。高性能計(jì)算甚至在一定程度上反映了綜合國(guó)力發(fā)展水平,各國(guó)都投入巨資建造大型超級(jí)計(jì)算機(jī),TOP 500的記錄不斷被刷新。但是超算規(guī)模的增加,也給高性能計(jì)算的系統(tǒng)管理帶來(lái)了新的挑戰(zhàn)。
1. 在固定資源情況下,多用戶使用的高性能計(jì)算系統(tǒng)作業(yè)調(diào)度追求系統(tǒng)利用率和用戶服務(wù)質(zhì)量平衡,但很難同時(shí)保證,比如短作業(yè)等待時(shí)間的調(diào)度目標(biāo)將導(dǎo)致低利用率,而高利用率的調(diào)度目標(biāo)有可能增加用戶作業(yè)的等待時(shí)間。
2. 隨著高性能計(jì)算應(yīng)用的普及,各種應(yīng)用從底層操作系統(tǒng)、到并行計(jì)算中間件(如MPI)以及上層的應(yīng)用軟件都各不相同,對(duì)于計(jì)算、網(wǎng)絡(luò)和存儲(chǔ)等物理層硬件的要求也不盡相同,比如高性能計(jì)算還可以再細(xì)分為計(jì)算密集型、吞吐密集型和數(shù)據(jù)密集型等應(yīng)用,作業(yè)調(diào)度如何考慮這些約束因素?
3. 高性能計(jì)算的體系架構(gòu)也在不斷演進(jìn),GPU和眾核異構(gòu)體系加速了計(jì)算性能的提升,但也使得高性能計(jì)算的作業(yè)調(diào)度變得更加復(fù)雜。
云計(jì)算是一種全新的服務(wù)交付模式,允許用戶以服務(wù)的方式從服務(wù)提供商那里獲得應(yīng)用程序、開(kāi)發(fā)環(huán)境、硬件平臺(tái)、虛擬/物理服務(wù)器等資源。所有這些服務(wù)是按需使用的,用戶只需要為已經(jīng)使用或正在使用的資源付費(fèi)。其中虛擬化技術(shù)是云計(jì)算中的一項(xiàng)關(guān)鍵技術(shù),虛擬化技術(shù)也可以將一個(gè)物理設(shè)備抽象成多個(gè)邏輯設(shè)備。這種模式可以將計(jì)算和其他資源分配變得更加靈活、更加可靠、更加容易擴(kuò)展和升級(jí)。
云計(jì)算這種靈活的彈性應(yīng)用模式將為解決上述高性能計(jì)算的系統(tǒng)管理帶來(lái)新的機(jī)遇。自云計(jì)算興起以來(lái),一個(gè)有趣的問(wèn)題一直備受關(guān)注,即是否能在商業(yè)的云計(jì)算服務(wù)上實(shí)現(xiàn)高性能計(jì)算。美國(guó)德州大學(xué)Austin分校的研究人員比較了Amazon EC2計(jì)算節(jié)點(diǎn)組成的虛擬集群和一個(gè)物理集群的性能,基本配置如下表:
表 Amazon EC2的性能基本配置
他們通過(guò)各種典型的并行測(cè)試集發(fā)現(xiàn),對(duì)于基于OpenMP的共享內(nèi)存并行程序,EC2集群的性能大約下降了7%~21%,而基于MPI的分布內(nèi)存并行程序,EC2集群的性能大約下降了40%~1000%,性能下降的主要原因是虛擬化和互連網(wǎng)絡(luò)導(dǎo)致。虛擬化是高性能計(jì)算的一大制約因素,除了導(dǎo)致性能下降以外,有些硬件設(shè)備如:GPU和Infiniband根本就無(wú)法虛擬化。
此外,為了追求更大的計(jì)算容量和能力,可能不能靠單一超算中心的資源去滿足,需要跨域調(diào)度多個(gè)超算中心的資源,網(wǎng)格計(jì)算較好地解決了這一問(wèn)題。但多個(gè)云之間的跨域互操作,標(biāo)準(zhǔn)尚未形成,基本還停留在概念中。
我們提出了一種融合高性能計(jì)算、網(wǎng)格計(jì)算和云計(jì)算的新型計(jì)算框架——高性能彈性計(jì)算(HPEC),可以跨域管理和調(diào)度多個(gè)云計(jì)算資源,支持GPU和眾核異構(gòu)計(jì)算環(huán)境,用戶可以自主靈活地申請(qǐng)和管理計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源,這些資源可以是虛擬化的或者是直接的物理資源,支持High Performance Computing Platform as a Service(HPCPaaS)多節(jié)點(diǎn)集群及上層軟件的快速部署,同時(shí)支持計(jì)算密集(MPI)和數(shù)據(jù)密集(Map/Reduce)應(yīng)用等。
本文將總結(jié)國(guó)內(nèi)外相關(guān)研究和應(yīng)用進(jìn)展,探討HPEC的體系架構(gòu)和關(guān)鍵技術(shù)挑戰(zhàn),最后簡(jiǎn)要介紹上海交通大學(xué)網(wǎng)絡(luò)與信息中心在HPEC方面的初步研究工作。
FutureGrid計(jì)劃是一個(gè)網(wǎng)格/云/高性能計(jì)算的混合試驗(yàn)床,由NSF支持,它通過(guò)萬(wàn)兆高速網(wǎng)絡(luò)互聯(lián)了美國(guó)和歐洲主要從事高性能計(jì)算的大學(xué)/中心,如圖1所示。它的主要目標(biāo)是支撐學(xué)術(shù)界和工業(yè)界開(kāi)展云/網(wǎng)格/高性能計(jì)算和應(yīng)用的研究,可以給用戶提供一個(gè)靈活的開(kāi)發(fā)和測(cè)試平臺(tái),用以評(píng)估云/網(wǎng)格計(jì)算相關(guān)的開(kāi)源軟件的互操作、功能以及性能,體系結(jié)構(gòu)研究包括認(rèn)證、授權(quán)、調(diào)度、虛擬化、中間件和接口等,應(yīng)用研究包括天文、化學(xué)、生物、工程和氣候等,這些試驗(yàn)可以運(yùn)行在虛擬機(jī)上或者若干臺(tái)物理機(jī)組成的虛擬集群,用戶可以通過(guò)自主定制軟件鏡像,快速部署計(jì)算環(huán)境。
澳大利亞Melburne大學(xué)R. Buyyad教授研究組,提出過(guò)一個(gè)基于.Net技術(shù)的高性能云計(jì)算軟件平臺(tái)Aneka,并討論了Aneka在混合云上的部署方案。Amazon在其EC2上也提供了高性能計(jì)算服務(wù),但基于硬件虛擬化技術(shù)。IBM正在研發(fā)一款云計(jì)算中HPC的管理套件,可以支持物理機(jī)集群,具有自助服務(wù)的Web接口,實(shí)現(xiàn)快速鏡像無(wú)盤(pán)部署,動(dòng)態(tài)管理物理機(jī)和虛擬機(jī)資源。Mircosoft在Windows Azure云上,部署了美國(guó)國(guó)家基因信息中心的基因比對(duì)高性能計(jì)算工具BLAST。
圖3 高性能彈性計(jì)算驗(yàn)證平臺(tái)體系
圖4 驗(yàn)證平臺(tái)的硬件環(huán)境
圖2顯示了高性能彈性計(jì)算的體系架構(gòu),從本質(zhì)上講,這個(gè)架構(gòu)是從云計(jì)算體系架構(gòu)演化而來(lái),但有以下一些區(qū)別:
1. 云計(jì)算中的計(jì)算資源往往是以虛擬機(jī)方式呈現(xiàn),而高性能彈性計(jì)算有時(shí)可能是沒(méi)有虛擬化物理機(jī)。這是高性能彈性計(jì)算中最大的技術(shù)挑戰(zhàn)。云計(jì)算虛擬機(jī)管理器Hypervisor的控制權(quán)限仍在云管理者手中,即使將虛擬機(jī)的根用戶口令給使用者,云管理者可以根據(jù)云資源租用合約隨時(shí)收回分配的虛擬資源。而在無(wú)虛擬化的物理資源上,如何能保證云管理者依然能收回分配的資源?
2. 鏡像管理。除了提供一般操作系統(tǒng)的標(biāo)準(zhǔn)模板外,還應(yīng)該允許用戶自己創(chuàng)建鏡像,包括中間件和應(yīng)用軟件的安裝,以及鏡像俘獲和重用,這是與云計(jì)算體系所不同的地方。
3. 動(dòng)態(tài)部署。高性能彈性計(jì)算一般都是以虛擬集群方式提供資源,因此要求能夠快速地部署多臺(tái)服務(wù)器,通常數(shù)量為幾十至上百臺(tái)。
4. 資源監(jiān)控。監(jiān)控各種資源的使用情況,為調(diào)度管理提供依據(jù)。
5. 調(diào)度管理是高性能彈性計(jì)算中最復(fù)雜的部分,它包括云計(jì)算中虛擬集群的資源分配、虛擬機(jī)/物理機(jī)的遷移和虛擬集群的動(dòng)態(tài)資源調(diào)整,在每個(gè)虛擬集群中的作業(yè)調(diào)度等。
6. 安全控制可以沿用云計(jì)算模式的安全訪問(wèn)控制,通過(guò)ACL和VLAN來(lái)控制不同試驗(yàn)間隔離,以及用戶口令來(lái)設(shè)定不同權(quán)限。
7. 用戶試驗(yàn)管理包括多租戶管理,試驗(yàn)虛擬集群總資源的設(shè)定,用戶訪問(wèn)門戶等。
為了驗(yàn)證高性能彈性計(jì)算的思想,我們建立了一個(gè)驗(yàn)證平臺(tái),如圖3所示。IaaS我們采用開(kāi)源軟件OpenStack搭建,可以提供類似Amazon的EC2和S3的服務(wù)。IaaS平臺(tái)由24個(gè)計(jì)算節(jié)點(diǎn)(IBM dx360 M3,雙路X5650@2.66GHz CPU,96G內(nèi)存),存儲(chǔ)96TB NAS系統(tǒng),鏡像節(jié)點(diǎn)配置了512GB的SSD,完成快速的鏡像部署,所有節(jié)點(diǎn)采用6臺(tái)BNT G8142E萬(wàn)兆以太網(wǎng)交換機(jī)互連,此外存儲(chǔ)節(jié)點(diǎn)S1和S2可以完成類似Amazon EBS的彈性塊存儲(chǔ)服務(wù),網(wǎng)絡(luò)節(jié)點(diǎn)N1和N2完成DHCP和VLAN管理,所有資源的調(diào)度由控制節(jié)點(diǎn)完成,控制管理網(wǎng)絡(luò)采用千兆網(wǎng)絡(luò)互連,如圖4所示。授權(quán)用戶可以通過(guò)校園網(wǎng)訪問(wèn),申請(qǐng)動(dòng)態(tài)的服務(wù)器和存儲(chǔ)資源。
在IaaS之上,我們部署了MPI、MongoDB(NoSQL數(shù)據(jù)庫(kù))、Hadoop(Map/Reduce開(kāi)源軟件),同時(shí)開(kāi)展系統(tǒng)日志分析數(shù)據(jù)和計(jì)算流體力學(xué)應(yīng)用。同時(shí),我們還在進(jìn)一步開(kāi)發(fā)監(jiān)控、調(diào)度、管理和認(rèn)證功能,為未來(lái)在全校范圍提供高性能彈性服務(wù)做準(zhǔn)備。
該方案結(jié)合云計(jì)算技術(shù),提出了一種新型高性能彈性計(jì)算框架,該框架具有資源靈活分配的優(yōu)點(diǎn),增加了資源利用效率,可以同時(shí)動(dòng)態(tài)容納多個(gè)不同類型的高性能計(jì)算應(yīng)用,特別適合校級(jí)或者更大規(guī)模的超算中心運(yùn)行管理。
(作者單位為上海交大網(wǎng)絡(luò)與信息中心)