新科技速遞
2017年,AWS傑出工程師James Hamilton在Re:invent大會上,預測2016年AWS收購以色列芯片設計初創Annapurna Labs後,可有效改善虛擬平台,加快推出雲服務。
Hamilton大概沒想到Annapurna Labs開發芯片,改變AWS雲端多種運算之餘,還推動了高性能運算(HPC)。
Annapurna Labs開發一連串芯片,其中包括Project Nitro,目標是徹底改變虛擬平台(Hypervisor)技術,以專用ASIC芯片去卸載所有虛擬平台工作和保安,甚至可改變網絡架構,而主機上的運算能力和記憶體,則可完全釋放予用戶使用。
今年Re:invent大會,AWS全球基建副總裁Peter DeSantis介紹Project Nitro成果,包括Nitro控制器實現的HPC。
以往,AWS利用了Xen虛擬平台,以軟件打造ec2虛擬機,再推出不同運算服務( Instance),虛擬化一向以軟件實現,缺點是耗用系統記憶體和運算能力, Nitro將所有虛擬化交托硬件處理,虛擬平台成本更低,速度更快。
硬件化虛擬平台
去年,AWS以Nitro推出c5運算服務,性能比C4提高四分一,直接打造KVM虛擬環境,網絡連接速度達100Gbps,延遲率(Latency)也更低。
AWS再研發新一代高速網絡,ec2虛擬機再推出c5n的Instance,可用記憶體再增加三成,處理模擬運算、數據湖以及通訊密集型應用,運行得更快,c5n甚至可執行叢集(Cluster)為基礎的高性能運算(HPC)。
高速網絡加上低延遲率,c5n可同時連接數以千計Instance,成為單一叢集。HPC已廣泛應用在科研工程上;從化學分子模擬、天氣預測、生物醫學、流體動力學。上述HPC應用,以往多在超級電腦(Supercomputer)運行。
全球的超級電腦愈來愈多,應用更廣。中國的超算就支撐多個關鍵產業的跨越式發展,汽車以模擬設計,耗油量更低,疾病則可尋找快速治療手段等等。
DeSantis說,HPC沒有共通的定義。廣義來說,任何的運算任務,不能單一伺服器執行,須多部伺服器並行合作,就可歸類為HPC。每部伺服器分擔運算一部分工作,不斷互相分享結果,再合作運算出結果,稱之為叢集運算。伺服器之間有緊密合作,對於互連的網絡,帶來傳輸壓力,任何延遲拖慢整體運算,叢集愈大,影響就愈明顯。
「故此運算任務愈大,叢集愈大,網絡性能更關鍵。所謂「超級電腦」,其實就是多部電腦,配合特殊設計的網絡,加上不同處理器;包括CPU、GPU、FPGA等,針對個別運算任務。超級電腦其中一個難題,就是成本極高,耗資千萬美元計,硬件很快過時,用不了數年就面臨淘汰。」
DeSantis說,過去數年,AWS一直致力讓HPC軟件,可在AWS上執行。AWS投資設計和生產交換器,重寫了網絡軟件。
換言之,AWS的網絡從設備至軟件,都是自家所研發,不假外求。AWS網絡技術進入第三代,C5n的Instance網絡速度,比三年前快了十倍,運算能力則只快了三倍,同一處理器所獲頻寬大增了三倍。
這還不止,伺服器之間網絡高速互通,稱之為Placement Group Network。AWS也提供了API分配HPC,參與運算叢集的伺服器,整合至同一Placement Group Network,供獨立應用。同一叢集內,Placement Group Network頻寬可達10,600Tbps,足以支援106,000部伺服器,全以100Gbps連接,時延只有7ms。
超級電腦須專用網絡,其中一條件是不以虛擬化網絡技術,以免造成不穩定。AWS的所有ec2實體伺服器內可加入Nitro控制器,承擔所有的虛擬化任務和保安,伺服器所有運算資源,悉數釋放給VM使用,虛擬化不為VM帶來任何負擔,性能就跟裸機(Bare Metal)一樣快。
DeSantis說,AWS安裝性能更佳Nitro控制器,可進一步提昇網絡性能,發揮專用網絡的特性,專門供HPC的叢集使用。為了改善網速,Nitro控制器甚至繞過TCP協定,避免多部機器出現樽勁後的incast效應(TCP因網絡擠雍導致吞吐量崩潰),推出了專供HPC使用的Elastic Fabric Adapter (EFA),數據毌須以TCP協定傳送,甚至不經過作業系統內核,完全由Nitro控制器執行傳送,不耗用處理器資源。
DeSantis說,AWS網絡功能已整合市場上大部分HPC應用和通訊協定,性能非常穩定,以C5n交付的雲運算HPC,也是全球最快的HPC叢集。
助F1設計新賽車
HPC on AWS的其中一項功能,就是可協助縮短運算流體動力學(Computational Fluid Dynamics,CFD)模擬的運算時間,最近協助一級方程式賽車重新設計跑車,大大改善下一代賽車的氣動特性(Wake effect)。賽道上前車的擾流,若一部賽車緊隨前車只有0.5秒距離,尾隨的賽車就會失去了四成的下壓(Downforce),往往無法抓緊地面。
一級方程式賽車技術顧問Rob Smedley說,以往賽車設計,對於尾隨賽車不利,擾流影響太大,FIA賽會更改設計賽車規則。設計下一代賽車的原型,過程包括了三個步驟;先以CFD以一部虛擬汽車,置於虛擬氣流內實驗,然後再正式風洞內實驗,再以真正賽車到場上試駕,一直降低氣動特性影響,只有數個百分點。
不過,CFD須利用超級電腦才能實現。Smedley說,即使以200核心的叢集,CFD計算兩部車在賽道上的氣流要上4天,利用AWS的HPC,運算縮短了CFD模擬時間,只要8小時就完成。
一級方程式CFD利用了1,150個AWS上的處理器核心,模擬賽車上5億5000萬個數據點,賽車的氣動影響,結果修改了賽車設計規則,2021年各 賽隊會按照新規則,設計推出新的車種,賽車手可更緊隨前車,伺機超車。