4月4日,“ 为了计算和人类的未来,我捐出世界上第一台 DGX-1 。 ”
2016 年 8 月,NVIDIA 创始人黄仁勋,带着一台装载了 8 块 P100 芯片的超级计算机 DGX-1 ,来到了 OpenAI 的办公大楼。
在现场人员到齐后,老黄拿出记号笔,在 DGX-1 的机箱上写下这句话。
与其一同前往的还有特斯拉和 OpenAI 的创始人,埃隆马斯克。
这次 OpenAI 之行,老黄不为别的,就是为了把这台刚出炉的超算送给 OpenAI ,给他们的人工智能项目研究加一波速。
这台 DGX-1 价值超过百万,是 NVIDIA 超过 3000 名员工,花费三年时间打造。
这台 DGX-1 ,能把 OpenAI 一年的训练时间,压缩到短短一个月。
而这,是他对人工智能未来的豪赌,加的一波注。
七年之后,在前不久的 GTC 大会上,老黄穿着皮衣,拿着芯片,整个宣讲不离 AI 。
似乎是在告诉各位, AI 的时代,我 NVIDIA ,就要称王了,当年的豪赌,他赢了!
这么说吧,在去年经历一波矿难之后,不少人都以为曾靠着矿潮狂赚一笔的 NVIDIA ,会在矿难之下市值暴跌,一蹶不振。
但实际情况却有点微妙。
NVIDIA 的股价在跌了大半年之后,从十月份开始,一路上涨。
到现在,整个 NVIDIA 市值已经涨回到了 6500 亿美元,是 AMD 的 4 倍, Intel 的 6 倍。
瞧瞧,这还是当年那个求着各位买显卡的老黄嘛?
让 NVIDIA 的股价疯涨的,那便是他们从十多年前就开始押注的 AI 计算。
给大家一个数据,从 2015 年后, NVIDIA 的 GPU 在超算中心的市场份额就一路上涨,这几年稳居 90% 左右。
在独立 GPU 市场上, NVIDIA 的市场占有率也一度超过 80% 。
另外,包括 YouTube 、Cat Finder 、 AlphaGo 、 GPT-3 、 GPT-4 在内, AI 历史上那些叫得出名的玩意,几乎都是在 NVIDIA 的硬件上整出来的。
NVIDIA 的硬件,仿佛就是新时代的内燃机,载着 AI 时代不断前进。
大家可能会有点疑问,为什么在 AI 爆发的时代,好像就只有老黄有好处,其它的显卡生产商们的显卡不能训练 AI 嘛?
能训练,但只能训练一点点。
为啥?
这就不得不提到 NVIDIA 从 2006 年就开始着手开发一个东西—— CUDA ( 统一计算设备架构 )。
当你想要计算一些比较庞大的运算问题时,通过 CUDA 编程,你就能充分利用 GPU 的并行处理能力,从而大幅提升计算性能。
CPU 就好比是个数学教授, GPU 就是 100 个小学生,放一道高数题下来那 100 个小学生可能会懵逼;但是放 100 道四则口算题下来,那 100 个小学生同时做肯定比数学教授快多了。
深度学习就是上面的例子中那 100 道口算题,那个让 GPU 处理器并行运算的 “ 工具 ” 就叫 CUDA 。
一般来说,使用 CUDA 和不使用 CUDA ,两者在计算速度上往往有数倍到数十倍的差距。
既然 CUDA 这么有用,为什么其它的 GPU 厂商不去搞个竞品呢?
不是不去搞啊,而是他们真的没想到!
在早期, GPU 的作用只是为了加速图形渲染,各大厂商们认为它就是一个图形专用计算芯片,并没有想到把 GPU 用在其它通用计算方面。
至于拿来做深度学习?以那个年代的 AI 能力,一是没有太大的必要,二是也没有人觉得它有用。
NVIDIA 深度学习团队的布莱恩在聊到 CUDA 时这么说道:
“ 在 CUDA 推出十年以来,整个华尔街一直在问 NVIDIA ,为什么你们做了这项投入,却没有人使用它?他们对我们的市值估值为 0 美元。 ”
不过说没人用也是过于严重了。
其实早在 2012 年,多伦多大学的 Alex Krizhevsky 就在 ImageNet 计算机视觉挑战赛中,利用 GPU 驱动的深度学习击败了其它对手,当时他们使用的显卡是 GTX580 。
在这之后又经过了 4 年,那些搞深度学习的人才突然意识到, GPU 的这种设计结构方式,在训练 AI 的速度上,真的是 CPU 不能比的。
拥有了 CUDA 原生支持的 NVIDIA GPU ,更是首要之选。
到现在,资本们已经看到了 AI 的重要之处,为什么大家都还在卷 AI 模型,而不去卷老黄的市场呢?
原因在于,它们已经很难再拿到 AI 加速芯片的入场券了。
在人工智能产业上,整个深度学习的框架已经是老黄的形状了。
AI 发展的数十年间, NVIDIA 通过对 CUDA 开发和社区的持续投入, CUDA 和各类 AI 框架深度绑定。
当今使用排行靠前的各类 AI 框架,就没有不支持 CUDA 的,也就是说你想要让你的深度学习跑的快?
买张支持 CUDA 的高性能卡是最好的选择,说人话就是——买 N 卡吧。
当然,在 CUDA 大力发展期间,也有其它公司在尝试着打破 NVIDIA 这种接近垄断的局面。
2008 苹果就提过出 OpenCL 规范,这是一个统一的开放 API ,旨在为各种不同的 GPU 型号提供一个规范,用以开发类似 CUDA 的通用计算软件框架。
但是,通用就意味着不一定好用。
因为各大厂商 GPU 的型号繁而复杂,为了适应各种硬件,驱动版本也多如牛毛,质量参差不齐,而且缺少对应的厂商进行针对性的优化。
所以,无论是哪一个版本的 OpenCL ,在同等算力下,都比不过使用 CUDA 的速度。
恰恰是因为 OpenCL 的通用性,想要开发支持 OpenCL 的框架,要比开发CUDA 的复杂不少。
原因还是同一个,缺少官方的支持。
看看 NVIDIA 对CUDA开发的工具支持吧,CUDA Toolkit,NVIDIA GPU Computing SDK以及NSight等等。
OpenCL这边,就略显寒酸了。
这就导致如今能支持 OpenCL 的深度学习框架寥寥无几。
举个很简单的例子,当下最火的框架 PyTorch ,就连官方都没有专门对OpenCL进行支持,还得靠着第三方开源项目才能用。
那同为显卡供应商的 AMD ,在面对老黄如日中天的 CUDA 时,除了 OpenCL ,有没有自己的解决办法呢?
方法确实是有,但效果也确实不咋的。
2016 年 AMD 发布了全新的开放计算平台—— ROCm ,对标的就是 NVIDIA 的 CUDA ,最关键的一点是,它还在源码级别上对 CUDA 程序进行支持。
你看,就算是老黄的死对头 AMD ,想的也不是另起炉灶,而是降低自己适配 CUDA 的门槛。
但是,时至今日, ROCm 依然还是只支持 Linux 平台,可能也是用的人太少了,有点摆烂的味道,毕竟,既然你支持 CUDA ,那我为什么要费尽心力去给你的 ROCm 专门编写一套支持框架呢?
同年,谷歌也有了行动,但毕竟不是芯片制造商,谷歌只是推出了自己的 TPU 平台,专门针对自家的 TensorFlow 框架进行优化,当然原生支持的最好的也只有 TensorFlow 了。
至于 Intel 那边,也推出了一个 OneAPI ,对标老黄的 CUDA ,不过由于起步较晚,现在还处于发展生态的环节,未来会怎样还不太好说。
所以靠着先发优势还有原生支持,导致现在的深度学习,基本上离不开 NVIDIA 的 GPU 和他的 CUDA 。
最近大火的 ChatGPT ,就用了老黄的 HGX 主板和 A100 芯片,而老黄对此也是很有自信的说道:
“ 现在唯一可以实际处理 ChatGPT 的 GPU ,那就只有我们家的 HGX A100 。 ”
没错,没有其它可用的了,这就是老黄的有恃无恐。
而随着 OpenAI 对大模型 AI 的成功验证,各家巨头对大模型 AI 的纷纷入局, NVIDIA 的卡已经立马成了抢手货。
所以如今的 AI 创业公司,出现了一件很有意思的现象,在他们的项目报告上,往往会搭上一句我们拥有多少块 NVIDIA 的 A100 。
当大家在 AI 行业纷纷投资淘金时, NVIDIA 就这样靠着给大家卖水——提供 AI 加速卡,大赚特赚,关键还在于,只有它卖的水能解渴。
因为它的硬件以及工具集,已经能影响到整个 AI 产业的战局和发展速度了。
更可怕的是, NVIDIA 的优势已经形成了一种壁垒,这壁垒厚到就连全球第二大 GPU 厂商 AMD 都没有办法击穿。
所以在 AI 大浪滔天的现在,能整出属于自己的 AI 大模型固然重要,但啥时候能有自己的 NVIDIA 和 CUDA 也同样不可小觑。
当然,这条路也更难。
在未来,我们需要抓紧突破的,绝对不只是对人工智能大模型相关的研究,更为重要的是整个计算芯片的设计,制造,以及 AI 生态的建设。
新的工业革命已经到来, AI 技术的发展不仅加速了人类生产力的发展,也加速了那些落后产能的淘汰,现在各行各业都处在变革的前夕。
强者越强,弱者无用。虽然这句话很残酷,但在AI 领域,如果不奋力追上,可能真的已经不需要 “ 弱者 ” 了。