阿里雲超算戰紀

阿里雲超算戰紀

撰文| 盧曉明

圖源| 受訪者及unsplash


楔子

今人不見古時月,今月曾經照古人。

人生代代無窮,月下始終有一批批匠人、學者、工程師,舉頭而思,低頭而作,奮鬥無窮。

他們不是軍人,卻搏殺在沒有硝煙的戰場;他們亦非偉人,引致的鉅變絕不遜於革命。

第一次工業革命,蒸汽機取代了馬力;第二次工業革命,電力普惠全世界;第三次工業革命,算力成為信息時代的新能源。

唯有技術,才能扣動人類進步的扳機。

正文

“你,我認識。阿里,是個電商公司,賣東西的,怎麼做好發動機?”

2017年春,剛成為阿里雲高性能計算負責人的何萬青博士,去拜訪一家重工業製造商,聽到了這麼一句話。面前的“潛在客戶”,是他的朋友。

何萬青心裡很難受,卻啞口無言。

其實,曾經的他也如此認為。

高性能計算(High Performance Computing),又稱超級計算或超算(Super Computing),是位於金字塔頂的高精尖技術,能支持核物理、飛機制造和石油勘探等命脈行業,需要用最強悍的芯片、最高速的網絡。

雲計算誕生10年有餘,才可全面支撐電商、遊戲等互聯網應用;但大型工業仿真等高性能計算領域,鮮有上雲。

究竟行不行?

阿里雲用了三年時間來回答。

三年後,阿里雲與上汽集團、吉利集團等共同創造了國內最大規模的汽車仿真公共雲平臺。

三年前何萬青去拜訪的那家重工業製造商成為阿里雲的客戶,而且是業內標杆項目。

“我知道願意做這事,能做成這事的,就是阿里雲。”何萬青說。

01 試錯

回到2015年,5K紀念碑已然立成(5K,阿里雲“飛天”集群正式運營服務器規模達到5000臺),阿里雲迎來歷史高光時刻。

彼時,人工智能尚未興於業界,阿里內部已嘗試引入GPU優化業務性能。後來,該團隊併入阿里雲,相應技術要對外輸出。這堆數量龐大的GPU物理機產品化後,名曰HPC 1.0/高性能計算。

HPC 1.0的試水,讓阿里雲2016年收穫了汽車仿真、渲染等多位傳統行業客戶。

其中一個重要客戶是吉利。阿里雲嚴格按照合同,單獨為吉利在杭州青山湖開設機房,採用高主頻計算服務器、專用高速網絡InfiniBand(簡稱IB)、Lustre並行文件存儲系統。計算、存儲、網絡,無一不是正正經經的高性能計算。

客戶很滿意,但阿里雲工程師卻一撥又一撥地離職。

HPC 1.0是個孤島,本質上是物理機租賃,與阿里雲“飛天”系統並不相融。

歷史上,科學家們發明了“集群”來處理這些大算力場景,也就是把很多機器連起來,當成一臺機器使,有人管這叫“堆機器”。

高性能計算集群,與一般的集群可不一樣。

既然是一支悍軍,單兵自然要求以一敵百,亦即單臺機器性能要高。而云服務器基於虛擬技術,具備彈性的同時,也消耗了一部分CPU來做虛擬化。單臺性能隨之下降,進而整支軍隊戰鬥力下降。代價太大,不划算。

問題來了:汽車仿真的項目制帶來算力需求波動,且傳統機房運維壓力太大,上雲就能享受按量使用的彈性和自動化運維的便捷。超算卻上不了雲,只能用物理機,無法與阿里雲“飛天”系統打通和統一管控,也就不能享受雲的便捷和彈性。

雲服務器,裝機時選取鏡像即可秒級啟動;物理機則需要逐一安裝系統與配置。虛擬機可以一鍵遷移,宕機了都不影響上層業務;但物理機則不然,需要快速奔赴現場,人肉運維、排查,甚至重啟。

HPC 1.0 沒法像雲服務一樣自動化運維。團隊成員都紛紛棄療——看著同事在追逐飛天夢,自己則做著傳統IT。這不是他們想要的未來。

這也不是阿里雲想要的未來,更不是製造業的未來。

人肉超算,此路不通。

那,高性能計算還做嗎?

做,但必須上雲。

02 覓將

2016年秋,時任阿里雲虛擬化技術負責人張獻濤,接手高性能計算團隊。

阿里雲超算戰紀

張獻濤

“雲計算有非常強的算力,我們更多服務的是互聯網等新興場景,當時還沒有AI,所以對算力需求最大的就是高性能計算。讓雲通過一定的改造,能承接高性能計算場景的需求,這是我們應該具備的能力。”思前想後,張獻濤堅信雲上高性能計算還是要做。

然而,超算不適合在虛擬機上運行,物理機又與雲不相融。他已籌劃打造一件秘密武器,化解這個矛盾。

空前之戰,必是苦戰,團隊中尚缺一名久經沙場的技術大將。可扳指算來,超算人才本就鳳毛麟角,去哪裡尋覓這麼一個牛人?

真是踏破鐵鞋無覓處,得來全不費工夫,當張獻濤正琢磨此事,聽聞圈內名將何萬青有意投身雲計算。他當即飛去北京。

何萬青,何許人也?

阿里雲超算戰紀

何萬青

高性能計算領域技術大拿,曾在英特爾中國領導高性能計算應用優化和MIC眾核、Lustre並行存儲產品支持等業務達11年多,也是天河2號超級計算機核心團隊成員,負責英特爾Xeon Phi眾核協處理器的主板集成;2015年底加入奇虎360雲公司擔任CTO;360戰略轉型後又應邀加入一家知名IT企業擔任超算架構師。

見到何萬青,張獻濤一挑眉,開門見山:“高性能計算上雲這事,你怎麼看?”

何萬青,圈內人稱何老師。一聽就知他有多能講,處處皆是他的三尺講堂。

“超算上雲早就有人提出,但是並不經濟。”他講到超算對計算、存儲、網絡的高要求,又講到互聯網公司的硬件配置不高,兩者之間存在難以彌合的硬件差距。一不小心,何萬青又流露出了高精尖的超算圈對互聯網圈的鄙視。

聽話聽音,別看他咄咄逼人,實則與張獻濤不謀而合。

彼時,何萬青供職的企業在超算產業鏈上屬OEM廠商,入職後,他很快就發覺,利用通用硬件組裝高性能服務器,還不如自己原來做處理器對行業貢獻大。

他遂起了念頭,是否要去雲計算行業,創造下一個時代。

雲超算,他早就想做。只是超算向來是一個不賺錢的行業,除了芯片與軟件廠商,其他環節都很難盈利。超算上雲成本難題解決不了,超算上的應用又不多。簡單說來,技術上有坑,商業上要鋪路,所以國內沒有云廠商願意做超算。

沒承想阿里雲主動找他,說要做雲超算,他等此日久矣。

那時,阿里雲已聲名鵲起,飛天“5K”功成,篳路藍縷死磕雲計算的故事在江湖傳頌。創業路上被虐過的何萬青深知,這種死磕和堅持,在雲超算路上也少不了。

如果真的要做雲超算,阿里雲可能是最合適的。

張獻濤和何萬青一聊就是一下午。一拍即合。

大將披甲,大戰在即。

03 出征

2017年年初,何萬青正式加入阿里雲,擔任高性能計算負責人。

他有不少老朋友是超算業內人士,聽到阿里雲要做雲超算,認為雲廠商不可能成為超算主力,最多不過是現有超算的補充,應急而已。

這種觀點並非全無道理。如前所及,超算有著極高的硬件要求,而云計算用的都是通用硬件。

“咱有這種覺悟,有的是耐心,沒有條件差距,找我來幹嘛呀?”許久未下場打仗的何萬青,準備好打一場酣暢淋漓的仗。

三軍作戰,須有方略。

何萬青與張獻濤一致認為,雲超算眼前似乎不現實,但云的服務模式是趨勢:

l 彈性便捷:藥物研發、工業仿真、渲染等超算場景,大多是項目制,有時需要排隊,有時可能供過於求,上雲了可以隨需隨用,還能自動化運維。

l 門檻低:原來自建數據中心或物理機租賃,初始成本太高,讓高性能計算遙不可及,雲能降低門檻。

l 易用:研究人員要學習很多關於超算的調度、部署等知識,明明只是個藥學家,想研究藥物分子運動,卻要先學一大堆IT知識,雲則可以直接集成最上層的軟件給用戶直接用。

第一戰,產品研發。

雲超算,上層要有自動調度底層算力資源,以及支撐整個雲上並行計算的運行環境,名為E-HPC(Elastic High Performance Computing,彈性高性能計算)。下層要有能提供高性能計算的算力底座,便是後來的SCC(Super Computing Cluster,超級計算集群)。

阿里雲超算戰紀

三位雲超算團隊成員

超算上雲待攻克的技術頗多,故兵分四路。

一隊輕騎,開發E-HPC。

兩路友軍,引入網絡與存儲新技術。

部分超算場景,機器間計算相互依賴,一旦通訊太慢,可能就會成為整個集群的性能瓶頸。普通互聯網所用的以太網性能不夠,專用的IB網絡無法與雲虛擬網絡統一管控,阿里雲網絡團隊打算引入基於以太網的高速網絡技術——RoCE網絡(RDMA over Converged Ethernet)。

可以想象,當幾百臺、幾千臺機器在同時瘋狂計算時,對存儲的挑戰也不小。這個倉庫需要源源不斷地輸入數據,並把結果快速存好——每分每秒都在被讀出和寫入資料。阿里雲存儲團隊開始研發並行存儲文件系統CPFS。

還有最難的單機性能問題。

好在,張獻濤旗下的另一個神秘兵團,也就是第四路軍,早已悄悄行動,召喚“神龍”,構築算力底座。

高性能計算之所以在雲上部署不經濟,是因為有約10%的CPU要用於虛擬化,導致性能損耗。假設在線下機房用9萬臺能完成的任務,在雲上可能就需要10萬臺,有約1萬臺機器的算力都“浪費”了。

虛擬化損耗,是雲與超算之間的基本矛盾。

如果能將雲服務器虛擬化損耗降為零,擁有物理機一樣的性能呢?

這個看似不可能的目標,被時任阿里巴巴CTO張建鋒在2016年雙11覆盤會上提出。

那時,作為阿里雲虛擬化技術負責人,張獻濤也一直在思考下一代虛擬化技術。接手HPC 1.0時屢經試錯,他更加堅定了這個方向。

時任阿里雲IaaS研發負責人李津跟張獻濤連夜腦暴,制定出軟硬協同的方案,名為“神龍”。

神秘兵團開始造“神龍”,希望研發出將虛擬化損耗降為零的架構。

歷時一年,“神龍”鑄成。

2017年,阿里雲自研第一代神龍X-Dragon架構發佈,基於神龍架構的彈性裸金屬服務器隨之面世——擁有物理機的性能,使用體驗卻與雲服務器無異,與飛天無縫連接。

阿里雲超算戰紀

橫亙在“雲超算”路上的虛擬化難題,就此破局。

彈性裸金屬服務器,加上RDMA高速網絡RoCE,雲上超級計算集群呼之欲出。

如今回想,何萬青尚覺驚險萬分,“若沒有神龍,SCC也做不出來”。

他感嘆,這就是阿里最神奇的地方:目標看似觸不可及,卻總給你希望,咬牙挺住。某天突然發現,吹過的牛都實現了。

第一場仗曙光初現,第二場仗又來了。

04 商用

阿里做雲超算,不是為了秀肌肉,是要給人用的。

李津與何萬青曾有過一次談話。“你們搞超算的,做過天河二號,拿了世界第一,那是登珠穆朗瑪峰。我們要做的是搭一個青藏高原,讓中小企業都能在青藏高原之上成為珠穆朗瑪峰。”

工業製造,乃商用戰場的重鎮。

2017年雲棲大會,阿里雲發佈神龍之後,向上汽集團分享了基於神龍的超級計算集群的進展。

上汽有自建的超算機房,但算力需求波動很大,需要服務商補充波峰時期的算力。他們曾希望用雲計算處理汽車仿真,但測試下來虛擬化性能損失高達60%,只能忍痛放棄。

如今,神龍將虛擬化損耗降為零,恰好解決了上汽的痛點。

產品還沒發佈,就來了一個“內測”的用戶。阿里雲高性能計算團隊甚是驚喜,先在內部用公開數據集和工業仿真軟件跑出初步性能數據,上汽還算滿意。

接下來,就得用上汽真實數據測試了。

SCC商用首站,在上海辦公的黃航被指派為支持工程師,跟CBM(Cloud Business Manager)金雪峰及合作伙伴駐場服務上汽。

黃航家在浦東,需要橫穿上海城到嘉定區,同上汽員工一起上下班;從項目書撰寫、環境搭建、大規模測試,到項目驗收,他至今還記得每個關鍵瞬間。

這個“內測”真的發現了問題。

在測試過程中,某臺服務器存儲性能驟降。汽車仿真場景,每臺機器相互依賴,一臺機器出了問題,便如木桶中的短板,拉低了整個集群的性能。

當晚,黃航在上汽辦公室排查到凌晨5點,還是沒能找到原因。此事上報到何萬青和張獻濤,存儲、網絡、神龍等幾個團隊也在馬不停蹄地找尋原因。

上汽很著急。

阿里雲抱著“春節前畢其功於一役”的決心,幾個團隊都派出專家,駐紮上汽辦公室,排查故障。

數日之後,專家們似乎定位到問題所在,偏偏這故障又遲遲不來。

一日,黃航通勤路上,故障復現了!他趕忙在車上啟動電腦,並呼叫後方。瞬間,計算、網絡、存儲、神龍等各路援軍和負責人都齊聚網絡會議室。

車內的黃航突然淚目。POC(Proof of Concept)測試啟動以來,研發團隊中只有他一人在前線面對客戶,頂住壓力。這一通電話讓他發現,其實兄弟們一直在身後。

故障修復,春節後連續兩週,SCC集群正常運行。

黃航鬆了一口氣。交付之後,他持續保持著對上汽的關注,在客戶的授權下,人肉護航了許久。

真刀實槍的公測讓系統邁過了最重要的一道坎兒。此後,SCC開始展現真正實力。

上汽把越來越多的作業都放上來,以致於一週七天,有六天半都是滿負載運行。分明是用行動表示“我很滿意”啊,後來上汽繼續擴容,堅定了在雲上業務創新的決心。

阿里雲超算戰紀

蔣江偉

2018年9月,又是一年雲棲大會,時任阿里雲研發總經理蔣江偉在主題演講中高調闡釋了“雲超算,工業製造和科學計算的新驅動力”,並現場演示了利用阿里雲SCC完成汽車仿真中“空氣動力學性能測試”。

阿里雲超算團隊與有榮焉,聚光燈下,鮮花在前方。

05 大考

阿里雲超算終於迎來成名之戰, 那就是吉利汽車HPC項目。

如果說,上汽乘用車仿真集群上雲是中國汽車行業仿真領域的一個突破,那麼吉利汽車仿真業務的全量上雲則是空前的挑戰。

雲超算未誕生之前,隨著吉利汽車產品競爭力日益提升,市場佔比逐年攀升,吉利仿真業務需求巨大,達數千核,一直使用線下IDC機房。

待到雲超算羽翼已豐,大風起兮,雲可飛揚?

2018年春節後,吉利研究院HPC項目組正在規劃未來三年建設藍圖,以期實現“吉利汽車跑全球”的願景。

同吉利技術交流幾個月後,阿里雲汽車與智能出行行業CBM劉德坤腦海裡時常強迫性冒出“數萬核、所有新車型研發、搞不好影響新車研發週期……如果做傳統HPC方案,阿里雲價值在哪?”

選擇傳統IT建設方案,還是雲上仿真?

劉德坤舉旗難定,目睹小鵬、上汽等SCC早期用戶反饋良好,他最終建議吉利做一次創新性嘗試。

根據服務上汽的經驗,雲超算團隊成員林沐暉用公開的兩車碰撞模型,算出在阿里雲上的用時比在已有集群上要少很多。

這裡插播一下科普,汽車仿真模擬中,除了最底層的基礎設施,還有運行在上面的軟件。汽車仿真軟件按使用時長計費,每年花費往往比硬件還貴。縮短運算時間能同時降低了硬件和軟件的成本。

吉利技術人員已經習慣了線下機房,也用慣了專用IB網絡,對阿里雲測出的性能數據表示懷疑。

劉德坤、金雪峰和林沐暉便帶上網絡與存儲的同事,一次又一次拜訪吉利,逐一解答疑問,如雲上集群的特性、RoCE網絡與IB網絡的區別等。

深入溝通後,吉利對上雲非常感興趣。畢竟誰都不喜歡人肉運維,阿里雲能在硬件宕機前就把虛擬機遷走,業務卻完全無感知。這好比坐著飛機換引擎。爽啊!

一旦吉利上雲,就是國內最大汽車製造仿真公共雲集群。雲計算史記和工業信息化史上定會留下一筆。想想就激動!

茲事體大。

吉利怕。

阿里雲也怕。

從來沒有如此大規模的超算集群部署在公共雲上,一旦出問題,阿里雲就不用在汽車行業混了。

大膽創新,小心驗證。任何創新突破都離不開科學系統的驗證,吉利和阿里雲雙方超級默契提出,組織2-3次系統性驗證測試,

項目寧願不拿,測試一定要做,最壞的測試結果總比車毀人亡的事故現場好。

劉德坤跟研發同事一起緊鑼密鼓地準備這場測試,把風險應對方案都在心裡默唸了好幾遍。

準備妥當後,吉利兩位工程師和業務員帶著裝有專用仿真軟件的電腦來到阿里雲飛天園區。測試進行了整整三天。

雙方都在緊張地等待著結果。

過程驚心動魄,結果石破天驚:最終的性能比線下機房高13%-30%!

阿里雲超算戰紀

團隊正在測試

眾人折服於技術創新帶來的成本紅利:“這是公共雲對傳統HPC集群的勝利。”

意外陡生。

數天後,傍晚7點。

在杭出差的何萬青正準備坐高鐵回京,出租車距離杭州東站還差300米時,他接到了金雪峰的電話:“你在哪?我們已經談判兩天了,談不下來。你馬上來杭州灣,救火!”

寧波杭州灣,吉利總部所在地。

原來,前兩日,阿里雲幾位同事來此準備跟吉利簽約。

吉利極為謹慎,除了技術負責人,商務、財務、法務等部門負責人悉數到場。十幾個人將阿里雲的技術方案、遷移流程及保障措施等,逐一拆解,反覆確認。

這陣仗,必須要何萬青出馬。

何萬青聽罷,掛上電話,讓出租車師傅掉頭直奔寧波。

車過杭州灣跨海大橋時,已是晚上9點。窗外夜涼如水,何萬青心如磐石,志在必得。

次日,何萬青又展示出他“佈道師”的本色,面多眾人,侃侃而談,從技術細節到行業意義。9小時後,協議達成。

接下來就是爭分奪秒的交付。

時值春節,不過阿里雲高性能團隊已經習慣了,他們從來沒有好好歡度過春節。

從1月3日開始,歷經64個不眠夜,到3月1日深夜,劉德坤終於發出最後一封項目交付日報。

種種“不可能”都變為可能。劉德坤說,這是他這輩子都忘不了的項目。“感謝吉利汽車,同鄰錢江,共舉創新,感謝雙方每一個在此項目中參與付出的同路人,哪怕只有一分鐘,感謝為創新的堅持!”

一戰定乾坤!國內最大汽車仿真公共雲集群上線!

此戰過後,阿里雲超算在製造業仿真領域勢不可擋,接連斬獲上汽擴容等項目。

後記

2020年春節,阿里雲超算團隊又迎來一個無眠的春節。

新冠肺炎爆發,眾多機構與病毒賽跑,用最先進的技術與算力加快藥物研發。超算算力成為“急需品”。

1月29日,阿里雲總裁張建鋒宣佈:對全球開放高性能AI計算算力,支持各大醫療機構抗擊疫情。

渲染、氣象、芯片仿真、石油、製藥……阿里雲超算服務越來越多的行業。

阿里雲超算,從零開始,今天業界領先。

將鏡頭拉遠,阿里雲不過在人類雄心勃勃的巴別塔上,又添上了一塊磚。

千年前,砂糖乃權貴禁臠;百年前,電燈能羨煞百姓;數十年前,超算資源是奢侈品。

上世紀,中國人重金買回超級計算機,只得隔著玻璃房子看美國工程師操作;近十年,天河二號、太湖之光等中國超算拿下了世界第一,大型國企用上了超算,但仍供不應求。

如今,雲超算飛入尋常百姓家。

高性能計算是創新的燃料。何萬青相信,通過阿里雲超算的普惠,超算會讓人類的生活更美好。

盛世繁華無不起於荒蕪,全賴無數人在耕耘、搬磚、敲代碼。驀然回首,才驚歎世界已變。

1. 《超算簡史:練飛天之技,登峰一戰後,終有落地日》

2.《阿里雲超算揭秘:虛擬機的心臟,物理機的肌肉》

3.《黑科技揭秘:如何通過阿里雲超算,使得汽車仿真效率提升25%》

4.《異構計算與高性能計算,是打開未來的兩把鑰匙》



分享到:


相關文章: