3D科學(xué)計(jì)算:革新傳統(tǒng)科學(xué)計(jì)算的高效計(jì)算結(jié)構(gòu)
1983年,學(xué)計(jì)新傳學(xué)計(jì)以著名數(shù)學(xué)家Lax為首的算革算調(diào)研小組撰寫(xiě)報(bào)告指出:“大型科學(xué)計(jì)算具有關(guān)系到國(guó)家安全、科技進(jìn)步與經(jīng)濟(jì)發(fā)展的統(tǒng)科特殊重要性,是高效現(xiàn)代科學(xué)技術(shù)的關(guān)鍵部門(mén)。 從美國(guó)的計(jì)算結(jié)構(gòu)國(guó)家利益出發(fā),大型計(jì)算的學(xué)計(jì)新傳學(xué)計(jì)絕對(duì)優(yōu)勢(shì)不容動(dòng)搖” 。
圖片來(lái)源于網(wǎng)絡(luò)
什么是算革算科學(xué)計(jì)算? 它為何在上世紀(jì)80年代就被上升到美國(guó)國(guó)家利益層面提出?
科學(xué)計(jì)算是指利用計(jì)算機(jī)再現(xiàn)、預(yù)測(cè)和發(fā)現(xiàn)客觀(guān)世界運(yùn)動(dòng)規(guī)律和演化特性的統(tǒng)科全過(guò)程,包括建立物理模型,高效研究計(jì)算方法,計(jì)算結(jié)構(gòu)設(shè)計(jì)并行算法,學(xué)計(jì)新傳學(xué)計(jì)研制應(yīng)用程序,算革算開(kāi)展模擬計(jì)算和分析計(jì)算結(jié)果等過(guò)程。統(tǒng)科科學(xué)計(jì)算的高效興起被認(rèn)為是20世紀(jì)最重要的科學(xué)進(jìn)步之一,著名計(jì)算物理學(xué)家、計(jì)算結(jié)構(gòu)諾貝爾獎(jiǎng)獲得者肯尼斯·威爾遜教授早在80年代就指出,計(jì)算是與理論和實(shí)驗(yàn)并列的三大科學(xué)方法之一。
科學(xué)計(jì)算之所以在20世紀(jì)80年代便上升為美國(guó)國(guó)家層面的戰(zhàn)略議題,是因?yàn)樗黄屏藗鹘y(tǒng)實(shí)驗(yàn)和理論研究的界限,極大提升了人類(lèi)對(duì)自然界和社會(huì)系統(tǒng)的洞察深度,其在諸如生命科學(xué)、醫(yī)學(xué)、經(jīng)濟(jì)學(xué)等學(xué)科中的角色愈發(fā)關(guān)鍵,成為氣象預(yù)報(bào)、能源勘探、航空航天、交通規(guī)劃、制造業(yè)及水利工程等眾多關(guān)鍵行業(yè)的核心技術(shù)支撐。
而科學(xué)計(jì)算之所以不可或缺,是因?yàn)樵谠S多情況下,直接實(shí)驗(yàn)要么不可能(如研究墨西哥暖流的長(zhǎng)期演變、溫室效應(yīng)的全球影響、龍卷風(fēng)形成機(jī)制),要么不切實(shí)際(如核設(shè)施安全性測(cè)試、核武器效應(yīng)評(píng)估、污染物擴(kuò)散模擬),要么成本高昂(如飛行器的頻繁設(shè)計(jì)迭代、車(chē)輛碰撞試驗(yàn)、生物大分子的結(jié)構(gòu)解析)??茖W(xué)計(jì)算的介入,則填補(bǔ)了這些科研與工程實(shí)踐中的空白。
科學(xué)計(jì)算與高性能計(jì)算機(jī)發(fā)展亟待突破的瓶頸問(wèn)題
對(duì)于科學(xué)計(jì)算來(lái)說(shuō),計(jì)算機(jī)是最重要的硬件基礎(chǔ)。但隨著科學(xué)計(jì)算所需要解決的問(wèn)題越來(lái)越復(fù)雜、越來(lái)越接近真實(shí)的模型,其所需要的計(jì)算資源是普通的計(jì)算機(jī)無(wú)法承擔(dān)的天文數(shù)字,因此只能依靠專(zhuān)門(mén)的高性能計(jì)算機(jī)。
高性能計(jì)算機(jī)(HPC)是運(yùn)算速度極快、存儲(chǔ)容量極大、通信帶寬極高的一類(lèi)計(jì)算機(jī)的統(tǒng)稱(chēng),往往也被稱(chēng)作超級(jí)計(jì)算機(jī)(超算)。通常來(lái)說(shuō),高性能計(jì)算機(jī)是通過(guò)高速網(wǎng)絡(luò)把大量計(jì)算機(jī)組織連接成一個(gè)大規(guī)模并行計(jì)算的集群,如果將一臺(tái)電腦比作一個(gè)人腦,那么高性能計(jì)算集群就是許多人腦連接成矩陣的“超級(jí)大腦”。相較于普通計(jì)算機(jī),高性能計(jì)算集群的運(yùn)算速度能夠達(dá)到令人難以想象的程度。目前全球超級(jí)計(jì)算機(jī)TOP500的榜首是浮點(diǎn)運(yùn)算速度峰值達(dá)到每秒100億億次的的超級(jí)計(jì)算機(jī)“前沿”,這一速度相當(dāng)于大約10億臺(tái)當(dāng)前主流筆記本電腦同時(shí)工作的處理能力總和。
這樣恐怖性能的高性能計(jì)算機(jī),想必已經(jīng)完全足夠支撐科學(xué)計(jì)算對(duì)于計(jì)算機(jī)的性能要求了吧?遺憾的是,不僅不夠,甚至可能還遠(yuǎn)遠(yuǎn)不夠。
主要原因之一是現(xiàn)有的大規(guī)模并行計(jì)算程序的效率太過(guò)低下。上文介紹到,最強(qiáng)超級(jí)計(jì)算機(jī)“前沿”的每秒浮點(diǎn)運(yùn)算速度峰值超過(guò)100億億次,但是這個(gè)性能其實(shí)是假設(shè)“前沿”計(jì)算集群里的每一個(gè)計(jì)算節(jié)點(diǎn)都在無(wú)條件地全速運(yùn)算而得到的理論性能峰值,實(shí)際執(zhí)行程序時(shí)不可能達(dá)到這樣的理想狀態(tài),一定存在大量空閑的計(jì)算節(jié)點(diǎn)需要等待數(shù)據(jù)的訪(fǎng)存?zhèn)鬏?。一般?lái)說(shuō),超算上未優(yōu)化過(guò)的程序的實(shí)際計(jì)算性能都在理論峰值性能的10%以下。
因此,如何針對(duì)應(yīng)用程序改進(jìn)算法和數(shù)據(jù)結(jié)構(gòu),對(duì)程序進(jìn)行性能優(yōu)化,提高實(shí)際浮點(diǎn)性能,是科學(xué)計(jì)算最關(guān)心的問(wèn)題之一,但這往往意味著較高的難度和極大的研制成本及周期。被譽(yù)為超算界諾貝爾獎(jiǎng)的Gordon Bell獎(jiǎng)會(huì)定期頒給代表相關(guān)領(lǐng)域應(yīng)用程序最高性能的一些優(yōu)化程序,而能夠獲獎(jiǎng)的程序的計(jì)算效率一般也都只能優(yōu)化至10%-50%的區(qū)間,例如,用于模擬包含1萬(wàn)億個(gè)粒子的激光等離子相互作用模型的VPIC程序憑借25%的計(jì)算效率獲得了08年度的Gordon Bell獎(jiǎng),由此可見(jiàn)對(duì)于程序計(jì)算效率的優(yōu)化提升是多么困難的工作。
而另一方面,科學(xué)計(jì)算對(duì)于高性能計(jì)算的迫切需求卻還在不斷增長(zhǎng),現(xiàn)有的計(jì)算架構(gòu)在處理大規(guī)模并行運(yùn)算和高帶寬數(shù)據(jù)傳輸方面顯現(xiàn)出的局限越來(lái)越突出,這些挑戰(zhàn)呼喚著計(jì)算技術(shù)的新一輪革新。北京大學(xué)數(shù)學(xué)科學(xué)學(xué)院湯華中教授曾談到,“采用新的計(jì)算結(jié)構(gòu),充分發(fā)揮現(xiàn)有硬件設(shè)備的效能,是發(fā)展科學(xué)計(jì)算的一個(gè)新方法。”
3D科學(xué)計(jì)算為科學(xué)計(jì)算領(lǐng)域帶來(lái)計(jì)算效率的革命
近年來(lái),有一類(lèi)被稱(chēng)為“3D科學(xué)計(jì)算”的計(jì)算架構(gòu)理念逐漸興起,在解決科學(xué)計(jì)算場(chǎng)景的效率瓶頸難題方面展現(xiàn)出巨大的潛力。實(shí)際上,科學(xué)計(jì)算里占比最大和最難解決的問(wèn)題往往都可以抽象成對(duì)真實(shí)世界的模擬仿真問(wèn)題,比如在生命科學(xué)領(lǐng)域,科學(xué)計(jì)算實(shí)際上是要在計(jì)算機(jī)里模擬蛋白質(zhì)與蛋白質(zhì)/小分子在三維空間里相互作用的過(guò)程,為此需要在計(jì)算機(jī)里建立每一個(gè)原子的三維空間坐標(biāo),根據(jù)復(fù)雜的物理公式計(jì)算每一個(gè)瞬間每個(gè)原子坐標(biāo)的位置變化,這個(gè)問(wèn)題發(fā)生的空間尺度毫無(wú)疑問(wèn)是一個(gè)3D的三維空間。
但是,傳統(tǒng)高性能計(jì)算系統(tǒng)的架構(gòu)往往是二維的,服務(wù)器和服務(wù)器之間兩兩通過(guò)交換機(jī)或路由器線(xiàn)性相連,這樣的二維計(jì)算架構(gòu)在處理三維空間問(wèn)題時(shí),天然會(huì)產(chǎn)生節(jié)點(diǎn)間大量額外的通信工作量,極大增加計(jì)算的復(fù)雜程度。如果我們能夠直接按照真實(shí)世界的三維模型來(lái)還原一個(gè)龐大計(jì)算集群中節(jié)點(diǎn)與節(jié)點(diǎn)的連接方式,就能從最基本的計(jì)算通信需求量上降低我們需要求解的三維科學(xué)計(jì)算仿真問(wèn)題的復(fù)雜度,這就是3D科學(xué)計(jì)算的基礎(chǔ)思想。
為了幫助大家形象地理解這個(gè)抽象的概念,我們嘗試建立這個(gè)復(fù)雜問(wèn)題的簡(jiǎn)單近似模型:假設(shè)我們要在一個(gè)由5臺(tái)電腦組成的計(jì)算集群上構(gòu)建一個(gè)甲烷分子(CH4)的運(yùn)動(dòng)模型,每臺(tái)電腦都只負(fù)責(zé)存儲(chǔ)和計(jì)算甲烷中1個(gè)原子的位置信息,并且對(duì)于每臺(tái)電腦來(lái)說(shuō),為了計(jì)算出下一個(gè)瞬間自己負(fù)責(zé)記錄的原子的更新位置,都需要拿到其余4個(gè)原子的位置信息,來(lái)作為位置更新公式的計(jì)算參數(shù)。我們可以分別考察在二維和三維的架構(gòu)連接方式下,解決上述問(wèn)題分別需要的通信的距離長(zhǎng)度(每?jī)膳_(tái)相鄰的電腦之間的距離視作為1個(gè)單位距離)。
如下圖所示,如果這5臺(tái)電腦使用二維的線(xiàn)性連接方式連成一條長(zhǎng)龍,那么最左邊的電腦把數(shù)據(jù)傳給最右邊的電腦需要經(jīng)過(guò)中間的3臺(tái)電腦,為了讓所有電腦都獲取一遍其它4臺(tái)電腦的信息,總體需要發(fā)生的數(shù)據(jù)通信的單位距離是40;而如果這5臺(tái)電腦仿照甲烷分子的三維空間結(jié)構(gòu),采用三維的方式進(jìn)行連接,那么總體需要的通信距離是32,在其它所有條件都不變的情況下,比二維連接的方案提升了20%的效率。
如果是比甲烷更加復(fù)雜一點(diǎn)的乙烷分子,那么三維連接架構(gòu)相比二維連接架構(gòu)的性能優(yōu)化提升幅度更是直接達(dá)到了42%,隨著問(wèn)題尺度的不斷復(fù)雜化,兩者的性能差距還將拉開(kāi)更大。真實(shí)世界的一個(gè)蛋白質(zhì)大分子動(dòng)輒都是由幾十萬(wàn)到上百萬(wàn)原子構(gòu)成的,在這樣的復(fù)雜尺度上,二維連接架構(gòu)產(chǎn)生的冗余通信需求甚至可以達(dá)到10的12次方以上的數(shù)量級(jí),換言之,3D科學(xué)計(jì)算的架構(gòu)處理同樣問(wèn)題將天然減少動(dòng)輒幾萬(wàn)億次的通信傳輸需求,在性能提升方面具有不可動(dòng)搖的絕對(duì)優(yōu)勢(shì)。
可以說(shuō),3D科學(xué)計(jì)算帶來(lái)了一次計(jì)算架構(gòu)領(lǐng)域的革新,不僅在于硬件效能的充分利用,更在于通信效率與算法效率的顯著提升。3D布局通過(guò)在空間維度上的服務(wù)器分布,不僅縮減了物理距離,有效縮短了數(shù)據(jù)傳輸路徑,減少了延遲,而且通過(guò)多層級(jí)網(wǎng)絡(luò)設(shè)計(jì)分散流量,有效緩解了單點(diǎn)壓力,提升了數(shù)據(jù)傳輸?shù)牧鲿承浴?/p>
不過(guò),3D科學(xué)計(jì)算的實(shí)現(xiàn)當(dāng)然也不會(huì)那么簡(jiǎn)單。由于芯片節(jié)點(diǎn)之間的連接方式完全被顛覆,為了支撐這套全新架構(gòu)下的計(jì)算,從芯片本身的設(shè)計(jì)、到適配這套系統(tǒng)的軟件都需要重新開(kāi)發(fā)定義。目前用于實(shí)現(xiàn)3D科學(xué)計(jì)算的計(jì)算系統(tǒng)往往采用會(huì)專(zhuān)門(mén)定制的ASIC專(zhuān)用芯片,這類(lèi)芯片無(wú)法像CPU、GPU一樣高度靈活地支持運(yùn)行絕大多數(shù)算法和軟件,但正因?yàn)锳SIC芯片不需要考慮通用性,才可以100%將電路上的面積用于提升特定算法的極致性能。采用ASIC芯片建成的高性能計(jì)算機(jī)也被稱(chēng)為專(zhuān)用超級(jí)計(jì)算機(jī),區(qū)別于通用的超級(jí)計(jì)算機(jī),它們?cè)谔囟I(lǐng)域可以發(fā)揮出遠(yuǎn)超最強(qiáng)超算百倍以上的性能,代價(jià)是每臺(tái)專(zhuān)用超算都需要針對(duì)單一特定領(lǐng)域?qū)iT(mén)設(shè)計(jì),最終也只能解決那一個(gè)領(lǐng)域的問(wèn)題。
顛覆世界生物計(jì)算范式的3D科學(xué)計(jì)算機(jī)——安騰超級(jí)計(jì)算機(jī)(Anton)
由于目前3D科學(xué)計(jì)算的實(shí)現(xiàn)需要依賴(lài)專(zhuān)用超算來(lái)實(shí)現(xiàn),其研發(fā)設(shè)計(jì)的難度和成本投入都非常巨大。不過(guò),美國(guó)的一位“瘋狂科學(xué)家”David E. Shaw博士不按常理出牌地重金打造了一臺(tái)專(zhuān)用于生物計(jì)算領(lǐng)域的3D科學(xué)計(jì)算專(zhuān)用超算安騰(Anton),靠一機(jī)之力顛覆了整個(gè)世界關(guān)于生物計(jì)算的認(rèn)知和想象,向世人展現(xiàn)了3D科學(xué)計(jì)算創(chuàng)新架構(gòu)的性能提升所能帶來(lái)的恐怖研究和應(yīng)用價(jià)值。
安騰超級(jí)計(jì)算機(jī)(Anton)是3D科學(xué)計(jì)算理念應(yīng)用的典型代表,它基于3D科學(xué)計(jì)算的理念架構(gòu),讓超級(jí)計(jì)算機(jī)能夠以前所未有的速度和精度模擬蛋白質(zhì)在三維空間中的動(dòng)態(tài)運(yùn)動(dòng),讓生物領(lǐng)域的科學(xué)計(jì)算研究煥發(fā)了新生。
安騰超級(jí)計(jì)算機(jī) | 圖片來(lái)源:網(wǎng)絡(luò)
具體來(lái)說(shuō),在安騰超算問(wèn)世之前,哪怕用全世界性能最強(qiáng)的超算來(lái)模擬生物大分子的運(yùn)動(dòng),一天都只能算出幾十納秒的運(yùn)動(dòng)數(shù)據(jù),可即便是蛋白質(zhì)折疊這樣最基礎(chǔ)的生理現(xiàn)象,都需要數(shù)微秒的時(shí)間才能觀(guān)測(cè)到,這意味著全世界最強(qiáng)的超算都需要至少幾十天才能模擬出一次簡(jiǎn)單的蛋白質(zhì)折疊,而單次的蛋白質(zhì)折疊相較于科學(xué)家想要解決的問(wèn)題體量來(lái)說(shuō),甚至稱(chēng)不上是杯水車(chē)薪。許多科學(xué)家認(rèn)為這樣效率的研究工具對(duì)于解決嚴(yán)肅問(wèn)題根本沒(méi)有太大的意義。不過(guò),第二代的安騰超算一天就可以模擬出近10微秒的結(jié)果,比傳統(tǒng)超算快了2-4個(gè)數(shù)量級(jí),這使得用計(jì)算機(jī)模擬蛋白質(zhì)瞬間成為了一個(gè)比實(shí)驗(yàn)方法效率更高、研究細(xì)粒度更深的研究方法,過(guò)去僅靠實(shí)驗(yàn)方法無(wú)法完成的許多研究設(shè)想一夜之間也具備了可能性。更重要的是,對(duì)于創(chuàng)新藥物研發(fā)來(lái)說(shuō),生物計(jì)算方法的加入更是注入了全新的動(dòng)力?;诎豺v超級(jí)計(jì)算機(jī)的支持,美國(guó)制藥公司Relay大幅縮短了新藥研發(fā)周期,僅用了18個(gè)月、花費(fèi)不到1億美元的成本便成功確定了RLY-4008的結(jié)構(gòu),顛覆了傳統(tǒng)的藥物研發(fā)投入“雙十定律”(即至少需要投入10年、10億美金才能完成一款新藥的研發(fā))。
安騰超算的軟硬件系統(tǒng)架構(gòu)是3D科學(xué)計(jì)算架構(gòu)教科書(shū)級(jí)別的示范。安騰采用了大量的ASIC專(zhuān)用芯片作為其核心組件,并通過(guò)一個(gè)精心設(shè)計(jì)的高速三維環(huán)形網(wǎng)絡(luò)將這些ASIC緊密互聯(lián)。為了提升通訊傳輸效率,整個(gè)安騰的服務(wù)器都被緊密地排放在一個(gè)正方體的機(jī)箱中,這樣使得服務(wù)器節(jié)點(diǎn)間的網(wǎng)絡(luò)互聯(lián)距離縮短,從而降低了通信延遲和提高傳輸可靠性。在連接方式上,安騰采用了Torus(環(huán)面)拓?fù)浣Y(jié)構(gòu)。這意味著,組成集群的正方體機(jī)箱中,每個(gè)計(jì)算節(jié)點(diǎn)不僅與周邊最近的8個(gè)節(jié)點(diǎn)直接相連,還進(jìn)一步與其他按2的倍數(shù)距離(如2、4、8等)的節(jié)點(diǎn)建立了連接。這一特點(diǎn)確保了無(wú)論機(jī)箱邊長(zhǎng)如何,任何兩個(gè)節(jié)點(diǎn)間的通信都可通過(guò)最多不超過(guò)
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。 )