高性能計(jì)算工作負(fù)載遷移到云中的CIO指南
英國氣象局所選擇的是來自非傳統(tǒng)供應(yīng)商的傳統(tǒng)超級計(jì)算機(jī):在Azure上選了四個(gè)Cray EX系統(tǒng),這樣做可以“減少購買超級計(jì)算機(jī)所花的時(shí)間,而是更多地利用超級計(jì)算機(jī)”,引號內(nèi)出自氣象局IT研究員Richard Lawrence。
這樣做除了跳過通常的多年采購周期外還購買了靈活性,還可以更方便地在未來對高性能計(jì)算(HPC)工作負(fù)載做出不同的選擇,比購買自己的硬件要快得多。市場研究和咨詢公司Gartner建議,將HPC遷移到云端可以提供一個(gè)機(jī)會(huì),可以擺脫處理數(shù)據(jù)分析時(shí)的內(nèi)部孤島,對那些通常可以追溯到20年或更久的做法現(xiàn)代化。
云HPC的優(yōu)點(diǎn)和缺點(diǎn)
公共云供應(yīng)商能夠提供對Cray硬件的訪問使得公共云供應(yīng)商具有可信度,表明他們了解HPC用戶中要求最高的那部分人的需求。但這也為云HPC的好處提供了一個(gè)墊腳石,這樣一來就需要使用Linux服務(wù)器集群來處理要求嚴(yán)格的擴(kuò)展工作負(fù)載,而且還有人們更熟悉的云的優(yōu)勢:靈活性、敏捷性和低門檻。
Forrester公司的高級分析師Tracy Woo告訴記者,“最大的一件事是能夠選擇異構(gòu)的而不是同構(gòu)的基礎(chǔ)設(shè)施。HPC基礎(chǔ)設(shè)施的高成本意味著大多數(shù)買家會(huì)選擇一個(gè)單一品牌,這樣他們就可以談交易,每一個(gè)工作負(fù)載都必須在這個(gè)品牌上運(yùn)行,無論這個(gè)配置是否合適。你使用你所擁有的東西,即使它不是你特別需要的。而有了公共云后,你就可能得到想要或需要的每一個(gè)基礎(chǔ)設(shè)施選項(xiàng),可以滿足你的具體使用情況?!?/p>
云HPC能讓你準(zhǔn)確地指定應(yīng)用程序的需求,可以提供熟悉的英特爾和AMD處理器以及價(jià)格較低的Arm處理器的組合,配置快速的CPU和GPU、密集的內(nèi)核數(shù)量和高內(nèi)存內(nèi)核。你還可以獲得大多數(shù)組織沒有預(yù)算或?qū)I(yè)知識的硬件加速器,可以馬上輕松地進(jìn)行試驗(yàn)。
Woo指出,“我不再需要在基礎(chǔ)設(shè)施設(shè)備上花費(fèi)數(shù)十萬美元——在某些情況下甚至是數(shù)百萬美元,而只需要一張信用卡就可以運(yùn)行需要HPC的計(jì)算或特定分析,用幾個(gè)小時(shí)就夠了。”你還可以為每個(gè)工作負(fù)載甚至每個(gè)任務(wù)挑選合適的基礎(chǔ)設(shè)施,而且可以在新硬件到達(dá)市場時(shí)對其進(jìn)行基準(zhǔn)測試,而不是等待下一個(gè)更新周期。
但這種靈活性也可能令人困惑,Woo警告說,多選擇會(huì)引起“分析癱瘓”,一個(gè)幫助組織做出這些選擇的工具和平臺產(chǎn)業(yè)正在興起。
英偉達(dá)公司HPC和量子產(chǎn)品總監(jiān)Timothy Costa表示同意并表示,“管理員擁有巨大的選擇自由,但也必須深入了解他們所選擇的云供應(yīng)商的獨(dú)特架構(gòu)。例如,他們可以在高速網(wǎng)絡(luò)上組合各種計(jì)算硬件,進(jìn)而優(yōu)化其基礎(chǔ)設(shè)施設(shè) 計(jì),但并不是所有地區(qū)都具備所有類型的硬件。”
確定更適合于云計(jì)算的HPC工作負(fù)載
根據(jù)Hyperion Research的數(shù)據(jù),2019年里在云中運(yùn)行的HPC工作負(fù)載比例翻了一番,從10%增加到20%。Gartner將云HPC評為高收益的選擇,離主流采用只有2-5年的時(shí)間了。
制造業(yè)和生命科學(xué)是最早將HPC轉(zhuǎn)移到云端的行業(yè),而且仍然是增長最快的分市場。Costa表示,這些工作負(fù)載往往是“高度并行化的代碼或工作組合,對單個(gè)任務(wù)失敗的容忍度很高以及對執(zhí)行位置的要求不高”,他表示,金融、氣象、航空航天和政府實(shí)驗(yàn)室正在增加對云HPC的使用,高等教育也一樣。
對于一些“性能與成本的關(guān)系比絕對運(yùn)行時(shí)間更重要的長尾HPC工作負(fù)載”來說,云HPC是一個(gè)特別好的選擇,你可以花時(shí)間建立云基礎(chǔ)設(shè)施,以達(dá)到成本最小化(或用于一些“需在內(nèi)部部署不能提供的硬件上運(yùn)行而獲得巨大利益”的代碼)的目的。
一些為云計(jì)算IaaS建立的超大規(guī)模數(shù)據(jù)中心優(yōu)先考慮的優(yōu)化措施與HPC超級計(jì)算機(jī)的優(yōu)化措施不同的:超大規(guī)模數(shù)據(jù)中心是將虛擬機(jī)分散在整個(gè)數(shù)據(jù)中心,借此達(dá)到實(shí)現(xiàn)彈性和故障轉(zhuǎn)移的目的,但HPC是將虛擬機(jī)緊密地組合在一起,以達(dá)到獲得最快的網(wǎng)絡(luò)連接從而提高性能的目的。Costa表示,云HPC最適合松散耦合、非常平行的工作負(fù)載,而云網(wǎng)絡(luò)則“很容易滿足組合負(fù)載或參數(shù)掃描一類的HPC工作負(fù)載的需求”。
虛擬化性能對于那些習(xí)慣于裸機(jī)HPC的人來說可能是陌生的,但是在2021年11月的500強(qiáng)名單中,一臺建立在Azure上的虛擬超級計(jì)算機(jī)躋身世界十大最快機(jī)器之列,全部使用基于Hyper-V的虛擬機(jī)。谷歌云的首席HPC技術(shù)專家Bill Magro告訴我們,“云中的計(jì)算優(yōu)化虛擬機(jī)提供接近裸機(jī)的低抖動(dòng)性能,云網(wǎng)絡(luò)可以提供200Gbs以上的帶寬和小于10μs的延遲,并行文件系統(tǒng)則可以提供TB s的數(shù)據(jù)速度?!?/p>
常見的工作負(fù)載包括:
- 計(jì)算機(jī)輔助工程(例如,流體力學(xué)、燃燒、碰撞安全、結(jié)構(gòu)力學(xué)等)
- 電子設(shè)計(jì)自動(dòng)化
- 計(jì)算物理學(xué)和化學(xué)
- 特殊效果渲染
- 定量分析
- 風(fēng)險(xiǎn)分析
探討云結(jié)構(gòu)選項(xiàng)
一些工作負(fù)載需要持續(xù)低延遲的高性能互連,高性能互連過去在云計(jì)算中很罕見。Woo建議,如果你的云供應(yīng)商不提供這些,高性能互連更適合用你自己的基礎(chǔ)設(shè)施。然而,人工智能和云游戲工作負(fù)載都受益于高速互連,所以高速結(jié)構(gòu)開始在云中出現(xiàn)。Azure在旗下所有H系列集群(用于基于CPU的HPC)和大多數(shù)N系列集群(用于基于GPU的HPC)上都提供熟悉的HPC InfiniBand互連,而AWS Elastic Fabric Adapter則用于Lustre并行文件系統(tǒng)。
AWS最近開始用一種新的網(wǎng)絡(luò)傳輸協(xié)議擴(kuò)展旗下專有的Elastic Network Adapters,新的網(wǎng)絡(luò)傳輸協(xié)議旨在用于旗下定制的Nitro網(wǎng)絡(luò)適配器上,用途是作為InfiniBand的替代品:Elastic Network Adapter Express使用Scalable Reliable Datagram(SRD)而不是TCP,試圖將多租戶數(shù)據(jù)中心的許多網(wǎng)絡(luò)路徑變成一種優(yōu)勢而不是限制。
Woo告訴我們,“網(wǎng)絡(luò)基礎(chǔ)設(shè)施確實(shí)阻礙了云計(jì)算HPC的發(fā)展,是個(gè)瓶頸,所以這是超大規(guī)模公司目前真正關(guān)注的東西。”
了解HPC云成本的關(guān)鍵
在云計(jì)算HPC這種情況下,你只需要使用(并為此買單)你需要使用的部分,但你買單的部分可能會(huì)更多一點(diǎn)。雖然有些估計(jì)認(rèn)為云計(jì)算HPC成本比運(yùn)行你自己的基礎(chǔ)設(shè)施高五倍,但如果你使用預(yù)訂實(shí)例或閑置實(shí)例,成本就會(huì)下降到接近另一個(gè)選項(xiàng)。
Costa 表示同意,“雖然云的靈活性有助于最大限度地降低整體成本,但云托管資源的絕對單位成本要高于內(nèi)部部署資源。”這意味著長期運(yùn)行的HPC工作負(fù)載放在內(nèi)部部署資源上可以充分利用資源,所以是有道理的。另一方面,Incredibuild的首席技術(shù)官Dori Exterman認(rèn)為,“不經(jīng)常執(zhí)行的工作負(fù)載需要在小范圍內(nèi)使用大容量的資源,相對于建立一個(gè)內(nèi)部部署環(huán)境,在云中的成本要低得多?!?/p>
HPC云自動(dòng)化平臺Rescale建議,許多組織可以通過使用Rescale基準(zhǔn)來挑選最合適的云硬件,提高性能并減少工作負(fù)載的成本。最適合你的工作負(fù)載的云計(jì)算可能會(huì)迅速改變,但你也可以靈活地轉(zhuǎn)換,前提是你保持對各種選項(xiàng)的關(guān)注。
除非你已經(jīng)實(shí)施了一些收費(fèi)措施或有明確的資源使用政策,否則HPC用戶可能會(huì)認(rèn)為內(nèi)部部署的基礎(chǔ)設(shè)施實(shí)際上是免費(fèi)的,又或者他們可能在估計(jì)工作負(fù)載需要運(yùn)行多長時(shí)間或需要多少實(shí)例時(shí)遇到困難。這些習(xí)慣帶到云HPC上就會(huì)非常昂貴,所以你需要明確的政策和指南,要說明如何為工作負(fù)載做預(yù)算。
云HPC在分流一些較小的HPC任務(wù)時(shí)特別有幫助,這些小任務(wù)通常會(huì)在資源管理隊(duì)列中停留很長時(shí)間,因?yàn)榇笮偷?、長期運(yùn)行的任務(wù)通常占用很多資源,HPC基礎(chǔ)設(shè)施通常被這些任務(wù)霸占。這對利用率和投資回報(bào)率來說是好事,但對等待使用HPC基礎(chǔ)設(shè)施的團(tuán)隊(duì)來說有些無奈:云HPC可以幫助這些團(tuán)隊(duì)定時(shí)完成任務(wù)或運(yùn)行更大、更復(fù)雜的模擬獲得更好的結(jié)果。
如果你采用突發(fā)模式利用云端混合HPC的方法,請制定一個(gè)框架來決定哪些負(fù)載應(yīng)該遷移到云端以及何時(shí)遷移。
例如,Hyperion Research的云應(yīng)用評估工具可以對不同的工作負(fù)載進(jìn)行評分,評估這些工作負(fù)載是否適合在云中運(yùn)行。
考慮數(shù)據(jù)重力和數(shù)據(jù)出口的成本
另外還需要考慮數(shù)據(jù)重力和數(shù)據(jù)出口的成本。如果數(shù)據(jù)是在本地產(chǎn)生的,則需要計(jì)劃如何將數(shù)據(jù)遷移到云中。如果你的HPC任務(wù)產(chǎn)生了數(shù)千兆字節(jié)的數(shù)據(jù),請考慮在云中進(jìn)行后續(xù)處理或分析,如此可以避免支付額外的費(fèi)用才能獲取結(jié)果。Costa指出,“存儲成本可能是云計(jì)算賬單中一個(gè)令人驚訝的重要部分?!?/p>
使用任何云資源都需要良好的成本控制和FinOps工具。這對云計(jì)算HPC來說更加重要,因?yàn)橘~單可能非常大,而選擇基礎(chǔ)設(shè)施方面時(shí)的小小變化可以節(jié)省大量資金。
但云計(jì)算主要不是為了省錢,Woo指出,“云計(jì)算事關(guān)你調(diào)整自己能力的能力、事關(guān)敏捷力、事關(guān)你使用所有這些不同服務(wù)的能力?!笨赡芤馕吨斓孬@得結(jié)果,通過在相同的時(shí)間內(nèi)運(yùn)行更多的模擬獲得更好的結(jié)果,或者只是提高IT團(tuán)隊(duì)和HPC用戶的生產(chǎn)力。
Costa指出,“通常HPC是IP開發(fā)的主要工具,所以HPC不能下線。用了云以后,備份、遷移和區(qū)域故障轉(zhuǎn)移都可以內(nèi)置?!?/p>
云許可證的注意事項(xiàng)
可以使用熟悉的HPC軟件管理云許可證,例如:
- 編譯器、任務(wù)提交工具和調(diào)度器(如Altair PBSPro、SchedMD Slurm、IBM Platform LSF、Altair GridEngine和HT Condor)。
- 管理和監(jiān)控工具
- 操作系統(tǒng)、應(yīng)用程序、消息傳遞和數(shù)學(xué)庫
- 完整的解決方案,如NVIDIA Bright Cluster Manager或云OpenHPC等工具
Magro指出,“HPC用戶(通常是科學(xué)家、工程師、量化師和藝術(shù)家)訪問云HPC系統(tǒng)時(shí)用相同的內(nèi)部部署應(yīng)用程序和界面。”他警告說,“那些依賴較低層物理平臺接口的管理工具(如IPMI、Redfish或vPro)通常與云資源不兼容,除非工具的作者特別啟用了相關(guān)功能?!钡赋?,像Nagios這樣的替代品可以用于云。
FinOps工具在以下領(lǐng)域可能會(huì)令你失望:如果你想管理你已經(jīng)擁有的軟件許可證并想在云中使用這些軟件許可證,而處理企業(yè)內(nèi)部部署許可證的ITAM團(tuán)隊(duì)則往往缺乏云專業(yè)知識。
“自備許可證”可能會(huì)在云HPC中為你省錢,或者你會(huì)發(fā)現(xiàn)你的軟件供應(yīng)商對云有不同的許可模式。她警告說,這是一個(gè)棘手的領(lǐng)域。例如,甲骨文公司以“在他家公共云之外的地方操作變得非常困難而聞名”。
你還需要考慮技能差距?!肮陀靡粋€(gè)了解公共云的人已經(jīng)很難:雇用一個(gè)了解高性能計(jì)算和公共云的人就更難了”。
探索不那么傳統(tǒng)的HPC
但是,云HPC也可以成為在堆棧里向上移動(dòng)一點(diǎn)的機(jī)會(huì)。
諸如谷歌的HPC云工具包一類的云HPC服務(wù)為常見的工作負(fù)載提供了藍(lán)圖,這些工具包的基礎(chǔ)設(shè)施是由Terraform、Ansible和Packer等熟悉的云工具定義的。
模擬是一個(gè)典型的HPC工作負(fù)載,而諸如AWS SimSpace Weaver、西門子Simcenter Cloud HPC(在AWS的即服務(wù)上運(yùn)行傳統(tǒng)的HPC軟件)和微軟的Project AirSim(用于建造、訓(xùn)練和測試自主飛機(jī))一類的云服務(wù)令仿真變得更容易,仿真可以在不直接配置和管理基礎(chǔ)設(shè)施的情況下以足夠的規(guī)模運(yùn)行。
另一個(gè)選擇是用原生云產(chǎn)品來替代或補(bǔ)充HPC,無論是調(diào)用API還是使用容器或無服務(wù)器平臺來分配和協(xié)調(diào)計(jì)算。美國圣地亞哥超級計(jì)算機(jī)中心就是在谷歌Kubernetes引擎中的閑置虛擬機(jī)上使用GPU共享,目的是加快南極的冰立方中微子觀測站光子代碼的運(yùn)行。
對于預(yù)測和高級分析等人工智能工作負(fù)載而言,你可以通過使用預(yù)先建立但可定制的選項(xiàng)(如Azure認(rèn)知服務(wù),包括新的OpenAI模型)調(diào)用API,在沒有HPC基礎(chǔ)設(shè)施的情況下獲得類似水平的洞察力。
紅帽公司首席解決方案架構(gòu)師James Read指出,用于數(shù)據(jù)驅(qū)動(dòng)大規(guī)模決策的人工智能工作負(fù)載具有復(fù)雜的集成需求,通常是與企業(yè)應(yīng)用一起部署,“這促進(jìn)了從傳統(tǒng)裸機(jī)部署到基于容器部署、Kubernetes-編排的混合云平臺的轉(zhuǎn)變,HPC解決方案因而能夠部署在邊緣和云中”。
如果你在用這些云服務(wù)作為現(xiàn)有HPC解決方案的補(bǔ)充手段,那么將這一類的工作負(fù)載遷移到云中可以簡化整合。