狂飆的計算機:百萬CPU集群作戰!強悍的超級計算機……
每當新款的智能手機或者家用電腦發布時,人們討論最多的話題總是離不開中央處理器(CPU)的運算性能以及散熱問題。可能我們并不清楚電子設備的CPU內部具體的計算架構,但卻可以真切地感受到CPU運算能力的提升給我們生活、工作帶來的巨大改變。
實際上,小到我們中學時期經常使用的科學計算器,大到現在日常辦公必備的筆記本電腦,這些具備數據處理能力的電子設備都可以統稱為電子計算機。
那么,在經典計算機的基礎上,有沒有更快、更強的計算機呢?
“0”與“1”組成的奇妙世界
當我們每次按下手機按鍵或者電腦鍵盤的時候,這些字符或者信息首先需要被轉化為電子計算機能夠處理的編碼:0或者1的排列組合。
例如,根據ASCII(American Standard Code for Information Interchange,美國信息互換標準代碼)的字符編碼,英文字母K被編碼為“01001011”。而當經過電子計算機CPU的運算處理后,一串0或1編碼的信息又可以轉化成我們認識的字母或者圖片呈現在眼前。
在電子計算機的CPU中,電子晶體管可以作為0或者1進行數值運算的基本單元,此時電子晶體管的通路可以代表數值1,斷路就代表數值0,而當數以百萬計的電子晶體管及其他電子元件通過超大規模集成電路工藝被封裝在一小塊半導體晶片上時,這種具備數據處理能力并且被微型封裝的集成電路一般簡稱為“芯片”。
16核不夠用?那就再多“億”點!
然而,隨著生活和工作中數據處理任務的不斷增加,電子設備上CPU單一核心的運算能力往往很難達到需求,這時候我們可以在CPU上集成多個運算核心,從而保證多個核心可以同時獨立地處理數據任務。
現在常見的商用計算機一般是采用8核CPU,甚至某些用以處理大型計算任務的工作站會擁有16核CPU。
但即使這樣高性能的計算機也難以滿足越來越復雜的計算需求,以我們常見的天氣預報為例,計算機需要將特定區域的大氣層離散成網格進行數值模擬,而如果要達到對未來3天的準確度達到90%以上的氣象預測,則需要高達百億量級的浮點運算,如果普通商用計算機來計算的話,需要耗時至少半個月。
此外,大數據中心支持下的城市智能交通和在線云端計算都需要指數量級的數據處理能力,于是,人們開始著手將高達數百萬的CPU互聯起來協同工作,從而建造能夠并行計算的“超級計算機”。
實際上,“超級計算機”并非單獨一臺擁有超級算力的計算機,而是超級計算機集群的簡稱。
也就是說,超級計算機集群的每個節點都是一臺獨立的計算機,它的“超級”之處在于自己內部存在獨特的節點互聯的結構,這樣就可以同時調度所有節點上的成千上萬顆CPU,并且每顆CPU內一般有幾十個物理核心,從而擁有指數量級的數據處理能力。
但是,“超級計算機”并非全能型選手,它只對可并行運算的算法問題有強大的處理能力,卻無法加速處理串行計算的數據任務,此外,“超級計算機”操作系統的任務調度策略和編譯器的優化也極大影響了自身的性能表現。
這里的串行/并行運算任務可以這樣通俗地理解:一堆土方原本需要1個人用10小時搬運完,同時也可以安排10個人用1小時搬完。
但是,如果遇到需要1個人花10小時挖一口只能容納一人進行作業的井情況,就無法安排10個人在1小時內完成,這就是“超級計算機”也難以高效處理的串行運算任務。
因此,“超級計算機”并不是簡單的CPU和運算核心的堆疊,其加速運算能力不僅僅依靠CPU核心之間的高度協同互聯,還要優化數據處理任務的算法次序來充分調用每一顆CPU的運算潛能。
我們熟知的“神威·太湖之光”超級計算機共有40960顆CPU,并且其峰值的運算速度達到了12.54億億次/秒,并且持續計算的速度達到了9.3億億次/秒。
“神威·太湖之光”超級計算機助力清華大學、北師大以及中科院團隊完成“全球大氣非靜力云分辨模擬”,并實現了全球10公里高分辨率的地球系統數值模擬,這一研究成果進一步增強了我國應對復雜氣象條件下的自然災害監測能力。
目前,“超級計算機”廣泛運用于醫藥研發中的分子動力學模擬,電動汽車中的燃料電池設計,飛行器設計中的氣動外形優化,核聚變領域中的約束裝置邊界穩定性計算,以及原子物理學中的量子力學技術等。
超級計算機,亦有局限
但是,“超級計算機”的建造不僅僅需要數十億元的投入成本,還需要每日高達數十萬元的電費支出。
此外,占據上千立方米的龐大體積以及復雜的水冷散熱系統也限制了“超級計算機”的進一步發展。于是,人們開始重新思考如何讓計算機在更小的體積和更低的功耗下實現更強的數據運算能力。
一個自然的想法是在同一塊芯片上集成更多的晶體管,曾經作為英特爾創始人之一的戈登·摩爾就提出“摩爾定律”,即集成電路上的晶體管數目每經過18~24個月便會增加一倍,這樣CPU的數據處理能力就會翻一番。
這就是為什么,即使我們現在千元價位的手機CPU也比十年前的商用電腦擁有更強的運算能力——因為晶體管密度增加了呀。
但是,“摩爾定律”并不能永遠維持下去,原因之一是用于芯片微電路加工的光刻工藝已經逼近2~3nm的光學衍射極限,已經很難在保證芯片良品率的條件下進一步提高晶體管密度。
此外,隨著晶體管尺寸的不斷減小,電極間的漏電現象以及巨大的散熱問題,也會導致芯片的性能失效。
面對這樣的困境,難道說,我們的計算機技術發展到此就進入瓶頸了嗎?別著急,在下篇文章中筆者自然會為大家揭曉答案。