HPC計算超人:大塊頭有大麻煩
如果我們把PC比作普通人的話,那么HPC系統(或稱超級計算機)就稱得上是“超人”了,因為就算是比較尋常的HPC系統,其計算能力也相當于PC的數千倍了。而頂級的HPC系統,例如風行歐美的IBM“藍色基因”系列,又如國產的“曙光機”、“浪潮機”、“聯想機”或“神威機”等,其能力更是不可限量!也因為所此,它們才能擔負起解決大型和復雜問題的重任。
不過,就像科幻電影中的超人遇到“氪”物質就會氣力盡失,或時常為愛情和親情的問題及敵人發起的輿論攻擊感到困撓一樣。HPC系統這個計算領域的“超人”在其成長過程中,也會遇到各種來自自身或外部的挑戰和障礙,就目前而言,這些讓它煩心的事情主要集中在以下六方面:
HPC麻煩一、有勁使不出,應用效率偏低
全球HPC TOP500也好,中國的TOP100也罷,比的都是HPC系統的潛能,即理論運算峰值速度及Linpack基準測試性能,但它們卻無法反映HPC的實用性能。實際上,對于很多科研院所、高校、企業等HPC應用機構來說,因為軟件、配置、管理等因素導致其HPC系統應用效率低下的例子比比皆是,例如一些用戶HPC系統的硬件規模雖然在不斷擴展,但其實際計算力卻沒有明顯提升,又或是現在擁有幾百個甚至上千個計算核心的HPC集群系統雖然大量涌現出來,但是能充分利用其性能的應用軟件卻是少之又少……結果就是這些用戶雖然買得起HPC,卻用不好它。
HPC麻煩二、系統配置不夠“平衡”
HPC這個計算“超人”的性能,指的可不僅僅是“計算性能”,而是包括CPU浮點處理能力、I/O帶寬和內存帶寬三個方面。不同種類應用對于這三方面性能的需求不盡相同,以石油勘探行業為例,油藏模擬類應用就對內存帶寬和延遲比較敏感,而地震資料處理則需要強大的計算性能。
在這種情況下,如果用戶不能科學地根據其應用軟件的性能需求來合理配置HPC系統,就不免會造成它的“先天失調”,如為通信密集型的應用配置了針對計算密集型應用優化的硬件平臺,就會出現這樣一種情況:節點空有強大的計算力,但由于I/O通信帶寬的限制,造成了數據的堆積,帶來了計算資源的極大浪費。
HPC麻煩三、有“失業”危機,軟硬件發展失衡
別看國產的百萬億次、千萬億次HPC系統在今年頻頻亮相,但它們隨時都面臨著“失業”的風險!
不信?我們來看兩個例子:一個是美國能源部下屬的橡樹嶺國家實驗室的Jaguar TX5千萬億次級HPC系統,它擁有15萬顆CPU內核,其科學計算作業任務安排得很飽滿:可利用其3萬顆以下CPU內核的作業占50%;利用3-4.5萬顆內核的作業占32%,利用4.5-9萬顆內核的作業占18%。相比之下,中國上海超級計算中心的曙光5000A百萬億次HPC系統雖有3萬顆CPU內核,但其應用卻遠沒有跟上——其上使用16顆內核以下的作業占到了60%,17-160個內核的作業占39%,160個內核以上的作業僅占1%。
上面這種應用上的差距主要源于我國HPC應用軟件的缺乏。我們HPC系統的硬件技術雖然在這幾年內得到了長足的發展,但應用軟件的基礎卻一直很薄弱,而且相關的人才、軟件投資和創新研發體制也不夠健全,這使得中國在HPC應用上一直面臨“計算規模受限制,計算精度、分辨率不高,關鍵應用受限制,不易改進和發展”等多方面的挑戰,進而造成了“大機器,小應用,軟硬發展失衡”的困局。
HPC麻煩四、“飯量”太大,能耗驚人
俗話說,人是鐵,飯是鋼,一頓不吃餓得慌。HPC這個計算“超人”也一樣,不過它消耗的是驚人的電能。隨著人們對計算量、計算時間、處理問題的復雜度等要求越來越高,現在HPC系統規模也是越做越大,使用的CPU數量也是以成千上萬的規模遞增,用電量自然水漲船高,這讓那些供養它的企事業單位不堪重負。例如,一套百萬億次級別的HPC系統每天光電費就是兩三萬元人民幣,一年下來就得要好幾百萬!而性能達到千萬億次的HPC系統,消耗的電力更是趕得上一座小型城市。
HPC麻煩五、“瘦身”難、提升計算密度挑戰多
人到中年難免有發福的困擾,HPC系統也是一樣,這個計算“超人”的身材很容易走形,特別是對于百萬億次以上的系統,如果還用傳統1U或2U機架服務器來做節點,其體積會非常驚人,會讓那些機房較小的用戶叫苦不迭。而且這些節點的“屁股”上再帶上一大堆線纜,不好看,也不容易管理。于是,人們開始嘗試用刀片服務器或改良過的高密度服務器(如1機兩主板的雙胞胎服務器)來構建大規模HPC系統。可這種方式也帶來了一些新的挑戰,比如機房環境,尤其是機柜供電與機房散熱必須要改造,還有刀片服務器沒有統一標準的問題,也著實讓人頭痛。
HPC麻煩六、生產廠家各行其是、缺乏統一標準
現在能制造HPC系統的廠商有很多,既有IBM、HP、戴爾、Sun這樣的海外大鱷,也有曙光、浪潮、聯想、寶德等民族企業,還有一些規模不大的地方軍,甚至有些系統是由用戶“DIY”出來的。如果它們是用x86機架服務器來做,情況還算好,畢竟這種產品有統一的標準,兼容與互操作沒有大問題,配件也容易找到,服務不用愁;但如果是用刀片服務器來構建,其標準不統一的問題可就會引出大麻煩了。
與傳統的機架服務器不同,刀片服務器誕生至今雖也有十年光景,但卻一直沒有一個統一標準,僅刀片服務器機箱就曾出現過五六十種不同的產品,現在還有十幾種在市場上互掐,刀片服務器本身更是各行其道,相互之間別說可替代,連實現互操作都有困難,甚至有些廠家最新發布的刀片服務器都不兼容它以前推出的刀片機箱。顯然,對于HPC系統用戶來說,這種情況只會讓它遭遇容易被一家廠商綁定、相關配件不好買、服務費用過高、平臺切換代價太大,以及來自不同廠商的平臺在HPC系統中只能獨立運行,形不成合力等問題。
結語
上面列舉的這六件煩心事,是目前絕大多數HPC系統用戶都會遇到的“通病”。不解決掉它們,就會讓HPC系統束手束腳,甚至使它在無奈之中甘于平庸,那么這個計算“超人”也就沒有什么“過人”之處了。而為避免這種情況的出現,無論是HPC系統的用戶,還是這些系統的制造商、處理器和計算平臺提供商,以及應用軟件開發商都必須找出這些問題的成因,才能有針對性地提出解決方案。
【編輯推薦】
























