李國傑院士:對20世紀90年代高性能計算機研製和應用的幾段回憶 | 中國高性能計算30年
理論分析、實驗觀察和計算模擬是科學研究的三大手段,科學與工程計算在科學研究、經濟建設和社會發展中發揮着不可替代的作用。正因爲如此,高性能計算成爲世界各國激烈競爭的戰略高地。過去30 餘年,中國的高性能計算走過了一條艱辛的發展之路。在人才和經費匱乏的條件下,中國的科技工作者奮發圖強,埋頭苦幹,一步一個腳印,從跟蹤、並跑直到交替領先,取得了令世人矚目的進步。
← 左右滑動查看目錄→
《中國高性能計算30 年》(錢德沛等編.北京 : 科學出版社, 2024. 6)記錄了過去30餘年中國高性能計算所走過的不平凡的道路。全書分爲高性能計算機和系統、算法和軟件、應用與產業化四個部分,試圖從不同的角度和側面,記述和反映我國高性能計算的重要節點與事件、取得的經驗與吸取的教訓、國家科技計劃的作用以及科技人員的創造力,給後人留下有益的啓迪。
本書節選李國傑撰寫的《對20世紀90年代高性能計算機研製和應用的幾段回憶》一文以饗讀者。
對20世紀90年代
高性能計算機研製和應用
的幾段回憶
李國傑
863 計劃啓動時關於計算機發展方向的爭論
863 計劃啓動以前,國內關於計算機技術的發展方向已經有許多討論甚至爭論。受日本倡導的第五代計算機的影響,當時多數意見認爲要儘快啓動智能計算機研製。但有一位學者頭腦十分清醒,他正確預測了之後30 年計算機技術的發展,這位學者就是大名鼎鼎的錢學森。
1984 年8 月3 日在國防科工委第五代計算機專家討論會上,錢老做了一次高瞻遠矚的報告,1985 年1 月此報告發表在《自然雜誌》第8 卷第1 期,標題是《關於“第五代計算機”的問題》。在這篇文章中,錢老明確指出,“第五代計算機是什麼? 是第二代巨型計算機”。至於當時炒得很熱的日本第五代計算機,錢老認爲:“再把這個概念叫做第五代計算機,或者第六代計算機,就不那麼合適了,因爲它不是一個計算機了,而是一個智能機,所以我建議爲了不要混淆起見,就乾脆叫做第一代智能機。”錢老進一步強調:“如果說電子計算機的出現是一項技術革命,那麼智能機的出現也將是一次技術革命。所以我們要第一,看到它的意義,一定要把第一代智能機搞出來,這是了不起的事情。但第二,又切不可魯莽從事,犯欲速不達的錯誤。至於第一代智能機,根據前面講的情況現在還不成熟,只能是預研。”
錢老這篇文章的重點是講第二代巨型計算機,這種計算機要真正能代替工程技術上耗費巨大的試驗,其運算速度不是幾十兆次浮點運算,而是幾十億次浮點運算,運算速度要提高几十倍至一百倍。特別有價值的是,錢老通過對求解非線性偏微分方程的仔細分析,指出研製巨型計算機首先要解決並行計算問題,包括機器軟件和算題軟件等。他嚴肅批評過去忙於製造機器,至於怎麼用是不大重視的,在文章中大聲疾呼:“這個問題必須提到議事日程上來,這樣才能充分發揮巨型機的作用。”真是一語中的!錢老指出的問題至今仍然是我國高性能計算機研製和應用的短板。
可惜的是,錢老的意見沒有完全被採納,中央1986 年第24 號文件還是將研製智能計算機作爲863 計劃的主要目標之一,研製第二代巨型計算機的任務留給了國防部門,在政府科技計劃中,民口基本上退出巨型計算機的研製。
以“智能計算機”的名義發展高性能計算機
863 計劃306 主題叫智能計算機系統主題,顯然國家的初衷是要研製智能計算機。但是,要不要追隨日本,研製以並行推理機爲標誌的第五代計算機,306 專家組的專家們仍有疑慮。在汪成爲組長的領導下,專家組成員一直在思索、討論如何走一條適合世情、國情的發展計算機技術之路。
在國家智能計算機研究開發中心(下文簡稱“智能中心”)成立以前,1989 年10 月我給國家科委領導寫了一份報告,闡述了我對智能計算機和第四代計算機的看法,提出863 計劃應重點發展並行處理技術。這份報告指出:“智能機的發展必須以VLSI 計算機(第四代計算機)的技術爲基礎。有些同志可能認爲跳過四代機直接發展所謂五代計算機是一條捷徑。但這只是一種空想。如果把人工智能看成是一朵花,它的根是計算機技術。而計算機技術有它自己的特殊發展規律。其中最重要的一點是幾十年來已積累了數千億美元以上的軟件,這是人類文明的寶貴財富。軟件的繼承性成了計算機發展的巨大慣性,使得計算機體系結構(包括軟件)的重大革新必須有幾十倍以上的性能提高,用戶纔會願意放棄原有的軟件。這無疑增加了智能機研製的難度。這也說明充分利用四代機的已成熟的技術是發展智能機必須要考慮的一條重要原則。必須指出,儘管我國也研製了一兩臺上億次浮點運算的計算機,但從總體來看,我國的計算機水平比國外落後十幾年。這幾年我國研製計算機的力量實際上是下降了,與國外的差距更加拉大了。只有實實在在縮短這個差距,研製智能機纔有基礎。863 計劃智能機的研製對發展我國計算機技術,尤其是並行處理技術,應該起一定的促進作用。”
爲了更廣泛地聽取國內外專家的意見,以智能中心爲主辦單位,306 專家組於1990 年5 月在北京飯店召開了智能計算機發展戰略國際研討會,我們邀請了美國總統科學顧問許瓦爾茲教授、人工神經網絡理論的奠基者之一霍普菲爾德教授、日本第五代機的負責人之一田中英彥教授、美國伊利諾伊大學的華雲生教授、美國南加州大學的黃鎧教授、波音公司的德格魯特研究員等參加會議發表意見。我國吳文俊教授等100 多名學者到會。這次會議在當時是規格較高的國際學術會議,時任國務委員的宋健在人民大會堂接見了參加會議的國外著名學者。參加會議的多數外國專家不贊成我們走五代機的路,建議根據中國國情,先研製比個人計算機(PC)性能高一檔的工作站(workstation)。智能中心將國外專家的意見整理成一份會議紀要,上報給國家科委領導。這次會議對智能中心選擇以通用的並行計算機(從共享存儲多處理機(SMP)做起)爲主攻方向起到了重要的推動作用。
1991 年9 月17 日在北京召開了全國第一次人工智能與智能計算機學術會議。我在這次大會上作特邀報告,題目是“我們的近期目標——計算機智能化”。這次報告在國內第一次以“頂天立地——發展智能計算機的戰略”的標題提出了“頂天立地”發展戰略。當時講的“頂天立地”戰略還是狹義的,主要針對如何研製智能計算機。報告中指出:“開展智能計算機研究必須同時在兩條戰線上進行工作。一方面要努力突破傳統計算機甚至圖靈機的限制,探索關於智能機的新概念、新理論和新方法;另一方面要充分挖掘傳統計算機的潛力,在目前計算機主流技術基礎上實現計算機的智能化。”306 專家組把這種戰略稱爲“頂天立地”戰略。1993 年,306 專家組正式提出“頂天立地”的口號,將“頂天立地”戰略解釋爲:“在理論和方法上有所創新、在關鍵技術上有所突破、在應用和產品開發上有所效益。”
在306 專家組的共同努力下,863 計劃的智能計算機研製任務實質上已落實於發展高性能計算機的行動之中。從共享存儲多處理機(SMP)開始,接着研製大規模並行處理機(MPP),最後走上發展機羣系統(Cluster)的康莊大道。爲了不偏離863 計劃原定的目標,306 主題也佈置了許多與人工智能有關的課題,特別是智能人機接口(圖像識別、語音識別等)、智能應用(如農業專家系統)方面的課題,爲我國培養了一大批人工智能方面的專家和技術骨幹。今天中國的人工智能技術可以與美國並駕齊驅,306 主題功不可沒。智能中心雖然在發展高性能計算上做出了出色的成績,但每次項目鑑定都要做充分的準備,爭取能應對評委們尖銳的提問:“你們研製的計算機的智能在哪裡?”
回想20 世紀90 年代的科研工作,306 主題的發展道路基本上與錢老的思路不謀而合,智能中心和後來成立的曙光公司爲我國發展高性能計算機作出了實實在在的貢獻。曙光高性能計算機實際上就是錢老期望的“第二代巨型計算機”,其計算速度提高了10 億倍,遠遠超過錢老預測的幾十倍。經過30 年的預研和技術積累,今天已經具備研製高性能智能計算機的條件,基於中國科學院計算技術研究所(以下稱中國科學院計算所)研製的“寒武紀”芯片,艾級(Exa 級)智能計算機即將問世。但這種機器還不是真正的智能機,只是一些智能應用的加速器。
並行計算研究起步期的點滴回憶
20 世紀60~70 年代,我國研製過一些高性能計算機,大多是仿製國外的機器,原創性的貢獻不多。算法研究上馮康發明的有限元法是突出代表,系統結構上高慶獅獨立提出的縱橫加工結構與Cray 計算機寄存器-寄存器加工方式異曲同工。改革開放以後,更多的學者開始投入到並行處理技術研究。
我國的並行處理技術研究起步有物理學家的功勞。由於理論物理研究需要超高性能的計算機,當時的巨型機滿足不了計算需求,美國紐約州立大學、哥倫比亞大學的物理學家着手自己研製適合理論物理研究的專用超級計算機。李政道先生把這股風帶到中國。他在北京建立了以理論物理爲主要研究方向的中國高等科學技術中心,破格吸收我和祝明發加入。應他的邀請,1987 年我在中國科學院理論物理研究所專門講授了一門並行計算課程,彭桓武、郝柏林等老科學家每堂課都坐在臺下聽課,我深深感受到老物理學家對並行計算技術的渴求。李政道先生和夏培肅、郝柏林教授合作,申請到國家自然科學基金重大項目,研製適合混沌計算的BJ-01、BJ-02 並行計算機。
國內最早在大規模並行計算機上調試並行算法的科研人員中也有物理學家。1995 年曙光1000 做出來後,沒有人會用,有些學者將曙光1000 比喻成一匹長了32 條腿的馬(它有32 個CPU),難以駕馭。當時,中國科學院物理研究所的王鼎盛、中國科學院生物物理研究所的陳潤生、中國科學技術大學的陳國良、中國科學院軟件研究所的孫家昶、中國科學院計算技術研究所的孫凝暉等科研人員成立了一個研究並行算法和並行軟件的小組,構成一部“三套馬車”。他們經常在計算所北樓200 房間討論怎麼馴服這匹32 條腿的“烈馬”。應用、算法、軟件和系統結構的核心骨幹這麼密切的合作,在國外也很難見到。這種合作產生了深遠的影響,引領了國內並行算法和並行軟件研究,爲後來斬獲超級計算機應用戈登·貝爾獎奠定了基礎。若干年後,這個不到十人的跨學科小組出了三位院士。
曙光一號和曙光1000 研製
研製曙光一號是智能中心歷史上精彩的一幕。當時決定派一支小分隊到美國去研發。在硅谷租間房子安頓下來後,需要什麼軟件和零部件,打個電話就有人送來,有些軟件還讓我們免費試用。這種“借樹開花”“借腹生子”的做法大大縮短了機器研製週期。樊建平等幾名派出的開發人員創造了一項中國計算機研製歷史上的奇蹟,不到一年時間就完成了曙光一號的研製,載譽歸來,實現了他們在“人生能有幾回搏”誓師大會上講的“不做成機器回來,就無臉見江東父老”的諾言。與現在的十億億次浮點運算能力的超級計算機相比,曙光一號真是“小巫見大巫”,但曙光一號的研製成功開闢了一條在開放和市場競爭條件下發展高技術的新路。當時提出了“兩做、兩不做原則”:完全屬於仿製、沒有自己知識產權的產品不做;只爲填補空白、市場上沒有競爭力的產品不做。集中力量,做國外對我國封鎖的技術和產品;努力趕超,做國外尚不成熟的技術和產品。現在看來,這些原則還應當堅持。
曙光一號研製成功以後,智能中心就開始研製曙光1000 大規模並行機。大規模並行機的關鍵技術是如何做成把大量處理機有效連接起來的高速互連網絡和每個處理單元的核心操作系統。智能中心率先在國內突破了蟲孔路由(Wormhole Routing)關鍵技術,爲我國發展大規模並行機開拓了一條道路。這款芯片的研製者是剛進計算所的小夥子曾嶸,他在碩士期間做下圍棋的計算機軟件,沒有碰過集成電路。1997 年我訪問麻省理工學院(MIT)時告訴Dally 教授(Wormhole Routing 技術的發明者),我們已研製成功異步蛀洞路由芯片,他很驚訝,因爲他做異步路由芯片曾失敗過。這件事給我們的啓發是,只要信任有潛力的年輕人,他們能做出意想不到的出色成果。後來計算所開展CPU 研製時,也是啓用從未做過CPU 設計的科研人員。另一方面,劉文卓和孫凝暉牽頭的系統軟件團隊把處理單元的核心操作系統做得小巧精緻,佔用內存很小,爲用戶提供了更多存儲空間,使得曙光1000能求解的問題規模大大超過相同處理單元數目的國外並行機。曙光1000 是國內研製成功的第一個實際運算速度超過每秒10 億次浮點運算的並行機(Linpack 速度超過每秒15 億次),1997 年獲得國家科學技術進步獎一等獎。
曙光系列高性能計算機的早期市場開拓和應用推廣
曙光 1000 研製成功以後,智能中心又面臨了一次新的選擇,即863 計劃。下一個目標產品曙光 2000 究竟是做超級計算機還是超級服務器?超級計算機主要用於科學工程計算,追求最高的計算速度;超級服務器是更加通用的高端計算機,除科學計算外,更多地用於事務處理與網絡服務。1995 年中國的互聯網纔剛剛起步,全世界速度最快的 500 臺高性能計算機,絕大多數都採用大規模並行處理結構(MPP)。從計算速度上追趕國際先進水平容易得到學術界同行認可。但通過對市場和應用發展趨勢的分析,我們預見到支持互聯網的機羣結構超級服務器將是高性能計算機的主流,提出了不要片面追求性能,而以爭取儘可能多的用戶使用國產高端計算機爲目標,決定以計算機的可擴展性(Scalability)、好用性(Usability)、可管理性(Manageability)和高可用性(Availability)作爲發展高性能計算機的主攻方向,總結爲 SUMA 特性並註冊了“It’s SUMA”商標。現在全世界 90% 以上的高端計算機已用於信息服務和數據處理,科學計算用戶不到 10%,事實說明從研製超級計算機轉向研製超級服務器是正確的選擇。
從1997 年起,我們着手研製符合這種新潮流的超級服務器,先後於1998 年底與2000 年初推出了曙光2000-Ⅰ和曙光2000-Ⅱ超級服務器,前者由32 個處理機構成,峰值速度達每秒200 億次浮點運算;後者由82 個節點(164 個處理機)構成,峰值速度達每秒1100 億次浮點運算,具有較強的市場競爭力。
以曙光1000A 和曙光2000 超級服務器爲主要設備,國家高性能計算機工程技術研究中心(也依託於計算所)先後在北京、合肥、武漢、成都等城市建立了五個國家高性能計算中心,這些中心雖然後來沒有得到國家的持續支持,但爲推廣普及並行計算、培養高性能計算機應用人才發揮了重要作用。
與計算機的研製相比,高性能計算機的推廣應用和市場開拓的歷程更加艱辛。20 世紀90 年代初研製曙光一號時,國內高性能計算機市場是外國大公司一統天下。那時候別說賣自己生產的高性能計算機,就是送給別人用也不一定接受。最早的曙光產品推廣還是有政府部門的背書或支持,直到1997 年,曙光1000A 落戶遼河油田,才真正實現完全靠商業化運作進入市場,合同簽了國家科委才知道,實現了國產高性能計算機商品化零的突破。曙光機打入鐵道部,也在偏遠的三間房車站閒置了快一年(做IBM 計算機的B 角),因IBM 服務器壞了無人去維修才當上A角,因試用效果很滿意爭得入圍競標的資格,一舉中標了全國十幾個鐵路編組站的調度計算機。
1993 年擔任國家科委主任的宋健同志到智能中心參觀時,就號召智能中心當“敢死隊”,要像當年劉鄧大軍一樣殺出重圍。智能中心和曙光公司的員工沒有辜負全國人民的期望,勇敢地殺出重圍,在很多人認爲難以成功的高性能計算機領域做出了令人欣慰的成績。科技部高新司原司長冀復生同志在赴美工作前寫的一份關於曙光機的背靠背調研報告中講,“曙光公司猶如盧溝橋事變中的29 路軍”。值得慶幸的是,曙光公司沒有像29 路軍一樣悲壯地倒下去,而是通過頑強拼搏,由弱變強,曙光計算機在中國高性能計算機TOP100 中的份額已超過IBM 和HP 等巨頭,2009 年以來9 次位居國內第一。
回顧曙光計算機市場開拓的艱苦歷程是想說明,發展高性能計算機的目標不只是爭取世界高性能計算機 TOP500 的第一名。Linpack 只是衡量高性能計算性能的一個指標,不同的應用對機器的性能和功能有不同的要求。正如錢老所說,我們應更加關心高性能計算機真正用起來。曙光2000 的市場開拓中有一件事令我印象十分深刻。當時市場上應用軟件大多基於IBM 公司的AIX 操作系統,因爲我們市場規模太小,要求應用軟件廠商將應用軟件移植到我們自主開發的SNIX 操作系統,沒有人響應。智能中心自主開發了具有單一系統映像的機羣操作系統,把所有的節點AIX 操作系統管起來,使得基於AIX 的各種應用軟件不用移植就能在曙光計算機上跑起來,靠這一招曙光2000 就打開了市場。IBM 的技術人員感到不可思議,這種事情沒有AIX 源代碼怎麼能做到。這種市場上有奇效的技術,可能沒有很高的學術價值,大學教授們是不會做的。如何用標準的工業化部件構建世界領先的超級計算機,同時又能用這些部件大規模地組裝大大小小的各類服務器,這也是曙光公司在市場上成功的法寶。我希望我國計算機界多關注這些市場化的“殺手鐗”技術,像重視SCI 論文一樣重視市場化技術的“含金量”。
本文節選自《中國高性能計算30 年》(錢德沛等編.北京 : 科學出版社, 2024. 6)一書。
責任編輯: 王麗平 崔慧嫺
本書分爲高性能計算機和系統、算法和軟件、應用與產業化四個部分,試圖從不同的角度和側面,記述和反映我國高性能計算的重要節點與事件、取得的經驗與吸取的教訓、國家科技計劃的作用以及科技人員的創造力。本書不僅涉及面廣,而且文體多樣,既有史實記述,也有隨感而發,讀者閱讀時,可以真切感受到那些親歷發展過程的作者的內心激情。
本書適合從事科學計算、計算機科學、科技史的工作者和愛好者閱讀。
(本文編輯:劉四旦)
一起閱讀科學!
科學出版社│微信ID:sciencepress-cspm
專業品質 學術價值
原創好讀 科學品位
科學出版社視頻號
硬核有料 視聽科學