1760臺PS3游戲機曾組成全球第33強的超算,這一壯舉再也無法重現

1760臺PS3游戲機曾組成全球第33強的超算,這一壯舉再也無法重現

文章圖片

1760臺PS3游戲機曾組成全球第33強的超算,這一壯舉再也無法重現

文章圖片

1760臺PS3游戲機曾組成全球第33強的超算,這一壯舉再也無法重現

文章圖片

1760臺PS3游戲機曾組成全球第33強的超算,這一壯舉再也無法重現

文章圖片

你可能也曾是一個PlayStation 3玩家 , 也曾是《戰神3》《神秘海域》《殺戮地帶》愛好者 。 關于這款主機 , 曾有個有趣的冷知識:2010年 , 美國空軍用1760臺PS3搭建了一個集群 , 組成了當時全球第33強的超級計算機 , 專門用于處理高清衛星圖像 。

在21世紀 , 用游戲主機組建超算集群已不算什么新鮮事 。 早在2000年 , 就有消息稱伊拉克總統薩達姆試圖進口4000臺PlayStation 2主機 , 宣稱是“作為禮物送給國內兒童” , 卻被有關機構懷疑PS2主機的芯片被用于制造遠程導彈 , 認為其強大的運算能力可以提升伊拉克戰術導彈的地形適配能力 , 最后也是真假難辨 。 但用家用游戲主機組成超級電腦這樣的操作 , 以后恐怕再也見不到了 。

PlayStation 3集群是怎么搭建的?當年 , 索尼允許玩家通過“OtherOS”功能在PS3上安裝其他操作系統 。 這個官方功能可以讓玩家裝上Yellow Dog Linux、Fedora、Ubuntu之類的系統——不過2010年索尼以安全為由移除了它 。 后來黑客們靠自定義固件繼續在PS3上跑Linux , 但這讓該功能徹底脫離了游戲功能 , 索尼還因此惹上集體訴訟 , 差不多十年后才向每位原告賠償了10.07美元 。
據《Phys》雜志報道 , 這個名叫“神鷹集群(Condor Cluster)”的超級計算機 , 每秒能完成500萬億次浮點運算(TFLOPS) , 成本卻只相當于相同性能的“正經”超級計算機的5%到10% 。 美國空軍買每臺PS3花了400美元(按照當時匯率相當于2700人民幣) , 而同等性能的專用設備單臺要1萬美元 , 整個項目下來才花了200萬美元 。 更厲害的是 , PS3的能效高得驚人——神鷹集群的能耗 , 只有同性能超級計算機的10% 。

【1760臺PS3游戲機曾組成全球第33強的超算,這一壯舉再也無法重現】至于怎么讓這么多PS3連起來干活?靠的是消息傳遞接口(MPI)工具 , 比如OpenMPI或MPICH;集群軟件像TORQUE(萬億級開源資源與隊列管理器)、Slurm或HTCondor , 則負責調度任務和分配資源 。 最后再搭個共享存儲 , 讓集群里所有設備能并行訪問同一批數據 。
其實在“神鷹集群”項目之前 , 馬薩諸塞大學達特茅斯分校物理系也曾用近200臺PS3游戲機搭建了一臺類似的超算 , 主要用于天體物理模擬 , 可能是當時“PS3模擬地球”這個梗的由來 。

我們都知道 , 當年PS3對游戲開發者相當不友好 , 它使用的是IBM的Cell處理器——Valve的加布?紐維爾(G胖)曾直言這玩意兒“純屬浪費大家時間” 。 雖說這處理器性能確實強 , 但PS3的硬件和當時的Xbox 360截然不同 , 甚至可以說和之前幾乎所有計算設備都不一樣 。 它有一個主處理單元(PPE)和七個協同處理單元(SPEs) , 其實本來是八個 , 不過為了提高良品率 , 索尼屏蔽了一個 。 開發者得從頭學起 , 才能為這種全新架構做游戲 , 這也意味著主機發售好幾年后 , 性能潛力還未被完全挖掘 。

時任索尼電腦娛樂CEO平井一夫曾在《PlayStation官方雜志》上說 , 這是故意設計的 。
“我們不造開發者想要的‘好編程’主機 , 因為‘好編程’意味著誰都能輕松榨干硬件性能 , 那接下來的九年半里 , 我們還能拿出什么新鮮東西?”
這話好像有點道理 , 但給開發者添的麻煩可不小 。 不過 , 這種獨特架構雖然讓集群搭建更復雜 , 卻也讓PS3成了并行計算的一把好手 。

說起來 , PS3特別適合組建集群 , 核心原因就在那八個SPEs——它們有點像現在的GPU核心 , 專門擅長快速處理大量簡單運算 。 用PS3組集群 , 相當于用低成本拿到了能并行處理海量數據的硬件;再用MPI橋把一堆機器連起來 , 自然成了想搭超級計算機的人的香餑餑 。
為什么這樣的奇跡再也不會發生了?對索尼來說 , PS3能被用來組超級計算機 , 問題主要出在兩方面 。 首先 , PS3史上第一次成功越獄(能讓玩家玩盜版游戲、裝自制程序) , 就是利用了OtherOS功能 。 破解思路來自十幾年前的一個論壇帖子:“在OtherOS里 , 七個SPU都是空閑的 。 你可以命令一個SPU(具體怎么做就留給讀者自己琢磨了)加載metldr , 再加載你想加載的程序 , 然后解密任何東西——從安裝包到執行文件 , 包括未來版本的 。 ”
意思就是 , 破解者能利用其中一個SPE解密機器上的所有內容 。 SPU是SPE的核心 , 每個SPE還有256KB本地存儲和一個內存流控制器(MFC) 。 簡單說 , 破解者就是靠OtherOS拿到了PS3的密鑰 。

既然OtherOS成了PS3的安全漏洞 , 索尼肯定要鎖死并移除這個功能 。 畢竟 , 有了OtherOS , 用戶就能完全掌控系統 , 美國空軍能用近2000臺PS3搭超級計算機 , 靠的也是這個 。 雖說索尼的虛擬機監控程序本應限制對RSX“現實合成器”GPU的訪問 , 但后來啟用OtherOS的監控程序還是被破解 , 導致系統被破解者完全掌控 。
不過 , 盜版和安全還不是根本原因 。 索尼和微軟的每一代主機 , 在發售初期大多是虧本賣的 , 只為了定一個對玩家有吸引力的價格(當然發售幾年后會逐漸收回硬件成本) 。 傳統游戲公司主要靠游戲授權賺錢 , 所以主機售價可以低于生產成本——反正默認買主機的人會買游戲 , 靠游戲把錢賺回來 。 就算主機虧了 , 游戲銷量也能補上 。
但問題來了:像美國空軍這樣用PS3組超級計算機 , 索尼賣一臺就虧一臺 , 還沒法靠游戲把錢賺回來 。 這些主機根本不會用來玩游戲 , 索尼虧的錢就成了打水漂 。 倒不是說索尼缺這點錢 , 而是再推出帶OtherOS這種功能的主機 , 既不能靠虧本定價搶占市場 , 還可能給未來的盜版留口子 , 實在沒好處 。

如今的主機市場雖說有變化 , 但虧本賣主機的做法還挺常見 。 2021年 , 索尼CFO十時裕樹說 , 500美元的帶光驅版PS5一開始是虧本賣的 , 后來才盈利;而數字版PS5在發售一年后還在繼續虧本 。 Xbox Series X當時也虧本賣 , 直到現在似乎仍未實現硬件盈利 。 不過任天堂不太一樣 , 主機自從NGC之后一直走低性能賽道 , 只有特價后的3DS和Wii U曾虧本賣過 。
PS5和Xbox Series X均采用基于AMD架構的定制化硬件設計 , 核心架構圍繞x86-64指令集 , 已與個人PC無異 , 失去了組建集群的意義 , 當年PS3的壯舉恐怕再也不會重現了 。

    推薦閱讀