想當年,美軍是如何拿PS3組建超級計算機的

眼下,新冠肺炎疫情正肆虐全球。在這段時間內,電子遊戲行業也難免受到疫情衝擊,但它選擇以一種特殊的形式來協助人們對抗病魔。

近日,世界衛生組織協同多家知名遊戲廠商(包括動視暴雪、Riot Games、Zynga、Unity、Kabam等)聯合發起了名為“#PlayApartTogether”的活動,他們在熱門遊戲里加入各類在線活動、獎勵和特殊事件,鼓勵玩家以在家玩遊戲的形式加入居家隔離。

與此同時,還有不少遊戲廠商主動借自家的遊戲作品組織起相關的慈善募捐和抗疫知識科普。此外,遊戲廠商和玩家還充分藉助其它特殊途徑為抗擊疫情做出貢獻。比如,最近顯卡芯片巨頭NVIDIA號召玩家加入分佈式計算項目Folding@home針對新冠病毒的研究,成功吸引了數十萬PC玩家踴躍參與,他們貢獻出的總算力甚至超越了全球最強超算“頂點”(Summit)。

想当年,美军是如何拿PS3组建超级计算机的

Riot Games的相關公告

Folding@home是由斯坦福大學化學系“潘德小組”(Pande Group)於2000年發起的一個公益性質分佈式計算工程。通俗來說,Folding@home可以被簡單理解成一臺架設於互聯網上的超級計算機,它的算力直接源自項目志願參與者的PC或其他節點終端所貢獻出的富餘CPU或GPU,目的是研究蛋白質摺疊異常引發的相關疾病,如癌症、帕金森症、阿爾茨海默症等。2007年,Folding@home被吉尼斯世界紀錄認證為世界上最大的分佈式計算項目。2020年2月底,潘德小組正式宣佈將新冠病毒列入研究對象。

重點在於,對很多PS3玩家而言,Folding@home項目是他們的“老相識”,這說來是一個有點久遠的故事了……

緣起

一切還得從2001年說起。當時,索尼的重磅級主機PS2發售已經一年,喜人的成績令索尼決定開展下一代主機的相關工作。索尼遊戲部門對PS3寄予了相當大的期望,“PS之父”久多良木健希望將PS3塑造成“終極家庭娛樂設備”,要實現這個願望,PS3必須具備澎湃的性能。換言之,一顆強勁的“心”對於PS3是不可或缺的。

想当年,美军是如何拿PS3组建超级计算机的

當年躊躇滿志的久多良木健

考慮到這些,索尼特地找到芯片領域的兩位巨擘——IBM和東芝,三方協議組成聯盟,共同開發一款高性能處理器——Cell(字面意思為“細胞”)。

Cell處理器由1個單核主處理器PPE和8個專職浮點運算的協處理器SPE構成(Cell原計劃搭載6個SPE,久多良木健以日本民俗文化中數字“8”遠比“6”更吉利為由,力排眾議,強行要求研發小組將SPE總數提升至8個)。其中,Cell的主處理器PPE可以被視為一顆精簡版的PowerPC處理器,性能堪堪相當於當時已經問世數年的奔騰4處理器,但是,Cell的協處理器SPE綜合浮點運算能力相當驚人,每秒可執行高達2560億次計算。此外,Cell原生對並行運算和分佈式運算有極為良好的支持。

想当年,美军是如何拿PS3组建超级计算机的

PS3的心臟

Cell的強勁性能令索尼對PS3的前景充滿信心,久多良木健豪言:“一定數量的Cell之算力整合到一起,就可以達到甚至超過‘地球模擬器’的性能。”地球模擬器是隸屬於日本政府的超級計算機,是當時世界上最快的超算之一。需要指出,浮點運算是超算性能的關鍵衡量指標。地球模擬器每秒約可執行36萬億次浮點運算。理論上講,大概數百臺PS3集合後的綜合浮點運算能力便可匹敵地球模擬器。

有意思的是,久多良木健的這番話在國內遊戲圈內傳著傳著就莫名其妙變成了“索尼宣稱PS3能夠模擬地球”,並就此荼毒甚久。

想当年,美军是如何拿PS3组建超级计算机的

地球模擬器2002年投入使用,一度是全球最快的超算

波折

相關資料顯示,Cell的研發預算高達4億美金,研製週期長達4年。雖然索尼對Cell相當看好,但在Cell問世的前後,索尼卻沒少被它給折騰。

首先,在Cell的研發過程中,IBM偷偷給索尼“捅了一刀”:當相關工作進行到關鍵階段時,微軟也就其新世代遊戲主機Xbox 360的處理器研發找上了IBM。按照微軟的規劃,Xbox 360的硬件架構將一改初代Xbox主機的“偽定製x86 PC”式設計(初代Xbox採用英特爾奔騰3處理器),故而,在處理器領域有豐富經驗的IBM成了微軟僅有的幾個選擇之一。

作為老牌商業公司,IBM沒打算放過微軟這個潛在大客戶,但IBM也確實沒有多餘精力從零開始,為微軟專門定製一款處理器。怎麼辦?考慮到IBM事先曾同索尼簽署過相關協議,IBM有權將基於Cell項目衍生來的研發成果另作其他商業用途,所以,IBM索性將源自Cell的部分技術略加修改後重新包裝成主打三核心的Xenon處理器,賣給了微軟……到底IBM自己也覺得這樣做不太厚道,特地瞞了索尼好多年,直到多年後,此事被當年的項目工程師在回憶錄裡披露了出來。

想当年,美军是如何拿PS3组建超级计算机的

世人都把它們當對手,其實暗地裡它們是有“血緣關係”的

得知Xbox 360採用IBM的芯片後,被矇在鼓裡的久多良木健樂壞了。按他的想法,這意味著Xbox 360無法向後兼容基於x86架構的初代Xbox遊戲,反觀初版PS3(即玩家熟知的厚版PS3)原生集成有PS2處理器芯片,可以硬兼容PS2遊戲。當然歷史的發展往往出乎人意料:出於成本考慮,索尼最終移除了薄款PS3裡的PS2主機處理器,徹底失去了對PS2的兼容性……

這還沒完。PS3上市後,一眾遊戲開發商對索尼怨聲載道,這同樣跟Cell處理器密切相關——原來,協處理器SPE對遊戲效果至關重要,但Cell調用SPE的方式很是另類,導致SPE並不能直接訪問系統內存,也不支持主處理核心PPE的指令集,這種堪稱奇葩的架構令PS3成為當時開發商最頭疼的主機平臺。

很多原計劃全平臺發售的遊戲,要麼是PS3版表現欠佳(代表如世嘉的《獵天使魔女》),要麼開發者乾脆捨棄掉PS3版(比如CD Projekt Red的《巫師2》就只有PC和Xbox 360版,因為“波蘭蠢驢”實在是沒法搞定PS3),就連索尼自家的第一方工作室也深受其害,“GT賽車”系列的創始人山內一典吐槽說,“為PS3開發遊戲簡直是噩夢”,這個狀況直到PS3發售數年後才大為改善。

當然,也不是沒有廠商為Cell站臺。索尼第一方工作室Guerrilla Games的技術總監Michiel van der Leeuw最近就表示,儘管Cell讓PS3的遊戲開發變難,但Cell的性能確實強大。Leeuw說:“即便是現在最快的英特爾芯片也遠不如Cell,只是你很難利用Cell這麼強大的性能。我認為,Cell遠遠領先於那個時代,因為它有點像現在GPU的工作方式,不過也有可能是平衡性沒有處理好,導致太難利用了。Cell的性能有點過了頭,在可用性上又有點不足,但它絕對是很有遠見的設計。”

想当年,美军是如何拿PS3组建超级计算机的

Guerrilla Games曾在2005年E3上用預渲染的CG來宣傳自家的PS3獨佔大作《殺戮地帶2》,用預渲染冒充實時演算效果當然會備受抨擊

無論如何,靠著“賠本賺吆喝”的戰術和諸多獨佔賣點(剛問世那會,PS3是市面上最廉價的藍光播放器,沒有之一),PS3問世後到底是站穩了腳跟。

PS3等於窮人版超算?

早在PS2時代,索尼便支持用戶為主機安裝第三方Linux系統,讓PS2發揮部分PC的功用。索尼還曾打算在歐盟地區以電腦的名義來推出PS2,藉此享受當地的關稅優惠。到了PS3時代,索尼同樣將允許PS3用戶安裝Linux作為核心賣點之一。

想当年,美军是如何拿PS3组建超级计算机的

也許你沒有見過這樣的“正版遊戲”

重點來了:Cell不是浮點運算能力強勁,而且對並行運算和分佈式運算支持良好麼?很快就有技術大拿打起了主意,想用安裝了自定義Linux操作系統的PS3主機集群組建廉價超算。這些人的想法確實也沒錯,因為用PS3來組超算的確優勢多多:

首先,不考慮Cell本身卓越的浮點運算能力,因為Cell基於RISC(精簡指令集)架構,其綜合性能要顯著優於英特爾、AMD等芯片巨頭基於CISC(複雜指令集)架構的同級別x86芯片。

其次,索尼打一開始便踐行“虧本賣主機”的市場推廣策略。研究機構的分析表明,PS3成本高達800美元,而搭載20GB硬盤的初版PS3實際售價是499美元(仍遠超同世代的Wii和Xbox 360)。換言之,對比同級別PC硬件,用PS3來組超算是“買到就賺到”。

最後,用PS3組超算的唯一缺陷大概是PS3的“封閉性”。作為遊戲主機,它並不允許玩家對其進行“硬件升級”式的性能擴展,這意味著內存、帶寬等關鍵性能指標被“框死了”。然而嚴格來講,起碼在PS3剛問世那會,這並不是太大的問題——光拿內存舉例,PS3標配的是服務器級別的256MB XDR高性能內存,性能碾壓同期PC電腦所泛用的DDR系列內存。

有這麼多的理由,大拿們還有藉口不拿PS3組超算麼?

2007年,美國馬薩諸塞州大學達特茅斯分校物理系教授高瑞夫·肯納(Gaurav Khanna)成功用16臺PS3外加Fedora Linux系統組建起了超算系統“重力網”(Gravity Grid),進行黑洞、引力波以及量子宇宙學方面的研究。有必要指出,這16臺PS3主機中的8臺由索尼官方贊助。作為對索尼的“感謝”,肯納教授數度在公開場合宣揚PS3的性能,聲稱重力網的16臺PS3甚至抵得上100臺基於英特爾至強(Xeon)處理器的PC。

想当年,美军是如何拿PS3组建超级计算机的

肯納教授和他的PS3超算重力網

肯納教授的重力網引起了“山姆大叔”的注意——位於美國紐約羅馬城的美國空軍研究實驗室(The Air Force Research Laboratory,AFRL)一直在尋找物美價廉的超算組建方案。2009年,AFRL先行採購了336臺PS3,組建了一個浮點運算能力為53TFlops的超算原型機進行測試,結果很令AFRL滿意。之後,AFRL以公開招標的形式開出了一份總數為2200臺的PS3訂單(最終實際採購數有所削減)。

不過,天有不測風雲,偏偏在這節骨眼上,索尼突然決定通過3.21版固件升級移除用戶為PS3安裝第三方操作系統的功能,這意味著用戶再也無法給PS3安裝第三方操作系統以及相關外設來組建超算平臺。

索尼這樣做的原因,有說法認為是避免被黑客利用,破解PS3;也有人認為,賣PS3硬件是賠本生意,PS3遊戲版稅金才是索尼最重視的盈利大頭,倘若人人都把PS3視為廉價超算組件,而不是遊戲主機,索尼的主機賣得越多,虧得也越多。

無論如何,當索尼食言後,部分心生不滿的玩家乾脆將索尼告上法庭,理由是“產品與廣告宣傳功能不符”及“索尼單方面破壞與PS3買家的銷售協議”。

想当年,美军是如何拿PS3组建超级计算机的

只能說,站在索尼的角度能理解這個理由……

繼續講AFRL。由於那1000多臺PS3已經到貨,美軍只能硬著頭皮繼續推進PS3超算計劃。2010年11月,由1760臺PS3外加168個獨立圖形處理單元及84個協調服務器組成的超算“禿鷹群”(Condor Cluster)正式上線,被AFRL用於處理衛星圖像、雷達以及研究AI。此外,AFRL還向一些大學以及研究機構開放禿鷹群的部分算力,前述肯納教授所在的大學就是禿鷹群的民間受益者之一。

據AFRL方面人士透露,禿鷹群總耗資約200萬美元,運算性能為500TFlops,成本和耗電量均只有同等運算力常規超算的十分之一。要說缺點麼?嗯,AFRL平日裡得禁止禿鷹群的PS3聯網,再就是,他們得精心維護這些PS3以儘量避免它們走官方售後維修流程,避免被索尼強制升級固件。

禿鷹群於2015年正式退役,這個系統的部分PS3主機被AFRL捐贈給民間研究機構繼續發揮其作為超算節點的價值,剩餘一部分PS3則流入二手遊戲市場。

想当年,美军是如何拿PS3组建超级计算机的

AFRL的禿鷲群,據稱它一度是美國國防部性能最強的超算

至於玩家同索尼的官司嘛,到了2016年6月,索尼總算是同意為北美地區近1000萬購買了初期版PS3(即可以安裝第三方Linux系統的舊版PS3)的北美玩家提供有限金額的賠償,前提是玩家必須證明自己當時在PS3內安裝過Linux系統,或是證明自己購入PS3的原因之一是為了安裝第三方操作系統。此項賠償僅限於2006年11月到2010年4月在北美地區購買初期版PS3主機的玩家,也許AFRL的那幫大兵哥很不幸地錯過了理賠的批次……

AFRL的禿鷹群后來成了一個典故,出現在美劇《疑犯追蹤》(Person of Interest)中。在這部美劇第五季第一集裡,主角一行需要一臺性能強勁的超算來釋放某個對世界安危至關重要的AI,在沒有其他工具可用的前提下,主角臨時拿一堆廢舊的PS3組建出一臺超算,並且耗電量“只有同級別的十分之一”,如此拯救了世界。

問題來了:為什麼《疑犯追蹤》劇組偏偏就想到玩這個梗?因為,他們就是禿鷹群退役PS3主機的大買家之一……

想当年,美军是如何拿PS3组建超级计算机的

《疑犯追蹤》裡的橋段

“索尼大法好”

民間技術大拿競相把PS3當超算組件,索尼官方也沒閒著,他們給出的答案就是Folding@home!

想当年,美军是如何拿PS3组建超级计算机的

Folding@home的工作之一

2007年3月,也就是PS3發佈沒多久後,索尼便高調宣佈PS3正式加入Folding@home。在索尼官方的積極推動下,從PS3的1.6版固件開始,PS3玩家便可讓自己的PS3在閒置時執行Folding@home分發的運算任務,玩家還可以實時觀看Folding@home程序模擬蛋白質摺疊的影像渲染演示。

截至2008年9月,參與的PS3遊戲機已經提供了1.2PFlops的運算能力(1PFlops運算量相當於每秒執行1000萬億次運算)。作為對比,當時全球最快的超算——由IBM耗資1.33億美元搭建的“走鵑”(IBM Roadrunner)——運算能力約為1.026PFlops。走鵑本身大量採用基於Cell技術衍生而來的PowerXCell 8i處理器,它同PS3之間算是有著一定的血緣關係。稍後,IBM正式宣佈停止對Cell系列處理器的跟進研發。

截至2011年,有超過100萬PS3玩家慷慨貢獻出其主機的運算力。實際上,直到NVIDIA和AMD的高性能顯卡GPU加入前,PS3都是Folding@home項目的主力。更有意思的是,微軟Xbox高層也一度考慮為Xbox 360主機引入Folding@home支持,結果索尼聞訊後立即公開嘲諷微軟是“拾人牙慧”和“跟風”。還有個現實問題是,Xbox 360主機的浮點運算能力遠遜於PS3,完全“不堪重任”。很顯然,索尼大有在遊戲主機圈獨佔Folding@home項目支持並藉此塑造品牌之意。實際上,因為微軟最終沒有真正加盟Folding@home,PS3就成了目前唯一一款真正意義上為人類健康事業貢獻過力量的遊戲主機。

2012年,索尼因故停止了PS3對Folding@home的支持。按照官方說法,在這5年內,PS3共為Folding@home貢獻了總計1億小時的運算時間,對Folding@home項目居功至偉。

尾聲

如今,無論是PC還是遊戲主機,硬件機能的迭代速度已經越來越快。以即將問世的微軟Xbox Series X主機為例,其浮點運算能力高達12TFlops,但依舊沒人能保證其性能在追求“真4K”甚至是“8K”的遊戲娛樂時代夠用。此外,我們還必須留意到,如今Folding@home的絕對主力是諸多PC端顯卡——畢竟PC原生便具備各種硬件擴展和升級的優勢,GPU的浮點運算能力也明顯更強,光一張GTX 1080顯卡便具備9TFlops的浮點運算能力。

在PC之外,甚至諸多移動智能平臺也開始充分展現其存在感。有意思的是,安卓版的Folding@home客戶端由索尼聯合斯坦福大學共同開發。

需要注意的是,從PS4、Xbox One世代開始,微軟和索尼均針對自家遊戲主機啟用了更容易開發的x86架構,玩家完全可以將這些主機視為定製版PC。如今,微軟更是為Xbox One引入通用Windows平臺應用商店支持,玩家可以直接讓Xbox One運行諸多得到微軟官方驗證的Windows應用程序。

或許在不遠的未來,我們會重新見證遊戲主機在Folding@home當中大放異彩?


分享到:


相關文章: