APP下载

英伟达的GPU长跑

2025-02-13金泰

21世纪商业评论 2025年2期
关键词:柯克开发者乔布斯

黄仁勋知道,单凭技术参数并不能卖出图形芯片,营销和品牌几乎同样重要。

他的竞争对手采取不同方法来定位自己的产品。有些采用夸张的、超男性化的品牌,以迎合游戏玩家,如3dfx的巫毒女妖(Voodoo Banshee)、ATI的暴怒 Pro(Rage Pro);其他产品则采用更技术化或工业化的命名,如Matrox G200或Verite 2200。

英伟达则倾向于折中,其芯片命名方式既传达技术的卓越,又能引发情感共鸣,例如RIVA TNT,RIVA代表实时交互视频和动画加速器,TNT则指双纹理单元。正如一位工程师所说,对普通消费者而言,这显然是一个“与爆炸有关”的名字。

在这样一个拥挤市场中,英伟达决定打破规则,脱颖而出,GPU由此横空出世。

绝妙命名

1999年,英伟达推出RIVA TNT2系列的迭代产品GeForce 256。

毋庸置疑,GeForce 256代表传统图形处理能力的重要进步,这是英伟达每一代新芯片的典型特征,也符合市场对英伟达每一代新芯片的预期。

它具有4个图形渲染管线,可同时处理4个像素任务;还集成了一个硬件光影转换引擎,这意味着它可以承担移动、旋转和缩放3D物体所必需的计算任务,这些任务以往通常由CPU完成。GeForce 256减轻CPU的计算负载,使整台计算机运行得更快。

英伟达的管理团队认为,其技术性程度太高,很难向客户推介,内部典型的命名公式(首字母缩略词 + 数字)行不通。英伟达需要更大的名头来推出这款新产品。

“我们必须找到一种方法,把这个产品定位成比其他产品都更好的3D图形处理器,为其收取高价。”时任英伟达营销主管的丹·维沃利说,他激励产品营销团队想出一些绝妙的点子。

产品经理桑福德·拉塞尔开始研究潜在的创意,他找高管迈克尔·哈拉进行30分钟的头脑风暴,商讨如何更有效地营销GeForce 256。

两人都记得,在走出房间时他们产生这样一个想法:把新的芯片命名为全新产品类别的第一款产品——图形处理器(GPU),它在图形渲染方面的作用,就像计算机的CPU在所有其他计算任务中的作用一样。

为图形芯片进行特殊命名,并明确将其与CPU进行比较,这将使图形芯片首次脱颖而出,成为一款真正出类拔萃的产品。

没过几天,营销团队就决定使用GPU这一名称。这不仅帮助英伟达在众多图形芯片中脱颖而出,还使其更容易获得溢价。全世界都知道,CPU的价值可达数百美元。

尽管英伟达的芯片与CPU一样复杂,且拥有更多晶体管,当时批发价却不到100美元。公司将所有芯片都标记为GPU后,这种价格差距就大大缩小了。

首次应用于GeForce 256的GPU名称,还是在英伟达工程师中引发了争议。

该芯片缺乏“状态机”(一种专用处理器,可以转换不同状态来执行和获取指令,就像CPU执行编程指令一样),不具备可编程功能。这意味着第三方开发者无法轻松自定义图形样式和特征。相反,开发者必须依赖英伟达定义的一组固定硬件功能。

此外,GeForce 256没有自己的编程语言。

营销团队辩称,下一代图形芯片已经计划采用这些功能,即使没有这些功能,GeForce 256在性能上的飞跃也是显而易见的,全世界的游戏玩家和电脑爱好者都能感受到这一点。他们不顾工程师的反对,坚持使用GPU这一名称。

当黄仁勋在1999年8月发布GeForce 256时,他毫不避讳地“夸大其词”。

“我们正在推出世界上第一款GPU,”他在新闻稿中宣称,“GPU是行业的一次重大突破,将从根本上改变3D媒体。”

维沃利决定不注册“GPU”商标,因为他希望其他公司也可以使用这个术语,意在表明英伟达开创了一个全新的产品类别。最终,“夸大”变为现实:GPU这一名称后来成为行业标准,并帮助英伟达在接下来的几十年里销售了数亿张显卡。

英伟达的一名营销人员,在一条通往竞对3dfx总部的高速公路的立交桥上设立了一个广告横幅。该横幅宣称,英伟达的GPU将改变世界并击垮竞争对手。州警迅速移除了这个非法设立的横幅,英伟达也因此收到了正式警告。

然而,这一举动至少达到了它主动威慑对手的目的。“这就是战争的艺术。我们想让他们失去士气。”维沃利说。

不计成本

现代图形芯片通过所谓的图形渲染管线进行计算,将带有对象坐标的几何数据转换为图像。

该过程的第一个阶段被称为几何阶段,通过缩放和旋转计算来转换虚拟3D空间中对象的点和线;第二个阶段被称为光栅化阶段,确定每个对象在屏幕上的位置;第三个阶段被称为片元阶段,负责计算颜色和纹理;在最后第四个阶段,把图像组合起来。

早期的图形渲染管线包含一些固定的功能阶段,每个阶段都执行一小部分固定的运算。英伟达及其竞争对手(显卡制造商)各自定义了其芯片如何处理图形渲染管线中的所有阶段,第三方开发者无法改变芯片渲染内容的方式,只能根据芯片设计师设定的选项来创建视觉效果和艺术风格。

结果是,市场上的每个游戏看起来都大同小异——没有任何一个游戏能够仅凭借视觉效果脱颖而出。

英伟达首席科学家大卫·柯克希望,通过发明真正的GPU来改变这一状态。

他的想法是引入一种名为可编程着色器的新技术。这将使图形渲染管线向第三方开发者开放,使其能够编写自己的渲染函数,并更好地控制游戏呈现的视觉效果,这些着色器将允许开发者实时生成视觉效果。

他认为,开发者会很快在游戏中采用可编程着色器,因为他们比芯片设计师更了解如何创造最先进的视觉效果。这反过来又会吸引游戏玩家选择英伟达的显卡,因为它们将成为市场上唯一支持这种先进图形技术的显卡。

这个想法的唯一问题是,只有修改英伟达芯片的设计方法,才能实现可编程着色,从而实现真正的GPU。这将是一项既昂贵又耗时的工作,即使是对于老牌厂商也不例外。

柯克知道,黄仁勋清楚这项技术的好处显而易见,且拥有最终决定权。他也知道黄仁勋会聚焦于成本:英伟达需要投入多少资金来创造这种技术,市场是否已经准备好接受这种技术,以及这种技术能带来多少额外收入。

黄仁勋最初看起来很热情,柯克不确定这是不是一个好兆头。“黄仁勋有一个特点,就是在他决定扼杀你的项目之前,他和你谈论时看起来很乐观。”柯克说。

为了确保他的项目能够存活,柯克激发了黄仁勋对被竞争对手超越的恐惧。他指出:英伟达在固定功能图形加速方面的领先地位,将不可避免地被侵蚀;传统图形芯片的固定功能操作总有一天会变得足够微型化,以至于英特尔能够将其集成到CPU的某个部分或主板芯片中,从而完全不需要独立显卡。

他还表示,可编程着色器未来可能会打开游戏之外的其他市场。“好吧,”在听到柯克的想法后,黄仁勋说,“好,我会同意的。”

2001年2月,英伟达发布GeForce 3,其可编程着色器技术和对第三方开发者核心图形功能的支持,使其成为第一款真正意义上的GPU。

柯克的分析得到了证实,GeForce 3获得了轰动性的成功。2001年,英伟达的年销售额已达到10亿美元,比美国任何其他半导体公司都更快地实现这一里程碑。

其年底的市值是IPO当天的20倍,这要归功于公司的战略远见、不懈的执行力,以及黄仁勋及其管理团队的“偏执狂精神”——时刻警惕来自四面八方、每时每刻都可能发生的威胁。

征服苹果

英伟达业务的持续多样化,推动它与苹果直接达成了合作。

在21世纪初,英伟达赢得了一小笔合同,给面向消费者的iMac G4提供图形芯片。这款计算机是彩色一体机iMac G3的迭代产品,而后者标志着史蒂夫·乔布斯于1998年重返苹果。

曾成功赢得微软Xbox业务的克里斯.迪斯金,被任命为英伟达与苹果整体销售关系的负责人。他与丹·维沃利一起制定了一项策略,将英伟达的GeForce芯片植入更多的苹果电脑中。

关键的突破,得益于一部皮克斯的经典动画短片。当时,英伟达向个人电脑制造商推销的核心是图形演示,即展示其芯片的先进特性和原始计算能力。

维沃利知道,只有英伟达充分了解其受众,图形演示才能产生最大的影响,于是决定投入更多的时间和资源,为销售团队制作更好的图形演示。他甚至聘请硅图公司的前同事马克·达利,专门改进英伟达的演示。

在GeForce 3开发过程中的一次头脑风暴会议上,达利找到了展示英伟达新芯片的最佳方式。

皮克斯的2分钟动画短片《小台灯》是电脑动画的分水岭。这部关于跳动的台灯的影片在1986年首次发布时,展示了当时计算机生成图像的能力。制作这部影片需要强大的计算能力,每一帧都在克雷超级计算机上构建,需要3个小时来渲染。

达利认为,英伟达应该制作一个关于《小台灯》的演示,其团队完成了演示,效果看起来与他设想的一样令人印象深刻。维沃利心想:“如果我们把演示给史蒂夫·乔布斯看呢?”他认为,展示实时渲染版本的《小台灯》会有很好的效果,这将触及乔布斯本人职业生涯的一个里程碑时刻。

维沃利和迪斯金前往苹果总部与乔布斯会面。在演示的第一部分,英伟达团队使用了与原版相似的镜头和角度展示《小台灯》。乔布斯说:“看起来不错。”

然后,他们再次运行演示,维沃利开始在演示中改变摄像机的位置或角度。摄像机的移动表明,与静态视频不同,英伟达的芯片可以实时渲染整个场景。用户可从任何角度以逼真的光照与阴影效果变换和观看场景。

这下,乔布斯震惊了。英伟达的GPU能够实时渲染动画,不仅与皮克斯的超级计算机花费几周生成的视觉效果的清晰度相当,还提供实时交互功能。乔布斯决定在Power Mac G4电脑上提供GeForce 3作为高端选项。

大约20分钟后,乔布斯准备离开,他给英伟达团队留下了一些临别建议。

“你们真应该在移动设备领域下功夫,因为ATI正在笔记本电脑领域打败你们。”3dfx倒闭后,英伟达的主要竞争对手就是ATI。迪斯金毫不犹豫地回答:“事实上,史蒂夫,我认为你错了。”

全场顿时鸦雀无声。乔布斯紧盯着迪斯金说:“告诉我,为什么?”迪斯金感觉到,没有多少人敢质疑史蒂夫·乔布斯,显然乔布斯期待一个好的答案。

迪斯金确实有一个好答案。他解释说,英伟达芯片确实更耗电——比大多数笔记本电脑的耗电量还大——因为它们提供台式电脑用户所需的更高性能。但是,英伟达可以很容易地降低芯片的性能和功耗,以满足笔记本的规格要求,其旗舰产品线的降频版本就足以胜任。

乔布斯又盯了他一会儿。“好吧。”他只说了这一句,会议就结束了。30分钟后,迪斯金接到苹果高管菲尔·席勒的电话。

“我不知道你对史蒂夫说了什么,但我们需要你们整个笔记本电脑团队明天到这儿来,待上一天,审查你们的芯片。”席勒说。在几年内,英伟达在苹果笔记本电脑上的份额,从零增长到占据苹果计算机产品线的约85%。这不仅归功于迪斯金的演示,还要归功于他敢于挑战科技行业中最令人生畏的人物之一的胆量。

通用计算

马克·哈里斯是来自北卡罗来纳大学教堂山分校的一名计算机科研人员,他希望找到一种方法,能利用计算机更精确地模拟复杂的自然现象,如流体运动或大气云层的热力学过程。

2002年,哈里斯观察到,越来越多的计算机科学家,开始在非图形应用中使用GPU,例如英伟达的GeForce 3。运行模拟的研究人员报告称,与使用只依赖CPU的计算机相比,使用GPU的计算机在速度上显著提升。

要运行这些模拟,计算机必须学会如何将非图形计算重构为GPU可执行的图形函数。换句话说,研究人员已经破解了GPU。

为此,他们利用GeForce 3的可编程着色器技术来执行矩阵乘法,这项技术最初是为了给像素上色而开发的。这一功能通过一系列数学计算,将2个矩阵(基本上是数字表)相结合,从而创建一个新矩阵。

当矩阵规模较小时,使用常规计算方法执行矩阵乘法相对简单。随着矩阵越来越大,相乘所需的计算复杂度也呈立方增长,同时它们解释现实世界问题的能力也在增强,这些问题涉及领域非常广泛,包括物理学、化学和工程学等。

“GPU是我们偶然的发现,”英伟达科学家大卫·柯克说,“图形处理很难,因此我们建立了一个超级强大且灵活的巨型计算引擎来处理图形。研究人员看到这些浮点运算能力以及通过隐藏在某些图形算法中的计算能力来编程的可能性。”

然而,将GPU用于非图形需要一套非常特殊的技能。研究人员不得不依赖专为图形着色设计的编程语言,包括OpenGL和英伟达的Cg(C for graphics)。

像哈里斯等足够敬业的程序员,学会如何将他们的实际问题“翻译”成上述语言可以执行的函数,并很快发现如何将GPU的能力用于理解蛋白质折叠、确定股票期权定价,以及从磁共振成像扫描中组合诊断图像等领域。

哈里斯决定创造更简单的术语:“基于GPU的通用计算”,简称“GPGPU”。他创建了一个网站来推广这个术语。

一年后,他注册了网站GPGPU.org。在网站上,他撰文介绍这一新兴趋势,并和他人交流,讨论使用GPU编程语言的最佳方法。GPGPU.org迅速成为研究人员交流的热门网站,每个研究人员都想利用英伟达新设备的强大功能。

哈里斯对GPU的浓厚兴趣,为他在英伟达赢得了一份工作。获得博士学位后,他跨越大陆搬到硅谷。英伟达招募他,就是为了让GPGPU更容易被接受和被使用。

黄仁勋很快就意识到,GPGPU有可能将GPU的市场扩展开来,不仅限于计算机图形处理。然而,所有GPGPU工作必须通过Cg进行——这是英伟达专属的,且仅针对图形功能进行优化的语言。这成为GPGPU被广泛使用的障碍。为了扩大市场需求,英伟达必须使其显卡更容易编程。

哈里斯了解到,英伟达内部有一个芯片团队,正进行一个代号为NV50的秘密项目。

NV50是英伟达正在开发的最具前瞻性的芯片,几年之内它都不会发布。它将拥有自己的专用计算模式,以便其GPU更容易访问非图形应用。它将使用C编程语言的扩展,且NV50将启用并行计算线程来访问可寻址内存——从本质上讲,使GPU能够辅助CPU,实现科学、技术或工业计算中可能需要的所有功能。

英伟达将这种芯片的编程模型,称为统一计算设备架构(CUDA)。

借助CUDA,无论是图形编程专家,还是科学家和工程师,都可以利用GPU的计算能力。CUDA还可帮助他们管理复杂的技术指令网络,从而可在GPU成千上百个计算单元上执行并行计算。

黄仁勋相信,这将使英伟达的触角扩展到科技业的每一个角落。未来改变公司的将是新软件,而不是新硬件。

孤注一掷

在CUDA早期发展中,有2个至关重要的人物,分别是伊恩·巴克和约翰·尼科尔斯。

尼科尔斯是硬件专家,他于2003年加入英伟达,成为公司早期GPU计算功能的硬件架构师。他与芯片团队密切合作,确保将重要特性纳入GPU中,比如更大的内存缓存和不同的浮点运算方法。

尼科尔斯明白,如果英伟达希望推动GPU计算的普及,就必须提高性能。巴克从事软件开发工作。他曾在英伟达实习,后来前往斯坦福大学攻读博士学位。在学习期间,巴克开发了BrookGPU编程环境,为基于GPU的计算提供了专用语言和编译器。

他的工作引起了“美国国防高级研究计划局”(DARPA),以及他的前雇主英伟达的关注。2004年,他被英伟达聘用。

早期的CUDA团队规模小且紧密。巴克的软件团队主要由3名工程师组成,其他人则专注于硬件编译器,这些编译器将人类可读的代码转换为计算机可执行的机器代码,两个小组密切协作。

黄仁勋选择做两件事情:让CUDA对所有人可用,并且使其适用于一切领域。黄仁勋明白,重要的不仅是推出新技术,还要让技术在市场上随处可见。使用CUDA的人越多,这项技术成为标准的速度就越快。“我们应该把这项技术推向所有领域,让它成为基础性技术。”他告诉CUDA团队。

此举耗资巨大。英伟达在2006年11月推出NV50,随后官方更名为G80,用于GeForce系列显卡,同时推出了CUDA。

G80是英伟达第一款具有计算功能的GPU芯片。它拥有128个CUDA内核,用来支持CUDA功能。通过使用硬件多线程特性,GPU能在这些内核上同时运行多达数千个计算线程。相比之下,英特尔当时的“酷睿2”CPU最多只有4个计算内核。

英伟达在研发G80上投入大量时间和巨额资金。每一代GeForce芯片只隔了1年,开发这款GPU计算芯片花费4年。它的成本简直是天文数字,高达4.75亿美元,约占英伟达那4年总研发预算的1/3。

这还只是一个版本的兼容CUDA的GPU。

为了让所有GPU都兼容CUDA,英伟达投入大量资源,这导致其毛利率从2008财年的45.6%下降到2010财年的 35.4%。彼时,全球金融危机也摧毁了消费者对高端电子产品的需求,以及企业对GPU工作站的需求。

两个压力下,英伟达股价在2007年10月至2008年11月暴跌超过80%。尽管如此,黄仁勋坚信CUDA的市场潜力,即使投资者要求他进行战略调整,他也仍然坚持自己选择的路线。

“我相信CUDA,”他说,“我们确信,加速计算将解决正常计算机无法解决的问题。我们必须做出这样的牺牲。我对它的潜力深信不疑。”

实际上,CUDA是一个令人难以置信的成功故事。如今,已有超过500万CUDA开发者、600个AI模型、300个软件库,以及3700多个CUDA GPU加速应用程序。市场上大约有5亿个与CUDA兼容的英伟达GPU。该平台还支持后向兼容,这意味着开发者可以确信,他们在编写软件上的任何投资,也都可以在未来的芯片上发挥作用。

从零开始

英伟达解决了产品和生产问题,黄仁勋要求他的团队想方设法为CUDA创造市场——“提供整体解决方案”。如果开发者还不清楚如何使用CUDA,那英伟达就要教会他们。

在CUDA发布后,大卫·柯克发起一个名为“CUDA卓越中心”的新项目,如果学校承诺教授一门关于CUDA的课程,英伟达将提供兼容CUDA的机器。

柯克走访各所大学,告诉学生、教授和系主任,他们需要改变计算机科学的教学方式。在一年的时间里,他周游世界,做了100多场演讲,还是无人问津。

最终,他向理查德·布拉胡特介绍自己的想法,后者是伊利诺伊大学香槟分校电气与计算机工程系系主任。布拉胡特告诉柯克,如果他是认真的,那应该自己去教这门课。

柯克同意了。2007年,他每隔一周都会从科罗拉多州飞到伊利诺伊州来讲课。在学期结束时,学生们组织了CUDA研究编程项目,并发表了他们的工作成果。全国各地的研究人员,纷纷开始索求柯克和胡文美的讲座内容以及教学材料。

次年,英伟达为学校资助了超过100万美元,以及32台Quadro Plex Model IV系统(每套配备64个GPU)。其他学校听说了柯克的课程,也开始探索如何开展并行计算教学。为此,柯克与人合作撰写了一本书——《大规模并行处理器程序设计》,于2010年出版,销售数万本,在数百所学校中使用。这是CUDA吸引注意力和人才的重要转折点。

英伟达也开始推动其在非学术研究人员中的使用,游戏带来了希望的曙光。

当使用GPU的传统图形加速功能时,第一人称射击游戏等,可以计算出子弹的飞行轨迹——从子弹经由枪口射出的那一刻,到风对其飞行轨迹的影响,再到击中混凝土墙后产生的碎片飞溅。所有这些应用都依赖于矩阵乘法的各种排列组合,这与解决复杂科学问题时所使用的数学原理相同。

到了2010年代初,一度看似奄奄一息的通用GPU市场,有了复苏的迹象。英伟达生命科学行业商务拓展部门负责人马克·伯杰,开始举办为期2天的年度技术峰会,以此促进英伟达员工与科学家的交流和学习。

“我们的工程师并非千里眼,”伯杰说,“他们不知道冰球将滑向何方。曾经有一段时间,在开发者提供的反馈中,10多个功能都被纳入CUDA或硬件中。”

黄仁勋本人也喜欢参加峰会,并与CUDA的实际用户坐在一起,听取他们的见解,这对英伟达来说也是新的领域。英伟达从一开始就大力投资于深度学习,投入大量资源创建支持CUDA的框架和工具。

这种主动的做法,在21世纪20年代初AI爆发时获得了回报,因为英伟达已成为全球AI开发者的首选。

开发者希望尽快构建AI应用,同时将技术风险降到最低,而英伟达平台上出现问题的可能性相对较小,因为十多年来,用户社区已经修复了错误或找出了优化方法,而其他AI芯片供应商从未真正有过机会。

“如果你有基于CUDA和英伟达GPU构建的AI应用,那么转向Cerebras、AMD或其他任何平台都是一项巨大的工程。”英伟达前研究科学家利奥·塔姆表示,“这不仅仅是将程序移植到不同的芯片上。我可以告诉你,它们从未完美运行过,不值得这么做。我的初创公司已经有99个问题需要处理,我不想再多一个问题。”

英伟达则非常迅速地把重要的AI软件库集成到CUDA中,使开发者可轻松使用该领域的最新创新,而无须浪费时间构建或整合自己的软件工具。

英伟达的做法,除了被称为构建竞争“护城河”,很难再找到更合适的描述。英伟达制造了一种通用GPU,这代表了自CPU发明以来,在计算加速领域的首次重大飞跃;CUDA作为GPU的可编程层,不仅易于使用,还在科学、技术和工业领域开辟了广泛的功能。

正是黄仁勋的战略智慧,确保了对手很难打入由英伟达创建且基于其专有硬件和软件的市场。

本文选自《英伟达之道:黄仁勋和他的科技帝国》,金泰(TaeKim)著,董世敏、周康林译,中译出版社授权刊载,2025年1月出版。

猜你喜欢

柯克开发者乔布斯
柯克代尔洞穴之谜
没有他就没有乔布斯的苹果美学
“柯克舰长”的烦恼
《星际迷航》确定将拍第四部
16%游戏开发者看好VR
改变乔布斯的一句话
拉斯维加斯大亨柯克:三买三卖米高梅
iOS开发者调查
iOS开发者调查
乔布斯的青春哪去了