機(jī)器之心編輯部
一段原本為英偉達(dá) CUDA 設(shè)計(jì)的計(jì)算程序,幾乎無(wú)需修改內(nèi)核代碼,就直接跑在了一臺(tái)搭載 M3 Pro 的蘋果設(shè)備上。
![]()
這是 X 網(wǎng)友 @Abhinav 昨天公布的一項(xiàng)進(jìn)展。更讓人意外的是,它并非一個(gè)簡(jiǎn)單的「向量加減乘除」演示,而是在真實(shí)的三維流體模擬任務(wù)中,實(shí)現(xiàn)了約 10 倍的速度提升。
![]()
這件事的背后,有一個(gè)特殊的參與者 ——GPT-5.6 Sol。
事情發(fā)生在開源科學(xué)計(jì)算平臺(tái) OpenFPM 上。研究人員一直在做一件很多人認(rèn)為「不太可能」的事情:讓原本為 CUDA/HIP GPU 設(shè)計(jì)的高性能計(jì)算程序,跨過(guò)平臺(tái)壁壘,運(yùn)行到蘋果自己的 Metal GPU 架構(gòu)上。
為什么這很難?過(guò)去十幾年,GPU 計(jì)算領(lǐng)域高度碎片化 —— 英偉達(dá)有 CUDA,AMD 有 HIP,蘋果有 Metal。這些生態(tài)如同不同語(yǔ)言,互相不兼容。一個(gè)用 CUDA 寫成的程序,通常需要大量重寫才能在其他平臺(tái)運(yùn)行。
但這次,開發(fā)者沒有選擇重新開發(fā)一套 Metal 版本,而是搭建了一條轉(zhuǎn)換通道:程序先經(jīng)過(guò) Clang/HIP 處理,再通過(guò) SPIR-V、Vulkan 和 MoltenVK 等中間層,最終讓蘋果 Metal GPU 能夠理解并高效執(zhí)行。
更重要的是,他們完全沒有添加任何 Metal 專用的粒子 API。應(yīng)用層仍保留原有的 CUDA/HIP 風(fēng)格 kernel 調(diào)用,實(shí)現(xiàn)了真正的硬件透明。
在這個(gè)過(guò)程中,GPT-5.6 Sol 發(fā)揮了關(guān)鍵作用。它幫助完成了設(shè)備端內(nèi)存布局構(gòu)建,用約 6 小時(shí)的時(shí)間發(fā)現(xiàn)了 MoltenVK 和 SPIR-V 中的兼容性問(wèn)題,并設(shè)計(jì)了相應(yīng)的變通方案。
![]()
項(xiàng)目鏈接:https://github.com/mosaic-group/openfpm/pull/18
真正考驗(yàn)這項(xiàng)工作的,是一個(gè)復(fù)雜的測(cè)試用例 —— 三維 SPH 大壩潰壩模擬。這個(gè)任務(wù)需要同時(shí)處理掃描、排序與重排、單元格和相鄰列表構(gòu)建、ghost 粒子交換、歸約操作以及原子操作等多個(gè)復(fù)雜模塊,任何一個(gè)環(huán)節(jié)出問(wèn)題,都會(huì)導(dǎo)致性能下降或物理結(jié)果偏差。
但測(cè)試結(jié)果出乎預(yù)期。在搭載 M3 Pro 芯片的蘋果設(shè)備上,使用 Metal GPU 運(yùn)行,約 6 秒完成;使用 CPU 順序計(jì)算,約 60 秒完成。也就是說(shuō),同一個(gè)程序,僅僅更換計(jì)算硬件,就獲得了約 10 倍的速度提升,且 GPU 利用率接近 100%(表明轉(zhuǎn)換效率很高)。
更重要的是,速度提升并不是以犧牲準(zhǔn)確性換來(lái)的。開發(fā)者進(jìn)一步檢查了模擬結(jié)果,發(fā)現(xiàn)蘋果 GPU 版本和原始計(jì)算版本最終得到的物理結(jié)果保持一致,包括關(guān)鍵參數(shù)和模擬軌跡都高度接近。這意味著,蘋果 GPU 不僅跑起來(lái)了,而且真正完成了科學(xué)計(jì)算任務(wù)。
開發(fā)者進(jìn)一步指出,粒子存儲(chǔ)隨粒子數(shù) N 線性增長(zhǎng),而鄰居搜索等工作量大致為 O (N?k)(k 為固定密度下的鄰居數(shù))。目前展示的 10 倍加速是單機(jī)后端對(duì)比的結(jié)果。未來(lái),借助蘋果 Thunderbolt 支持的 RDMA 技術(shù),還可以實(shí)現(xiàn)多機(jī)動(dòng)態(tài)負(fù)載均衡,讓模擬在多臺(tái)設(shè)備上擴(kuò)展。
當(dāng)然,這項(xiàng)突破距離改變整個(gè) GPU 產(chǎn)業(yè)還有距離。目前蘋果 Metal GPU 最大的限制之一,是對(duì)高精度浮點(diǎn)計(jì)算支持不足,而很多專業(yè)科學(xué)計(jì)算領(lǐng)域依賴雙精度運(yùn)算。因此,在天氣預(yù)測(cè)、航空航天模擬等超級(jí)計(jì)算場(chǎng)景中,英偉達(dá)專業(yè) GPU 仍然占據(jù)優(yōu)勢(shì)。
不過(guò),也有人質(zhì)疑這項(xiàng)探索的意義,一位網(wǎng)友表示:「市面上明明有那么多更合適的系統(tǒng),在 Mac 上跑這種小仿真,到底有什么用?」言下之意是,MacBook 的 GPU 再快,也終究不是為科學(xué)計(jì)算而生的,這件事聽起來(lái)更像一場(chǎng)炫技。
開發(fā)者的回應(yīng)頗為坦率:「最大的用處,就是好玩,以及工作順手。」他解釋說(shuō),團(tuán)隊(duì)的大規(guī)模仿真本就跑在集群上,而這次能在蘋果架構(gòu)上跑通,恰恰驗(yàn)證了設(shè)備抽象層的設(shè)計(jì)是成立的。更實(shí)際的理由藏在日常開發(fā)里 —— 跑大仿真之前,總要先用小仿真調(diào)試,而本地調(diào)試靠 CPU 實(shí)在太慢;仿真結(jié)果動(dòng)輒幾個(gè) GB,SSH 根本傳不回來(lái),遠(yuǎn)程桌面又笨重難用,不如直接在本地跑。最妙的地方在于,在筆記本上調(diào)試通過(guò)的那份代碼,原封不動(dòng)地放到 GPU 集群上,就能自動(dòng)擴(kuò)展規(guī)模。
![]()
這項(xiàng)探索還證明了:同一套 CUDA/HIP 風(fēng)格的算法,可以相對(duì)透明地運(yùn)行在 Apple Silicon 等不同硬件后端上。未來(lái),軟件開發(fā)者或許不再被單一 GPU 生態(tài)所綁定。
![]()
此外,這也展現(xiàn)了 AI(GPT-5.6 Sol)正在從「幫助寫代碼」走向「參與底層系統(tǒng)設(shè)計(jì)、優(yōu)化和跨平臺(tái)工程調(diào)試」的新階段。
蘋果 GPU 這次跨過(guò) CUDA 鴻溝,可能只是一個(gè)開始。
參考鏈接:https://x.com/Abhinavsns/status/2079774018748694696
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.