超級電腦可以說是科學計算界的奧運冠軍。透過數值模擬,超級電腦豐富了我們對世界的理解:無論是宇宙中數光年以外的恆星、地球的天氣和氣候,或是人體的運作機制。
四十多年來,Jack Dongarra 一直是高效能運算領域的推動者。今年早些時候,2021 年ACM A.M. 圖靈獎授予Dongarra,以表彰"他對數值演算法和工具庫的開創性貢獻,讓高效能運算軟體在四十多年裡能夠跟上硬體的指數式發展" 。
本文作者 Bennie Mols 於 9 月在德國舉行的第九屆海德堡桂冠論壇期間見到了 Dongarra,並探討了高效能運算的當下和未來。現年 72 歲的 Dongarra 是田納西大學的特聘教授,自 1989 年以來一直是美國能源部橡樹嶺國家實驗室的特聘研究人員。 Bennie Mols 是駐荷蘭阿姆斯特丹的科學與技術作家。
以下是訪談內容
Q1:幾十年來,您進行科學研究的動力是什麼?
A:我主攻的是數學方面的研究,尤其是數值線性代數方面,我所有的工作都源自於此。對於物理和化學這類需要計算——尤其是解線性方程組——的學科來說,一款能計算答案的軟體無疑是非常重要的。同時,你也必須確保軟體的運作與機器的架構一致,這樣才能真正獲得機器所能達到的高效能。
Q2:對於在超級電腦上運行的軟體來說,最重要的要求是什麼?
A:我們希望該軟體的計算結果是準確的。我們希望科學界能夠使用和理解這個軟體,甚至可以對其改進做出貢獻。我們希望軟體效能良好,可以在不同的機器上移植。我們希望程式碼是可讀的、可靠的。最後,我們希望軟體能夠提高使用它的人的生產力。
開發滿足所有這些要求的軟體是一個非同小可的過程。這種等級的工程往往有數百萬行的程式碼,而且大約每隔 10 年,我們就會看到機器架構發生一些重大變化。這將導致我們需要對演算法和體現這些演算法的軟體進行重構。軟體跟著硬體走,在超級運算的頂層仍有很大的空間,來達到更好的機器性能。
Q3:目前在高效能運算方面有什麼令你興奮的發展?
A:我們的高效能超級電腦是建立在第三方元件上的,比方說你和我也能買到高階晶片,只是高效能電腦上需要很多。通常我們在高效能電腦上面以 GPU 的形式使用一些加速器。我們將多個晶片開發板放在一個機架上,許多這樣的機架一起組成一台超級電腦。我們使用第三方元件的原因在於它更便宜,但如果你專門設計晶片來做科學計算,你會得到性能更好的超級計算機,這是一個令人興奮的想法。
事實上,這正是亞馬遜、Facebook、Google、微軟、騰訊、百度和阿里巴巴等公司正在做的事情;他們正在製造自己的晶片。他們可以這樣做,因為他們有龐大的資金,而大學的資金是有限的,因此不幸地不得不使用第三方的產品。這與我的另一個擔憂有關:我們如何將人才留在科學領域,而不是看到他們去為報酬更高的大公司工作?
Q4:對於高效能運算的未來,還有哪些重要的發展?
A:確實有一些重要的事情。很明顯,機器學習已經對科學計算產生了重要影響,而且這種影響只會越來越大。我認為機器學習是一種工具,有助於解決計算科學家想要解決的問題。
這與另一個重要的發展相輔相成。傳統上,我們的硬體使用 64 位元浮點運算,所以數字也用 64 位元表示。但是,如果你使用更少的比特,例如 32、16、甚至 8 比特,你可以加快計算速度。但是加快計算速度,就會失去精度。然而,人工智慧的計算看起來往往可以用更少的比特,16 甚至 8 比特來完成。這是一個需要探究的領域,我們需要找出在什麼情況下縮減位數效果好,什麼情況下效果不好。
另一個研究領域是關於如何從低精度的計算開始,得到一個近似值,然後再使用更高精度的計算來細化結果。
Q5:超級電腦的功耗如何?
A:現在效能最好的超級電腦消耗 20 或 30 兆瓦,以達到每秒百億億次浮點運算的速度。如果地球上的每個人每秒鐘做一次計算,那麼需要四年多的時間才能完成超大規模電腦在一秒鐘內完成的工作。或許在 20 年內,我們要達到 zettaflop 的規模,也就是 10 的 21 次方次浮點數運算。然而,功耗可能會成為限制性因素。你將需要一台 100 或 200 兆瓦的機器,目前來看這太耗能了。
Q6:您如何看待量子運算在未來高效能運算中的作用?
A:我認為量子計算能解決的問題是有限的,它不會解決像三維偏微分方程這樣的問題,我們在這方面經常使用超級計算機,如氣候建模。
在未來,我們將建立一個包含不同類型運算工具的整合工具。我們將有處理器和加速器,我們將有幫助機器學習的工具,我們很可能有以大腦的方式進行神經形態計算的設備,我們將有光學計算機,此外,我們將有量子計算機來解決特定的問題。
以上是圖靈獎得主Jack Dongarra:超級計算頂部還有很大空間的詳細內容。更多資訊請關注PHP中文網其他相關文章!