牛!中國這項高新技術給已開發國家上了一課

國際頭條| 2016-11-22| 檢舉

1月14日,新一期全球超級計算機500強(TOP500)榜單在美國鹽湖城公布,中國神威太湖之光蟬聯冠軍。 11月18日,中國科學院軟體研究所楊超等人在美國鹽湖城舉行的2016年全球超級計算大會上領取了戈登·貝爾獎,他們的獲獎應用名稱為"千萬核可擴展全球大氣動力學全隱式模擬"。 此次全球共有6項應用成果入圍戈登·貝爾獎最終提名,其中3項均依託神威太湖之光完成。設立於1987年的"戈登·貝爾"獎被稱為"高性能計算領域的諾貝爾獎",是國際高性能計算應用領域的最高學術獎項,由美國計算機協會與美國電氣電子工程師協會聯合頒發。近30年來,該獎項一直被美國和日本壟斷。 正如天河2號獲得6連冠後卻因為使用了Intel公司的至強Phi計算卡而被一些別有用心之徒百般詆毀,在神威太湖之光實現了包括處理器在內的所有核心部件國產化後,別有用心之徒又發明了神威存在的不足: 有人聲稱神威太湖之光和以往的中國超算一樣,根本就用不起來,計算資源將來會大量閒置,成為擺設; 有人聲稱申威26010存在設計缺陷; 還有人聲稱美國不是做不到,只是不屑於做,或者美國比較低調,更強大的超算只是沒公布而已; 更有網絡媒體表示:"要知道此前的HP超算雖然浮點性能驚人,但真實環境中受到各種因素制約,可用性能與理論性能相去甚遠。

以太湖之光為例,其理論性能為125.4PFLOPS,Linpack浮點性能93PFLOPS,HPL效率是74.16%,但在更具實戰意義的HPCG性能(高度共軛梯度基準測試)中,太湖之光只有0.371PFLOPS,效率則只有0.3%,這比天河2號的1.1%還要低"。 言下之意,就是神威太湖之光的可用性能與理論性能相去甚遠,只能用來跑分。這種觀點還頗有市場,誤導了不少不明真相的群眾。 當然,"找爹黨"是永遠不會缺席的,還有一些人把中國自主研發的申威處理器找了個美國爹……對此,筆者採訪了數位業內專家,對上述質疑做一個回復。

申威處理器是自主研發 每當中國取得技術突破之時,網絡上總會冒出一群"找爹黨",本次神威太湖之光超算刷榜也不例外——一些人聲稱申威26010使用了ARM指令集,一些人將申威26010與 DEC的Alpha聯繫起來,並將其"認爹"。 但實際上,申威26010是由上海高性能集成電路設計中心設計從指令集開始完全自主研發的國產CPU,經歷了申威1、申威1600、申威410/1610、申威411、申威421/1621等數代產品疊代嚴進,和ARM完全沒有任何關係。至於DEC的Alpha,網絡上盛傳申威獲得了Alpha21164的相關技術,誠然,DEC是一家傳奇公司,Alpha21364在那個年代性能驚艷。可惜的是DEC已經於18年前破產,Alpha先被康柏收購,後被惠普雪藏,已經十多年沒有發展了。 由於在過去幾十年的時間裡,集成電路產業一直遵循著摩爾定律,當年的神器在今天近乎於玩具,而且也沒有任何證據表明,DEC有做過類似於申威26010這種眾核處理器。筆者諮詢過申威的技術人員,他明確表示是自主研發的申威-64自主指令集,相關單位也明確表示與DEC的Alpha無關。 此外,美國相關機構也證明Shenwei-64 Instruction Set (this is NOT related to the DEC Alpha instruction set)。因此,對於一家已經死亡18年的公司,大家還是放過它吧。

申威26010是否存在設計缺陷 有觀點認為申威26010在內存帶寬上存在缺陷——內存帶寬僅有136.51GB,而且用的還是DDR3,相比之下,Intel的KNL和英偉達的Tesla都採用3D堆疊內存,內存帶寬更是達到512GB(Intel PHI) 和 720GB(英偉達 Tesla)。因此,這會造成申威26010存在先天不足,只能用來跑分而不實用。 筆者聯繫過相關單位工作人員,他表示內存帶寬相對於Intel的KNL和英偉達的Tesla確實小了一些,雖然對於某些對內存帶寬要求高的應用,實際使用中確實會不如Tesla和KNL了,不過,神威太湖之光在設計之初就並非為運行訪存密集型運算的存在,就神威太湖之光主要針對的那些應用來說,內存帶寬是基本夠用的。

申威26010 申威26010之所以能夠在製造工藝落後2代的情況下取得媲美於Intel KNL的計算性能,原因就在於申威26010在設計上還有自己的獨到之處。申威26010單獨一片處理器就能完成Intel E5 phi的功能——申威26010集成了4個管理核心和256個運算核心。 一片申威26010就是一個計算節點,管理核心執行類似於天河計算節點中E5的功能,而256個運算核心則發揮了類似於至強PHI的加速作用,相對於採用E5 PHI方案的超算,其加速器插在PCI-E上,這就會成為瓶頸,而申威就不存在這方面的問題。另外,業內人士表示,"Intel的計算卡的存儲模型很扯,需要在不同內存里移動數據"。換言之,就是指Intel的E5和加速器的內存是分離的,在計算時需要先將要處理的數據通過PCI-E傳輸至計算卡內存。 然後計算卡才能計算,最後將結果通過PCI-E讀回主處理器,這樣數據的一來一回就造成了大量性能損失。相比之下,26010能夠實現共享內存,這就避免了Intel E5 PHI,或Power Tesla必須面對的顯式拷貝,免除了這方面的性能損失。

關於神威太湖之光根本用不起來 關於中國超算只是擺設的質疑曾經也被用於天河1號和天河2號。但實際上,無論是"天河一號"還是"天河二號"都不存在運算資源閒置的問題——早在2016年1月,新華社就報道過《中國超級計算機"天河一號"滿負荷運行》,文章中稱,"天河一號"目前已經處於一個滿負荷。 甚至是超負荷運行的狀態,每天在線運行任務超過1400多項,這是歐美國家級超算中心都很難達到的一個業務規模……截至目前,天津超算中心已經給全國100多家重要企業提供服務或是形成了深入的合作,階段性地實現節省企業研發投入上億元,為企業帶來相關經濟效益超過20億元。

不僅"天河一號"處於滿負荷狀態,"天河二號"的大規模計算資源也不容易申請,必須排隊,就連國防科大自己想測試下節點都經常沒資源。 對於神威太湖之光根本用不起來的說法,其實只要關注新聞,就能明白這是徹頭徹尾的謊言。憑藉神威太湖之光強悍的計算性能,國內科研單位在天氣氣候、航空航天、海洋科學、新藥創製、先進位造、新材料等重1要領域取得了一批應用成果。由中科院軟體所、清華大學和北京師範大學申報的"全球大氣非靜力雲分辨模擬"課題,由國家海洋局海洋一所和清華大學申報的"全球高解析度海浪數值模式"課題,由中科院網絡中心申報的"鈦合金微結構演化相場模擬"課題分別入圍戈登·貝爾獎。 其中"千萬核可擴展全球大氣動力學全隱式模擬"還榮獲了戈登·貝爾獎,使中國在該領域實現零的突破。戈登·貝爾獎是高性能計算應用領域的最高獎,神威太湖之光用事實說明,完全自主研發的超算不僅可以用起來,還能用的好。

可用性能與理論性能相去甚遠? 某媒體指出,"要知道此前的HP超算雖然浮點性能驚人,但真實環境中受到各種因素制約,可用性能與理論性能相去甚遠,以太湖之光為例,其理論性能為125.4PFLOPS,Linpack浮點性能93PFLOPS,HPL效率是74.16%"。 這段話引用了幾個測試的結果,並以74.16%的數據來說明中國超算可用性能與理論性能相去甚遠,非常具有迷惑性。筆者簡單的就Linpack測試做個簡要說明。

Linpack指的是矩陣求解,為何超算大多以Linpack測試成績論高低呢?原因就在於很多科學計算模型都包含了矩陣求解,比如解微分方程,因此在超算任務中具有不可取代性——像輻射流體力學就是求解微分方程; 而核爆炸模擬其實就是輻射流體力學蒙特卡洛預測;雷達截面的矩量法計算也有賴於解微分方程……因此,linpack測試並非是一些跑分軟體那樣:不服跑個分,而是真正具有實戰價值的測試。那麼,神威太湖之光Linpack測試成績到底如何呢?我們做一個對比: TOP500排行第一,中國,神威太湖之光,理論性能125.4PFlops,Linpack雙精浮點性能為93PFlops,Linpack效率74.16%; TOP500排行第三,美國,泰坦,理論性能27 Pflops,Linpack雙精浮點性能17.6 PFlops,Linpack效率為65.19%。

這裡要說明一點,就是超算的規模越大,Linpack測試效率的提高就越難——規模大到如一定程度,維持一段時間的穩定運行是非常難的,何況是太湖神威之光93PFlops的高性能。而神威太湖之光在Linpack測試性能是美國超算泰坦5倍以上的情況下,Linpack測試效率大幅領先於泰坦,這就非常可貴了! 總而言之,以神威太湖之光的規模,取得Linpack效率達到74.16%已經非常厲害了,在採用異構計算的超算中屬於頂尖水平,大家千萬不要被一些無良媒體誤導了。 為何有媒體稱日本的京為世界第一?

HPCG是美國正在推的一個新測試標準,目前還沒有被業界廣泛接受, HPCG比較重視計算性能和通信的平衡,如果計算性能和通信不是一個量級的,即便兩項指標分開看都很強,但也會導致HPCG偏低的結果。 另外,HPCG也存在一些缺陷,據業內人士介紹,"由於針對具體硬體結構修改共軛梯度算法很容易得到高得多的成績,為了避免這一點,HPCG代碼目前還在鎖定狀態,不准修改算法本身。但在使用中,用戶是會修改算法的,這使得測試會脫離實際"。在某媒體的報道中,"但在更具實戰意義的HPCG性能中,太湖之光只有0.371PFLOPS,效率則只有0.3%,這比天河2號的1.1%還要低",0.3%和1.1%的數據和該媒體的這種表述很容易讓人誤認為,天河2號和神威太湖之光的HPCG測試結果非常差。 但實際上,在HPCG運算速度排行榜中,天河2號位列第一,而神威太湖之光位列第三,這其實是很不錯的成績。而且一位業內人士猜測,"也許神威還沒有好好進行優化"。

那為何有媒體報道,"太湖之光保住了最強超算,但HPCG性能第一被日本K奪走"呢?原因就在於選擇對比的參照,既沒有選擇在核爆炸模擬、深度學習方面具有實戰價值的Linpack,也沒有被該媒體認為"更看重實際性能"的HPCG運算速度,而是選擇了HPCG/HPL這項參數來比較,按照HPCG/HPL的成績,神威太湖之光的排名非常靠後。 那又為何在Linpack測試中性能頂尖和在HPCG測試中排名靠前的神威太湖之光會在HPCG/HPL這項參數上排名靠後呢?原因就在於計算性能和通信的不平衡。必須指出的是,這種不平衡並非是計算性能差,或者網際網路差——在計算性能上神威太湖之光無與倫比。

在網際網路方面,神威太湖之光也不遜色於天河2號,目前屬於主流水平(天河2號問世時網際網路屬於頂級水平),還稱不上頂級的網際網路。正是因為計算和通信上的不平衡,導致神威太湖之光HPCG/HPL參數偏低。 而京在這項參數上之所以高,就是因為雖然在計算性能和通信並非頂級水平,但因為計算性能和通信屬於一個量級,所以HPCG/HPL參數會比較高。至於有媒體認為神威太湖之光HPCG/HPL參數偏低,所以只是跑分高但根本不實用,榮獲戈登·貝爾獎的應用則是最有力的回擊。實際上,脫離具體應用談超算的可用性都是耍流氓,對於神威太湖之光而言,也許運行某些應用的效率相對會低一些,但是運行那些在神威超算所擔負的任務而言,卻是再合適不過的。 雖然神威太湖之光並沒有在所有的測試中獲得第一,但以神威太湖之光的HPCG/HPL參數偏低就否定太湖之光,並認為"日本(超算)排名不敵中國,但有優勢",這種否定方式絕不是科學的態度。

美國不屑於做或沒公開更強的超算? 對於一些人聲稱美國比較低調,更強大的超算只是沒公布而已。對這種辯解,筆者就很無奈了。雖然筆者並不了解美國是否有未公開的100P超算,但筆者非常確信中國確實有未公開的大機器——其實就神威太湖之光而言,最遲在2015年就已經建成,只是選在2016年年中公布而已。 有人聲稱美國不是做不到,只是不屑於做而已。對於這種說法美國政府都恐怕未必會同意——據媒體報道,在2014年IBM簽下了高達3.25億美元的協議,並向美國能源部提供2台新型超級計算機,這兩台超級計算機分別名為Sierra和Sum m it,將於2017—2018年被安裝在勞倫斯利物莫國家實驗室和橡樹嶺國家實驗室。

在2014年11月,美國能源部還宣布了另外一項1億美元的計劃,以繼續研發更快的超級計算機。因此,美國不屑於做純屬無稽之談,美國一直在重點發展超算。 只是100P超算在研發進度上輸給了中國罷了,用某位業內專家的話說,"神威太湖之光再一次證明了中國在超算領域有能力在自主創新中取得領先,也給某些秉持保守落後的技術發展思維的已開發國家上了一課"。

文章來源: https://www.twgreatdaily.com/cat90/node1350034

轉載請註明來源:今天頭條