編者按:人們往往會用波峰和波谷來形容股票的走勢。但是往往卻會忽視最重要的時間維度。從短期看,你也許能分出明顯的波峰波谷,但如果再放眼到更長的時間維度,過去站在最高點的波峰,也不過是站在未來最低點的腳下而已。現如今,英偉達正在被市場看低,但一位知名科技博主指出,其實這家公司正在同時穿越三個山谷,一旦它成功抵達天國之城,就將成為未來元宇宙最重要的基礎設施。文章來自編譯。
英偉達的投資者之前一直都處在山谷之中:
英偉達的股價跌跌不休
不過,這張圖表不是英偉達最近兩年的情況,而是其從2017 年初到2019 年初的股價走勢;下面這張是它從2017 年到今天的股價走勢:
英偉達當前的股價正在跌跌不休
過去三年,英偉達的業務發生了三件大事,將他們的股價推到了前所未有的高度:
-
疫情導致個人電腦購買量激增,尤其是遊戲圖形卡的購買量激增,因為客戶既要買新電腦,手頭又有一筆可自由支配的收入沒地方花,就只能追求更好的遊戲體驗了。
-
機器學習應用在超大規模計算(hyperscalers)中出現爆發式增長,而這些都是用英偉達的GPU 訓練的。
-
加密貨幣泡沫導致對英偉達芯片的需求猛增,因為要掙錢(挖礦)得靠求解以太坊工作量證明(POW)方程。
加密貨幣的走勢與其說是山谷,不如說是懸崖:以太坊成功切換到權益證明(POS)模型,令由成千上萬的英偉達GPU 搭建出來的一整個礦場在一夜之間變得一文不值;鑑於另一個採用工作量證明的主要加密貨幣網絡,也就是比特幣,幾乎完全是用定制設計的芯片來開采的,所以所有這些舊的GPU 都湧入到二手市場。對於英偉達來說,這是一段特別糟糕的時期,因為該公司之前為了滿足對3000 系列芯片的需求而付出的努力正值收穫回報之際,疫情帶來的購買熱潮卻已經結束。不用說,太多的新庫存再加上太多的二手庫存使得公司的財務業績糟糕無比,尤其是英偉達還在打算為新系列清理渠道:
英偉達的遊戲收入也下降了
上週在接受采訪時,英偉達首席執行官黃仁勳(Jensen Huang)坦誠,公司沒有預見到這一點:
我不覺得我們本可以預見到這一點。我不認為我會做什麼不一樣的事情,但我從之前的例子學到了一點,那就是一旦事情最終發生在你身上時,就唯有吞下苦果,然後放下……我們度過了兩個糟糕的財季,在公司的背景下,兩個糟糕的財季確實會讓所有投資者感到沮喪,讓所有員工感到艱難。
英偉達以前也遇到過這種情況。
出問題應對就是了,不要過度情緒化,了解問題是怎麼出來的,讓公司盡可能保持敏捷。但是一旦既成事實,你只能做出客觀、艱難的決定。我們照顧好我們的合作夥伴,我們照顧好我們的渠道,我們確保每個人都有足夠的時間。我們推遲了Ada 的發售,從而確保各方都有足夠的時間來對產品進行重新定價,這樣即便在Ada 的背景下,即便Ada 出來了,重新定價後的產品其實還是具備非常好的價值的。我認為我們已經把各方都盡量照顧到了,這導致了兩個相當糟糕的季度。但我認為從大局來看,我們很快就會回來的,所以我認為這也許是過去的教訓。
這個說法也許有點託大;今年早些時候,Tae Kim 與Doug O’Laughlin 等分析師預測英偉達的股價會暴跌,儘管鑑於英偉達在疫情中期已經訂購了額外的一批3000 系列GPU,這些預測對於避開PC 銷售放緩與以太坊(從工作量證明)過渡的完美風暴大概已經為時已晚(黃仁勳還指出,芯片的生產前置時間增加是英偉達錯得如此厲害的一個重要原因)。
對於英偉達來說,更令人擔憂的是,雖然庫存和以太坊問題是經歷了“相當糟糕的財季”的最大的驅動因素,但這還不是其遊戲業務正在經歷的唯一低谷。我想到了約翰·班揚(John Bunyan)的《天路歷程》(Pilgrim’s Progress):
可是在屈辱谷裡,可憐的信徒可夠受了;因為他還沒有走多遠,就看見一個叫做魔王(Apollyon)的兇惡的敵人在田野裡迎面而來。
這個魔王叫做庫存問題;故事裡信徒打敗了魔王,英偉達最終也能戰勝庫存問題。
走完這個山谷,又是一個叫做死蔭谷的山谷;信徒必須要從這兒經過,因為到天國去的路就在它中間穿過。這山谷是個非常冷落的地方。先知耶利米對它這樣形容過:“一片曠野,一片沙漠有深坑之地,一片乾旱和死蔭之地,一片無人(除了信徒)經過、無人居住之地。”
上周英偉達關於GTC 的主題演講令人震驚的是這個寓言在多大程度上契合英偉達的野心:該公司正在走上一段似乎相當孤獨的旅程,去定義遊戲的未來,現在還不清楚業界其他人會不會跟進或者什麼時候跟進。此外,該公司在數據中心以及元宇宙方面也在追求同樣大膽的戰略:在所有這三個方向上,英偉達要追求的高度比它在過去兩年里達到的那些成就都要高,但路徑卻是出奇的不確定。
山谷中的遊戲:光線跟踪與人工智能
長期以來,3D 遊戲的呈現都要靠一系列的技巧,尤其是照明方面的技巧。首先,遊戲決定了你能看到什麼(也就是渲染一個被其他物體遮擋的物體是無用功);然後,你得給物體(如一棵樹、一棵草或任何你能想像到的東西)應用合適的紋理。最後,你得從預先確定的光源位置去打光,然後再給物體添加陰影。最後再把整個場景轉換成一個個的像素,渲染到2D 屏幕上;這個過程叫做光柵化。
光線跟踪對光線的處理方式是完全不一樣的:光線跟踪不是用預先確定的光源來打光,應用陰影映射,而是從你的眼睛(或更準確地說,是你觀察場景的攝像頭)開始。然後再跟踪目光所及的屏幕的每一個像素,然後(基於像素所代表的對像類型)對像素進行折射處理,並繼續跟踪該光線,直到光線擊中光源(然後就進行光照處理),或者丟棄這條光線。這種處理能產生非常逼真的打光效果,尤其是反射和陰影效果。不妨看看下面這一來自《PC Magazine》 的圖片:
我們來看看光線跟踪是如何改善了遊戲的視覺效果的。我截取了Square Enix 的《古墓麗影:暗影》PC 版的幾張屏幕截圖,這款遊戲是支持Nvidia GeForce RTX 顯卡的光線跟踪陰影效果的。可以仔細看看地面上的陰影。
與效果更粗糙的光柵化版本相比,光線跟踪的陰影效果更加柔和、更為逼真。其暗度取決於被物體遮擋住的光量多寡,甚至陰影本身都有明暗之分,而光柵化似乎給每個物體都賦予了一個非常生硬的邊緣。光柵化的陰影效果看起來還不錯,但是在玩了帶有光線跟踪陰影效果的遊戲之後,就很難回去了。
英偉達是在2009 年首次宣布API 支持光線跟踪的;不過,使用這種技術的遊戲寥寥無幾,因為這種技術的計算成本很高(電影CGI 倒是運用了光線跟踪技術;不過,那些場景渲染一般都需要數小時甚至數天的時間;可遊戲的渲染卻必須是實時進行的)。所以2018 年英偉達才推出了引入了專用光線追踪硬件的GeForce 2000 系列顯卡(所以才叫做“RTX”)。 AMD 則走了另一條路,給其核心的著色器單元添加了光線跟踪功能(同時還進行光柵化處理);與英偉達的純硬件解決方案相比AMD 的要慢一些,但能用,而且重要的是,由於AMD 同時為PS5 和Xbox 製造顯卡,這意味著現在整個行業都支持光線追踪技術了。將來會有越來越多的遊戲支持光線追踪,不過由於性能問題,大多數應用仍然相當受限。
不過,光線跟踪很重要一點在於:光照效果是動態計算出來的,而不是靠光線和陰影貼圖,所以開發者可以“免費”獲得光照效果。完全依賴光線跟踪技術的遊戲或3D 環境開發起來應該更容易、更便宜;更重要的是,這意味著環境可以以開發者從未預料到的動態方式發生變化,而且與大多數靠手工費力預製的環境相比,其光照效果還更為逼真。
對於兩個新興的應用場景而言,這一點尤其吸引人:一是像《我的世界》(Minecraft)一樣的模擬遊戲。有了光線追踪技術,擁有高度詳盡的3D 世界這個夢想會變得越來越接近現實,因為這些3D 世界都是動態構建的,而且擁有完美的光照效果。未來的遊戲可以走得更遠:英偉達的主旨演講一開始就介紹了一款叫做RacerX 的遊戲,包括物體在內,遊戲當中的每一個部分都進行了完整的模擬;遊戲內的物理特性也利用了相同類型的光照計算。
第二個場景是我在《DALL-E、元宇宙與零邊際成本內容》中討論過的AI 生成內容的未來。我上面提到的所有紋理目前都是手工繪製的;隨著圖形功能(主要由英偉達推動)的增強,由於需要創作高分辨率的資產,新遊戲的開發成本也會隨之增加。因此,可以想像,將來有可能資產完全是自動化創建出來的,而且是實時進行的,然後再通過光線跟踪技術賦予合適的光照效果。
不過,目前英偉達已經在用AI 來渲染圖像了:該公司此次還發布了深度學習超級採樣(DLSS)技術的第3 版。這項技術可以預測幀並進行預渲染處理,這意味著那些幀根本不需要計算(之前版本的DLSS 需要對獨立像素進行預測和預渲染)。此外,就像光線跟踪技術一樣,英偉達也採用了專用硬件,讓DLSS 的性能更好。這些新做法搭配上英偉達GPU 的專用內核,令英偉達非常適合為遊戲與沈浸式3D 體驗(如虛擬世界)建立全新的範例。
但問題是:所有這些專用硬件都要付出代價。英偉達的新GPU 是大芯片——頂級的AD102,以RTX 4090 的形式出售,這是一款完全集成的片上系統,採用台積電N4 工藝,尺寸為608.4 平方毫米;相比之下,AMD 即將推出的RDNA 3 顯卡系列內置的頂級芯片Navi 31 芯片是小芯片(chiplet)設計,採用台積電N5 工藝,尺寸為308 平方毫米,加上採用台積電N6 工藝的6 顆37.5 平方毫米的內存芯片。簡而言之, 英偉達的芯片要大得多(這意味著更貴),而且它採用了稍微更現代的工藝流程(可能成本會更高)。 Dylan Patel 在SemiAnalysis 上解釋了這種做法的潛在影響:
簡而言之,通過放棄AI 和光線追踪固定功能加速,轉而採用先進封裝的更小芯片,從而節省了大量芯片成本。 AMD 的RDNA 3 N31 和N32 GPU 的先進封裝成本顯著上升,但相對於晶圓和成品率成本來說,小型扇出RDL 封裝仍然非常便宜。到頭來,與通過將內存控制器與無限的緩存拆分、使用更便宜的N6 而不是N5 ,以及更高的產出所節省的成本相比,AMD 封裝成本的增加就不值一提了……在接近十年的時間裡,英偉達在傳統光柵化的遊戲性能方面第一次出現成本結構更糟的局面。
這就是英偉達正在走進的山谷。由於4000 系列的高昂價格,在英偉達做完主旨演講之後,尤其是當英偉達的網站上的細則表明英偉達發布的其中一款二級芯片其實更類似於三級芯片換了個馬甲時,遊戲玩家們馬上開始竭力反對,他們懷疑英偉達是在玩營銷遊戲來掩蓋價格的大幅上漲。 Nvidia 的顯卡性能也許是最好的,而且毫無疑問最適合未來的光線追踪與AI 生成內容,但代價是它無法為當今的遊戲提供最佳的價值。要達到純模擬虛擬世界的高度,需要熬過一代的時間,對大多數遊戲玩家還不關心的功能進行收費。
在山谷中的人工智能:是系統,而不是芯片
對英偉達在遊戲方面的做法持樂觀態度的原因之一,是該公司在發明著色器(shader)時已經對未來下了類似的賭注。我曾經在去年的GTC 之後解釋過著色器:
英偉達先是憑藉Riva 和TNT 系列視頻卡(經過了硬編碼,可對類似微軟的Direct3D 等3D 庫進行加速)而聲名鵲起:
不過,GeForce 系列可以通過一種叫做“著色器”的計算機程序進行充分編程。這意味著哪怕是在製造出來之後,GeForce 卡也可以通過開發新的著色器(比方說用來支持新版本的Direct3D)來加以改進。
更重要的是,著色器不一定就得是渲染圖形;任何類型的軟件——理想情況下任何可以並行運行的簡單計算程序——都可以編程為著色器;訣竅是弄清楚如何寫這種程序,這就是CUDA 的用武之地。我在2020 年的那篇談英偉達的集成夢想的文章中解釋道:
這種抽象層次的增加意味著底層圖形處理單元可以更簡單,這意味著圖形芯片可以擁有更多的GPU。比方說, 英偉達剛剛發布的GeForce RTX 30 系列最先進版本的內核數達到了令人難以置信的10496 個。
這種程度的可擴展性對視頻卡來說很有意義,因為圖形處理完全是並行處理的:一塊屏幕可以分成任意數量的多個部分,每一部分均可同時獨立計算。這意味著性能可以水平擴展,也就是說,每增加一個內核都能提高性能。不過,事實證明,可以充分並行運算的計算類型並不只有圖形而已……
所以英偉達才從模塊化的組件製造商變成了軟硬件集成製造商。模塊化組件是指它的顯卡,而軟硬件集成是指它的CUDA(統一計算設備架構)的平台。 CUDA 平台可以讓程序員通過多種語言訪問英偉達顯卡的並行處理能力,但又不需要了解如何對圖形進行編程。
現在Nvidia &技術棧有三個層級:
不過,要想了解CUDA ,重要的一點是要知道它並不僅僅是讓外部程序員能夠為英偉達的芯片編寫程序,CUDA 也為英偉達本身賦能了。
這大部分是出於絕望。去年春天,黃仁勳在接受我們採訪時解釋到,在他看來對公司未來至關重要的著色器的引入,幾乎殺死了這家公司:
可編程性的缺點是效率要差一些。正如我之前所提到的那樣,功能固定的東西更高效。任何東西只要是可編程的,任何光看定義可以做不止一件事情的東西,對於完成任何特定任務來說都會帶來不必要的負擔,所以這裡的問題是“我們該什麼時候做這件事(讓自己的東西可編程)?”當時給我們啟發的一點是,一切看起來都像OpenGL 的飛行模擬(OpenGL Flight Simulator)。一切都可以看成是模糊紋理和三線性插值細化紋理,一切東西都沒有生命,但我們覺得,如果不賦予媒介生命的話,就沒法讓藝術家創造出不一樣的遊戲,不一樣的流派,講述不一樣的故事,而最終媒介也將不復存在。與此同時,我們也希望做出一個更加可編程的調色板,讓遊戲和藝術家可以用它做一些很棒的事情,我們受到了這種野心的驅使。還有一個動機也在敦促我們做這件事,那就是有朝一日就算顯卡被商品化了我們也不會倒閉。所以當這些考量到了一定程度,我們就開始做可編程的著色器,所以我認為要這樣做的動機是非常明確的。但後來我們受到的懲罰是我們沒想到的。
什麼樣的懲罰?
這個懲罰來得太突然,所有我們對可編程性的預期,所有我們為將來所做的,在一切不必要功能方面的開銷,這些都是懲罰,因為當前的應用並不能從中收穫好處。除非出來新的應用,否則的話,我們的芯片會顯得太貴,而現在的市場競爭非常激烈。
英偉達之所以能活下來,是因為他們的直接加速能力仍然是最好的。從長遠來看,英偉達仍將蓬勃發展,因為他們為了利用著色器而開發了一整個CUDA 基礎設施。這就是數據中心增長的來源;黃仁勳解釋道:
從你成為一家處理器公司的那一天起,你就必須內化這一點:這個處理器架構是全新的。以前從未出現過像這樣的可編程像素著色器,或者這樣的可編程GPU 處理器,以及這樣的編程模型,因此我們得內化這個。你必須內化這是一種全新的編程模型,而且與成為一家程序處理器公司或一家計算平台公司相關的一切你都得做出來。所以我們必須建立一支編譯器團隊,我們必須考慮做出SDK,必須考慮建立自己的庫,也必須與開發者接觸,宣傳我們的架構,並幫助人們實現它的好處,如果不行的話,甚至你得自己開發新的庫,讓人們可以輕鬆地將自己的應用移植到我們的庫,然後看到它的好處。
這個故事之所以要再講一遍,第一個原因是要指出著色器複雜性的成本與當前遊戲的光線追踪和人工智能的成本之間的相似之處;二是要大家注意這一點,英偉達解決問題的方法一直都是自己把所有的事情都乾了。在那時候,它意味著要開發出CUDA 來對這些著色器進行編程;而在今天,這意味著要為人工智能開發出整套系統。
黃仁勳在上週的主旨演講中談到:
英偉達致力於通過加速計算來推動科學與工業發展。無需做加速計算即可取得更好性能的時代已經結束了。使用沒有加速支持的軟件,只能花費高昂成本來彌補其性能與擴展性的不足。近30 年來英偉達始終專注於這一領域, 作為加速軟件與擴展計算的專家,英偉達提供了百萬倍的加速,遠超摩爾定律。
加速計算是一項全棧挑戰。需要對問題領域有深入了解,並對計算的每一個層次以及CPU、GPU 與DPU 這三種芯片進行優化。跨多GPU 多節點擴展是數據中心規模所面臨的挑戰,要將網絡和存儲與計算資源統一調配,從PC 到超級計算中心和企業數據中心,從雲端到邊緣,開發者和客戶希望能在許多地方跑自己的軟件。不同的應用希望在不同的位置以不同的方式運行。
今天,我們將著眼於全棧來討論加速計算。我們將介紹新的芯片,並闡述其如何用有限的晶體管釋放更多的性能,我會介紹新的庫,以及這些庫如何加速科學和工業領域的關鍵任務,還有特定領域專用的新框架,有助於開發性能更高且易於部署的軟件。以及新平台,它可以讓你安全、安心地部署軟件,並獲得數量級的提升。
在黃仁勳看來,光是有速度很快的芯片已不足以應對未來的工作負載:這就是英偉達要用上自己的所有設備來建設整個數據中心的原因。不過,再一次地,在一個每家公司都需要加速計算的未來里,英偉達專門為他們打造的數據中心——英偉達的天國之城(Celestial City)——卻與現狀形成鮮明對比,因為現在的數據中心裡面,英偉達芯片的最大用戶是那些自己的系統已經就位的大型玩家(hyperscalers)。
比方說,像Meta 這樣的公司就不需要英偉達的網絡;他們發明了自己的。這些公司確實需要大量可大規模並行化的芯片來訓練自己的機器學習算法,這意味著他們必須給英偉達交錢,貢獻其高額利潤。也就難怪Meta 和之前的谷歌一樣,正在開發自己的芯片。
這就是所有大公司都可能要走的一個過程:他們不需要英偉達的系統,他們需要的是可以滿足他們的要求,跑他們的系統的芯片。這就是為什麼英偉達會如此賣力地投入到人工智能和加速計算的大眾化的原因:從長期看,規模化的關鍵在於為除了最大玩家之外的所有人開發系統。穿越山谷的訣竅在於,在英偉達目前的大客戶停止購買英偉達昂貴的芯片之前,就能看到該生態體系的發展。黃仁勳曾經預見到3D 加速器將會被商品化,於是用著色器來實現跨越;你會感覺到他對芯片也有同樣的恐懼,所以現在正在躍進到做起系統來。
在山谷中的元宇宙: Omniverse Nucleus
在去年春天的採訪中,我曾問黃仁勳英偉達會不會自己做雲服務;
如果我們要做服務的話,除了我們自己做的東西以外(如果必須自己做的話),這個服務還會運行在世界各地的GPU 上,跑在每個雲上面。我們公司製定的其中一條規則是不浪費公司的資源去做已經有的東西。如果某個東西已經存在,比方說x86 CPU 這樣的東西,我們會直接用。或者如果某個東西已經有了,我們會選擇與其合作,因為我們不想把自己稀缺的資源浪費在那上面。所以,如果雲端已經有了某個東西了,我們絕對只會用那個東西,或者讓那個東西去做就行了,這樣會更好。但是,如果做有些東西對我們來說行得通,但對他們沒有意義的話,我們會找他們去做;如果其他人不想做,那麼我們可能會決定自己去做。對於要做什麼我們是很有選擇性的,但對於其他人已經做過的,我們態度非常堅決,那就是不做。
事實證明,有個東西是沒有其他人想做的,那就是為3D 對象建立一個通用的數據庫,這個數據庫的用處是英偉達所謂的Omniverse。這些對象可以是用於製造業或供應鏈的超級詳細的毫米精度級對象,也可以是為虛擬世界生成的奇幻對象和建築物;按照黃仁勳的設想,任何在Omniverse Nucleus 上做開發的人都可以使用這些對象。
此處的天國之城是一個跨行業和娛樂可用的3D 體驗世界——如果你願意的話,可稱之為元宇宙的Omniverse,它們全都連接上英偉達的雲服務——且其雄心壯志足以讓扎克伯格感到臉紅!出於同樣的原因,這座山谷似乎更加漫長,更加黑暗:你不僅需要創建所有這些資產以及3D 體驗,而且需要讓整個市場相信其實用性和必要性。為一個尚不存在的世界建設一個雲服務,就是為了攀上目前仍然看不見的高度。
黃仁勳與英偉達的雄心壯誌之大是毫無疑問的了,儘管有些人可能會質疑同時穿越三座山谷的智慧如何;除了那場遊戲業的完美風暴以外,他們的股票本身仍走不出山谷也許也是合理的。
不過,值得考慮的是, 英偉達客戶(無論是消費者客戶還是企業客戶)對公司感到沮喪的首要原因是價格:英偉達的GPU 價格昂貴,而且公司的利潤(除了最近幾個季度以外)非常高。不過,就英偉達的情況而言,其定價權直接來自英偉達自己的創新,這既體現在既定工作負載的絕對性能方面,也體現在其對CUDA 生態體系的投資、為全新的工作負載創造出來的工具上。
換句話說,因為過去承擔了自己現在正在著手的事情的那種風險,英偉達已經贏得了被憎恨的權利。舉個例子,假設未來對所有遊戲的期望不僅僅是要能光線追踪,而且要對所有粒子進行全方位的模擬:英偉達在硬件上的投資將意味著它會像光柵化時代一樣主宰那個時代。同樣地,如果AI 應用被大眾化,而且可供所有企業使用,而不只是超大規模的企業能用的話,那麼英偉達的價值定位將是掌握整個長尾。再者,如果我們進入了元宇宙的世界的話,那麼英偉達不僅在基礎設施方面有領先優勢,而且在讓那個世界成為現實所必需的基本對像庫方面也有領先優勢(當然了,這些對象將在AI 生成的空間裡利用光線追踪點亮),從而讓英偉達成為該領域最重要的基礎設施。
這些賭注未必全都能獲得回報;不過,我確實欣賞這個願景之大膽,如果英偉達將來得以穿過山谷,到達天國之城,從而獲得可觀利潤的話,我也不會嫉妒的。