最近AMD在2020年財務分析師大會,宣布讓人極度訝異但也不會太意外的「雙軌化GPU發展路線」:在GPU「泛用化」基礎上,「遊戲優化的RDNA」和「運算導向的CDNA」分道揚鑣,「體內DNA不同的」兄弟登山,各自努力。老對手nVidia這幾年來也是分開專業與遊戲GPU,但也沒有誇張到「讓上一代架構繼續枝繁葉茂」。
更諷刺的是,CDNA並非「全新GPU架構」,而是回頭繼續發展第四時代的「南方群島系列」CGN繪圖核心,這重大決定象徵2006年7月購併ATI的AMD,融合CPU與GPU的「Fusion」與昔日GPGPU大戰略的野心終結,以及AMD對市場局勢的致命誤判。
當「運算」和「遊戲」分而治之:GCN的Vega與RDNA的Navi
套用現在市面產品,RDNA和CDNA說穿了,分別是AMD現行同為臺積電7納米製程的「Vega」(織女星)和「Navi」(仙后座),分屬第四時代的GCN(Graphic Core Next)與第五時代的RDNA(Radeon DNA)。GCN從2012年到2019年,製程橫跨28納米、14納米、12納米到7納米,演進5個版本,唯一共同點只有從未實質威脅到nVidia的GPU霸業。
這兩者的設計理念也大相逕庭,GCN是「追求GPGPU的泛用理想」而「Easy To Program For Performance」,「讓ATI Radeon的遊戲基因再度偉大」的RDNA則是「Easier Achieved Performance」,一個讓你寫程序做自己想做的事情,另一個讓你玩遊戲不需擔憂性能不足,差異不言可喻。很久以前就不乏「GCN為運算而生,不太像為了遊戲的架構」的說法。
7納米Vega的弦外之音
2019年2月發布臺積電7納米製程「Vega 20」核心的Radeon VII,距離預定的全新Navi不到半年,外界第一時間會聯想到的可能性,大致如下:
但Vega 20相較三星14納米製程的前代,有了飛躍性改進:
順便一提,Navi跑OpenCL不但沒Vega快,連Navi核心的RX5700XT還跑輸GCN4時代Polaris(北極星)核心的RX590。這些都是Vega即將「轉換」純運算應用的強烈信號。
至於先前隨著MacOS測試版大量洩露的AMD GPU代號與近來流竄坊間的謠言,也間接透露AMD的「雙軌共構大計」。
「全新CDNA」的「Arcturus」(大角星):臺積電7納米+(EUV)製程,晶粒面積應該會大的恐怖,實際上的第六代GCN架構,核心規模高達128組CU單元,SP單元更會多達8,192個,32GB HBM2E內存,最大理論運算能力約為26TFlops(FP32)與105TOPs(INT8)。Infinity Fabric的多GPU延展性,將是反攻超級計算機市場的關鍵武器,但能否像nVidia具備人工智慧需要張量(Tensor)運算單元,就不得而知了。
同場加映「好相好」nVidia下一代「Ampere」的旗艦晶片GA100的謠傳規格:臺積電7納米+(EUV)製程,晶粒面積是驚世駭俗的826mm ,核心規模高達128組SM單元,SP(CUDA Core)單元8,192個,前代2倍數量的張量運算核心(Tensor Core),48GB HBM2E內存,最大理論運算能力約32TFlops(FP32)。
先不論AMD「兩顆打一顆」的策略是否有奏效,但唯一可確定的是,AMD已用實際行動,承認投資多年的GCN無力兼顧遊戲市場,也沒顧好原先鎖定的應用,這些問題的種子,早在AMD購併ATI時就已種下,還綻放出如紅火鮮豔的災難之花。
AMD對Fusion的怨念註定一連串亂局
2006年耗費54億美元購併繪圖晶片巨頭ATI的AMD,不但仿照擁有低功耗小核心Atom的Intel,同時研發兩種應用截然不同的x86 CPU核心,並很快就以融合CPU與GPU的「Fusion」為未來戰略主軸,APU(Accelerated Processing Unit)則是成果──雖然一開始就出師不利。
AMD公開Fusion大戰略時,剛好是英特爾對AMD發動帝國大反擊的關鍵時刻,或多或少讓人感覺到AMD大事不妙,但因仰仗K8的豐功偉業而讓AMD的CPU「餘威猶存」,nVidia沒有x86 CPU,Intel繪圖核心的性能和技術有多糟糕就更著毋庸議,所以當時外界普遍看好AMD結合自家CPU與ATI GPU的高性能單晶片解決方案,更吸引了眾多投資者目光。
隱藏在Fusion戰略背後的是AMD更巨大的野心:讓走上泛用化之路的GPU,成為AMD無法被撼動的絕對優勢。試想一個場景:假若GPU足以在現實生活的應用,完全取代現有CPU的浮點運算,甚至某部分整數運算,又和CPU融合為一,這天大的好事一旦發生在2010年初期的AMD,那英特爾和nVidia真的都要閃一邊去了;也因此AMD拼命鼓吹「異質運算」(Heterogeneous Computing),吹得很大很用力,企圖創造「CPU與GPU共同的勝利」。
這也是AMD在後K8時期的x86處理器架構轉向集群多線程(CMT,Cluster-Based Multi-Threading)的深層緣由,兩個簡單的整數運算核心共享一個「模塊化」浮點運算單元,一方面拼帳面核心數量,另一方面假以時日將浮點運算器「狸貓換太子」成萬事皆備的GPU,Fusion大戰略就此功德圓滿,雞犬升天。
從享有中間位置的地利之便變成兩頭皆空
AMD 2020年財務分析師大會再度扶正的GCN,是在這個時代背景下誕生的產物。
2009年底到2010年初,正是喊了很久的GPU泛用化侵入CPU領域的第一步:支持IEEE 754浮點數規範。但舊有ATI體系的第三代TeraScale,超長指令集(VLIW)架構的程序真的比較難寫,已證明無力在GPGPU抗衡「引領nVidia GPU更大幅接近主流泛用CPU的Fermi」,源自純正AMD血統、多線程SIMD化的GCN自然是理所當然的救世主,然後2012年初登場就被nVidia的Kepler華麗打爆,從該蹶不振。
備多力分的AMD也開始在執行面諸事不順,集群多線程的推土機(Bulldozer)核心一再延誤,讓初代APU「Llano」只能沿用老舊的K10核心,而集成的GPU也是性能不太夠力的舊時代TeraScale 2,導致倍受期待的Llano淪為市場定位不上不下、高不成低不就的尷尬產品,不僅讓AMD在2012年第二季營收下滑、股價下跌,第三季被迫打消價值高達1億美元的Llano庫存呆帳,演變成不甘利益受損的投資者群起控告AMD,最後AMD花了2,950萬美元補償投資者損失的悲慘結局。
後面接連數年的劇情就如各位所見,無論CPU還是GPU,AMD就被英特爾和nVidia一路狂扁到2018年,像德國一樣在歐陸享有「中央位置」地利之便的AMD,反而弄巧成拙遭兩面夾殺。
更重要的是,GPGPU的軟體生態系統統遲遲沒有增長到AMD十多年前樂觀預期的水準,加上英特爾積極擴張SIMD指令集(最具代表性的是2011年Sandy Bridge的AVX)穩定提升x86 CPU的浮點性能,「GPU越俎代庖,替換CPU的浮點運算器或大部分功能」根本毫無美夢成真的條件,當下保證網絡瀏覽器能有效藉由GPU加速就不錯了。
這年頭「會做很多事情,有多重專業」的「斜槓」是非常流行的「激勵鬥志的心靈術語」,但不是每個人都有本事畫出那條斜線,角度一沒抓好,就變成「刪除線」了。
內存帶寬仍是GPGPU性能的瓶頸,尤其是AMD
相信不少人一看到AMD的雙軌化GPU路線,馬上想到的第一個主因是「兩邊用的內存不一樣,一邊HBM、一邊GDDR,nVidia目前計算用主力產品Volta也是HBM,人工智慧推論仍是GDDR6的Turing」。
在GPGPU進入平常百姓家的漫漫長路,「每個運算可分配到的內存帶寬穩定下滑」一直是看不見的痛,高性能浮點運算和人工智慧也同,要提高性能,絕非增加幾個矩陣計算和人工智慧特化導向指令那麼簡單,帶寬不足就發揮不出性能。相對於增加指令多佔用的執行單元布局空間,運算可用帶寬的配套措施,會更讓GPU廠商感到頭痛。
高性能浮點運算或深度學習專用的GPU勢必搭配HBM內存這件事,Google自家TPU就是最好例證。如果用不起昂貴的HBM,只能亡羊補牢,從GPU內部的緩存內存架構壓榨出一絲一毫帶寬。AMD在Navi的緩存內存大興土木,原因就在此,過去所有歷代GPU,這部分更是不可或缺的重頭戲。
不過一說到內存帶寬這檔事,不禁讓人回憶起nVidia早從2004年NV40時代,內存控制器就內置壓縮傳輸功能,相關技術持續推陳出新,並據聞都已申請專利。以往十幾年,AMD的GPU要達到相同性能水準所需的內存帶寬,都比nVidia高出許多,這難道就是「這些年來,我們一起納悶不已的怪現象」之完美解答嗎?絕對不是,應該不是,也許不是,希望不是。
看不見的商業現實:內存「期貨」的潛在利潤
優秀技術不見得見容於商業的現實,顯卡用的內存當然也是。
AMD早在2015年就在第三代GCN的Fiji(Radeon R9 Fury X)率先在GPU導入HBM,後來也在第五代GCN的Vega放了HBM2,看在內存饑荒方興未艾的份上,應可合理預期越來越多GPU與HBM「送作堆」。但這些年來也未見HBM比較普及,連nVidia也將HBM限定在高端計算用產品,除了成本和產能考量,「擋人財路」恐怕也是主要因素。
這年頭價格起起伏伏的內存早就成為某種形式的「期貨」,內存的漲跌價差也是顯卡廠商可通過採購策略取得的獲利來源,當GPU直接包內存,就等於斬斷這條賺錢渠道,產品也難以做出差異化。換言之,唯有包裝成高單價利基產品的運算卡,保留更多利潤給客戶,才能有幸一親芳澤,AMD硬推HBM繪圖產品就顯得相當一廂情願,或可視為對市場生態的錯誤判斷。
總之,假如連CPU也沒機會雨露均沾,看來將有很長一段時間看不到HBM出現在一般個人計算機內部,也沒可能看到「像Radeon R9 Nano或Vega 56 Nano這種可塞入Mini-ITX專用機箱的超小型旗艦級顯卡」,真是可喜可賀。
雙軌放兩邊,應用擺中間,Fluid Motion就這樣死透了嗎?
總之,AMD想搞多少條軌道建設,外人無從置喙,但倒是有兩件事值得大家多多關注:
(首圖來源:AMD)