開篇先送兩個黑人問號:

What?超級計算機不是智能計算機?

Really?人工智能不適合用超算?

權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

上邊兩個問題的答案其實都似是而非——事實是,超級計算機正“變成”智能計算機人們也在為人工智能研製專用超算。不過,要弄清楚前因後果,這篇李國傑院士關於智能計算和超算的分析值得一看。

6月27日~29日,此前5屆都在美國召開的世界智能計算機大會(BenchCouncil)今年首次來到中國舉辦。在這次大會上,中國工程院院士、中科院計算所首席科學家、中科曙光董事長李國傑用了半個多小時的時間,以《對智能超級計算機的幾點認識》為題,深入淺出地剖析了“智能計算機”的歷史、現在和未來。

權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

李國傑院士

李院士自1987年回國後帶領團隊一手打造了曙光系列高性能計算機,並創辦曙光公司。今年,他已經76歲了。和75歲的任正非一樣,李老時至今日仍為中國計算機事業殫精竭慮。他經常提到自己寫的一句詩:“我事從來萬般險,自古瓜兒苦後甜。”這給當下的中國很多啟示。​

“智能計算機”是李國傑院士從美國留學回來一直從事的工作,他關於超算和智能計算的分析,專業、權威,面面俱到。聞道有先後,筆者聆訓之後不忍自專,特整理如下,現學現賣,以饗讀者。

精彩提要

“計算機之父”馮•諾伊曼在給“控制論之父”諾伯特·維納的信中說了什麼?

錢學森先生關於計算機的什麼預測竟與歷史發展高度吻合

李國傑院士口中所說的“70年未有之大變局”究竟是什麼?

不賣關子,下面進入正題。

歷史:超算是超算,智能是智能

“智能計算現在很熱,但是從1936年開始這個話題就一直被探討。”“馮•諾伊曼曾試圖模仿神經網絡設計計算機,但是發現這條路走不通。”“錢學森先生對計算機發展之路預測得很準,超算是超算,智能是智能。”

在第三次人工智能浪潮興起之前,超算是超算,智能是智能。

我們通俗說的計算機一般指數字計算機。智能計算則不同,人們一直希望“智能計算機”能像人腦一樣處理信息,這是一種模擬計算。

計算機發展史上,數字計算與模擬神經網絡經歷了分分合合。“計算機之父”馮•諾伊曼曾經試圖模仿神經網絡設計計算機。1946年11月,馮•諾伊曼在給“控制論之父”諾伯特·維納的信中寫道:“我們選擇了太陽底下最複雜的一個對象……向世人展示了一種絕對的且無望的通用性。”

事實上,從第一臺電子計算機開始,計算機的發展就與模擬神經網絡分道揚鑣。此後,集成電路的發明及其後來幾十年在摩爾定律引導下的狂奔,使得用計算機實現人工智能的方式與人腦的思維機制幾乎不沾邊。

20世紀80年代末、90年代初,在野心勃勃的日本第五代計算機項目帶動下,全球掀起一陣“智能計算機熱”。當時的熱點是面向智能語言和知識處理的計算機,研究重點是並行邏輯推理。

日本五代機走的是“定製化路線”。和日本不一樣,我國“智能計算機”研製走的是比較通用的路線:從芯片、系統到軟件、應用,都是“非定製化”。

1990年,國家科委(科技部的前身)批准成立“國家智能計算機研究開發中心”(依託中科院計算所),智能中心不但開展了曙光系列並行計算機的研製,還從事了人工智能的基礎研究和應用研究,為今天智能超算的發展打下了基礎。

當年智能中心的理論研究班吸引了眾多AI方向的年輕學者。中科曙光、科大訊飛、漢王等公司的建立和發展都與智能中心有一定關係。寒武紀芯片的研製則繼承了智能中心算法與系統結構研究相結合的傳統。

錢學森先生曾發表《關於“第五代計算機”的問題》的文章,就智能計算機與超級計算機的發展發表意見。錢老在文章裡說:“第五代計算機是什麼?是第二代巨型計算機。我認為再把這個概念叫做五代計算機或者六代計算機,就不那麼合適了,因為它不是一個計算機了,而是一個智能機,所以建議為了不要混淆起見,就乾脆叫第一代智能機。”


權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

錢老關於第五代計算機的建議。來源:李院士PPT

以此為標誌,所謂的第五代計算機就分成了兩個叉:一個是第二代巨型計算機,一個是第一代智能機——這是兩個不同的概念。

事實證明,歷史的發展與錢老的預測是相符的,從20世紀80年代以後的30年,計算機的發展之路確實符合錢學森的預測,超算是超算,智能是智能。

現在:智能與超算的歷史性會合

“在沒有找到變革性的智能平臺之前,超級計算是研究和應用人工智能必不可少的基礎設施。”“深度學習等智能應用需要算得特別快的計算機,智能與超算近幾年出現了歷史性的匯合。”“人類可能會發明新的智能計算機,但至少最近20年內,智能超算是要高度重視的研究方向。”

超級計算是“算得快”的計算機。但智能計算機和超算不一樣:智能的本意是“算得巧”,而不是“算得快”。這是兩股道上的車。

超級計算機或高性能計算機是指區別於個人電腦(PC)與低檔服務器的計算機。拜最新一期的全球超算TOP500榜單所賜,如今我們可以把世界頂級的超級計算機(高性能計算機)圈定在Pflops 級(千萬億次浮點計算每秒)計算機水平。

本世紀以來,深度神經網絡的成功和大數據的興起,使得超級計算和計算智能(深度學習)走到一起,出現“歷史性的匯合”

這不難理解:以深度學習為標誌的第三波人工智能研究需要極強的計算能力。過去高性能計算機主要用於科學計算,現在的高性能計算機已大量用於大數據和機器學習。

一組數據可以說明這一點:2015年,中國HPC在數據分析與機器學習領域應用只有27%,至2016年達到48%、2017年提升到56%。預計這個比例今後還將繼續提高。

實際上,智能計算機有許多種類,包括雲端(數據中心)智能計算機、智能工作站、人機交互的智能終端和智能物端設備等。今天我們所說的“智能超算”,主要是指雲端的巨型智能計算,也就是“面向智能應用的超級計算機”。

但是也應該看到,目前大量採用的智能計算實際上是基於GPU或GPU-Like加速器的“準智能計算”。比如,圖像和語音的信號處理計算還是數值計算。

也就是說,現在的神經網絡計算仍是數字計算,將來可能用模擬計算——這是智能計算很重要的方向。

智能算法可以加速傳統的科學計算。舉個例子,今年4月,200多名科研人員從四大洲8個觀測點“捕獲”了黑洞的視覺證據。此項研究歷時10餘年,加州理工學院曾經採用Blue Waters超級計算機進行近900個黑洞合併的模擬,花費了2萬小時的計算時間。後來採用新的機器學習程序和算法,從模擬中學習,幫助創建新的模型,在毫秒內就能給出合併結束狀態的答案,大大加速了關於黑洞的研究。

權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

給黑洞“拍照片”使用了機器學習算法。來源:ESO

如今,機器學習不僅是人工智能領域研究的重點,也正成為整個計算機科學研究的熱點。

2018年圖靈獎得主約翰·霍普菲爾德提出,計算機科學的發展可以分三個階段:早期研究主要是開發程度語言、編譯技術、操作系統以及研究支撐它們的數學理論,中期重點是研究算法和數據結構,第三階段的重點已從離散類數學轉到機器學習,機器學習成為計算機科學的核心。


未來:智能超算的十大關注方向

“未來智能計算機的核心特徵:人腦級能效。”“摩爾定律走不通了,以後主要是靠結構改進——這是一個黃金時代。”“未來大多數計算將在專用加速器上完成,而通用處理器將變成配角。”

人類可能會發明新的智能計算機,但至少最近20年內,智能超算是要高度重視的研究方向。關於智能超算的未來研究方向,以下10個方面值得重視。

第一,未來十年是體系結構的黃金時期。

近幾十年計算機的飛速發展一半來自摩爾定律,另一半來自系統結構的改進。摩爾定律即將走到盡頭(集成電路製造的特徵尺寸接近物理極限),計算機未來的改進將主要從結構改進入手。所以說未來十年是“體系結構的黃金時期”。

另外一個角度,就計算機而言,結構越複雜,算法就可以越簡單——人類大腦的結構就非常複雜,因此智能化程度很高。所以,未來人工智能需要的不僅僅是計算能力,還需要更復雜的硬件結構。

圖靈獎得主、計算機體系結構宗師David Patterson 與John Hennessy 預言:“下一個十年將出現一個全新計算機架構的寒武紀大爆發,學術界和工業界計算機架構師將迎來一個激動人心的時代。”機不可失,時不我待。未來十年應該有像IBM 360和RISC一樣重大的體系結構發明,中國學者應該做出不愧於時代的貢獻。

第二,“人腦級能效”將是未來智能計算機的核心特徵。

人腦智能給發展計算機的啟發在於,大腦以20w的功耗實現了10 POPs神經元突觸的操作。從目前的發展來看,超級計算機現在的能效還滿足不了需求。“超算能效增長遠遠低於速度增長”,目前我們面臨計算機發展70年未有之大變局。這給我們提出挑戰,未來超級計算機要達到像人腦一樣的能效層次(POPs/W)。

權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

李院士將當前計算機“能效增長遠低於速度增長”稱為“70年未有之大變局”。來源:李院士PPT

不過,IEEE計算機學會設計自動化專業組主席、美國聖母大學計算機系教授胡曉波最近撰文指出,目前任意一種新器件都不可能解決低功耗問題,需要跨層協同。

胡曉波稱,當前集成電路發展的主要矛盾是:一方面製造的特徵尺寸接近物理極限使得摩爾定律即將終止,另一方面迅速增長的各種智能應用要求集成電路的計算能力更強、能耗更低。

她認為需要從底層的材料器件一直到頂層的算法應用進行整體考慮,開展跨層設計研究與優化;從深度神經網絡加速器頂層架構設計需求入手,逐層分析電路層以及器件層的設計思路和麵臨的挑戰。

第三,要研究具有”低熵”特徵的未來架構。

智能計算機的本事主要體現在對付“不確定性”,而“熵”就是對不確定性的刻畫。要通過全棧的系統設計應對不確定性挑戰,在問題不確定、環境不確定、負載強度不確定的情況下,保障可預期的性能結果。

城市建設、交通、股市等的智能應用,都是一些動態變化、不確定性的對象,這需要從各種各樣的應用中歸納出通用型強的指令系統、微體系結構、執行模型和API界面。適應不確定性負載的系統結構可能是異步執行的結構,也許要從互聯網異步協議中獲得啟發。

第四,要重視研究領域專用系統結構(DSA)以及可重塑處理器(Elastic Processor)。

近幾十年通用處理器一直勝過專用處理器,這一局面正在改變。未來大多數計算將在專用加速器上完成,而通用處理器只是配角。

DSA能實現更高性能和更高能效的原因有四:

1. 它利用了特定領域中更有效的並行形式。

2. 可以更高效地利用內存層次結構。

3. 可以適度使用較低的精度。

4. 受益於以領域特定語言(DSL)編寫的目標程序。

很多加速芯片在一臺計算機中,換一個應用領域切換加速芯片時間太長,就會導致性能下降,因此必須做到實時可重構。加速核的切換應在幾拍時間內完成,我們稱為“可重塑處理器”,這是一個新目標。

可重塑處理器使用“函數指令集”——一種體系結構適應數千種芯片,一款芯片適合上千種應用,功耗可低至0.1W數量級。目前,寒武紀芯片正在朝這個方向努力

第五,要重視智能超算的通用性。

儘管專用化是趨勢,但作為一個智能中心和超算中心,還是要本著為大眾服務的目標儘量匹配更多用戶的需求。

在Summit計算機交付之前,美國能源部已經成立了25個應用軟件研發小組,設計能夠利用E級計算機的軟件。美國E級計算機研製計劃(ECP計劃)是否成功的指標不是Linpack性能,而是這25個應用性能的“幾何平均值”,這意味著其中任何一個應用的性能都不能很差。

在應用牽引上我們應虛心地向美國同行學習。

權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

美國超算Summit

第六,模擬計算值得重視。

傳感器接受的都是模擬信息,人腦處理的也是模擬量,連續變量的模擬計算是非圖靈計算。模擬計算是離散數字計算的前輩,經過60年的變遷,模擬計算可能有機會東山再起,連續變量與離散變量的混合計算將開啟計算新天地。

量子計算是介於連續計算和離散計算之間的計算模式,再進一步就是連續量計算。量子計算可能會比許多人預期的進展速度更快,計算機界目前基本上沒有介入,應鼓勵更多的計算機學者投入到量子計算行列。

圖靈機上不能表示實數(連0.1都不能精確表示)。上世紀80-90年代曾有一些學者研究實數計算,有一系列的成果。離散數據背後有一個連續數學模型,如何在計算機上反映連續的數學模型值得研究。

第七,計算存儲一體化。

人類的大腦計算和存儲不是分開的,不需要數據搬移,所以未來的計算機體系結構可能要改變傳統的把計算和存儲分開的馮•諾依曼結構。

目前實現計算存儲一體化有兩種方法。一種方法是Processing in memory,PIM。在阻變存儲器實現神經網絡計算,在存儲裡做深度學習,功耗可以降低20倍,速度提高50倍。美國加州大學聖塔芭芭拉分校的謝源教授在JUMP項目中承擔一項研究任務(Intelligent memory and storage),就是採用PIM方法。

另一種方法是採用3D堆疊,稱為Memory Rich Processor,就是在處理器周圍堆疊更多的存儲器件。谷歌第二代TPU放上了64G內存,帶寬從第一代的30GB/s提高到600GB/s。

第八,推理驅動與數據驅動可能會交替發展。

目前的智能應用,主要是數據驅動。人工神經網絡屬於開普勒研究模式,而人工智能研究中的推理驅動則是繼承牛頓的演繹推理模式。

1956年的“達特茅斯會議”第一次討論人工智能,會議的經費申請報告中寫的研討會的基礎是“學習以及智能的其他所有特徵的方方面面,原則上都可以精確描述,從而可以製造出仿真它的機器。”這就預設了實現人工智能要走牛頓的技術路線:先精確描述智能。

這可能也是麥卡錫將這一學科命名為“人工智能”而不是“機器智能”的原因。

邱成桐先生的主張也是演繹推理模式。但智能領域也許不存在F = ma這樣簡潔的公式,數據驅動如何轉到推理驅動需要認真探索。

第九,要重視事件驅動計算(Event Based Computing)。

大腦神經元之間的通信是神經脈衝,這是一個異步事件。而第一代和第二代人工神經網絡都是基於神經脈衝的頻率進行編碼,沒有考慮“時間”因素。未來人工神經網絡應考慮“時間”因素,基於事件的信息流(事件驅動計算)可直接反映人腦工作的自然模式,這是一種新的“空間-時間模式”。

上世紀80年代Carver Mead 最先開始這一方向研究。英國的曼徹斯特大學的Steve Furber教授領導的歐盟人類腦計劃(HBP)項目,也在進行事件驅動計算研究。

數據驅動(data-driving)也是一種事件驅動的異步計算,在發展智能超算中應關注數據流計算(data flow computing),特別是數據驅動執行模型。

第十,要建立智能超算新的測試基準。

長期以來,評測超級計算機的性能都採用Linpack測試程序,這是一個求解線性方程組的程序。這個程序的優點是可擴展性特別好,而且,Linpack是CPU密集應用的程序,可以測出幾乎滿負荷、滿功耗下的計算機浮點計算性能。從這個意義上講,Linpack是測試超級計算機可靠性和穩定性的理想程序。

但是,求解線性方程組終究只是一種應用,全面衡量超級計算機的性能需要更合適的基準(benchmark)測試程序,可惜現在還沒有。由於功耗的限制,發展通用超級計算機已遇到極大的困難,近年來領域專用超級計算機成為熱門研究方向,Linpack顯然不適合作為領域專用計算機的測試標準。

建立統一的基準評價標準,有助於行業內的良性競爭。希望從過去的超算到大數據和人工智能有一套新的標準,有一把尺子衡量技術,將影響力從學術界延伸至產業界。

權威!李國傑院士深度解讀“智能超算”,點出未來10大方向

智能超算需要一把新的尺子。來源:李院士PPT

今年6月19日,HPCWire發佈了一項新的智能超算性能測試標準HAL-AI的測試記錄,目前TOP500排名第一的Summit超級計算機達到445 Petaflops,比原來的HPL(即Linpack)記錄148Petaflops 高出3倍。

HPL測得是雙精度(64位)浮點計算速度,而HPL-AI是混合精度測試,包括適合智能應用的8位、16位、32位計算。HPL-AI特別適合核聚變、識別新分子和地震斷層解釋等超級計算,這些應用中大量用到GPU。

目前美國學者只是建議HPL-AI像Green 500一樣,作為Linpack的補充,不是替代Linpack。中科院計算所等單位在2019年國際智能計算機大會上也提出了數據中心AI、智能超級計算機HPC AI 500 等測試標準,希望中國學者在制定智能計算機測試標準上做出更大的貢獻。


#美國向中國超算動手#

相關推薦

推薦中...