自步入人工智能时代以来,中国一直是英伟达的大客户。
2022年,英伟达销售数据中,25%来自中国客户,尤其是一些互联网大厂,他们对英伟达的算力产品,比如H800,可以说是疯狂买买买。
但是随着美国在2023年10月更新了先进半导体和计算设备的出口管制,英伟达中国特供版GPU A800和H800都将在11月17号后禁止出口中国。而且更难处理的是,华盛顿新的出口管制下,几乎绝大多数高算力产品都不再能出口中国了。
不过英伟达有他们的小心思,25%的巨大收入来源不可能说断就断,所以英伟达决定要和美国政府来一场猫鼠游戏,要在这只猫的眼皮底下,偷走奶酪。于是英伟达开始布局一款新的产品——H20。注意,这个H20是“H”和“二十”,不是水分子的化学式。
H20这款产品的浮点运算能力仅有296TFLOPs,性能密度只有2.9。这意味着它从纸面上看已经是一款超低性能产品,然而有意思的事情来了,如此低性能的产品,依然有公司会买,而且它继续引发美国的监管部门以及英伟达竞争对手的恐慌。在硅星人此前的文章《英伟达的美国对手们已经开始拿中国攻击英伟达了》中已经提到,英伟达的美国对手批评它不够美国,而英伟达认为这些批评不合逻辑;而最近的消息是,美国商务部长 Gina RAIMondo又点名英伟达,警告它停止为中国设计绕过出口管控的 AI 芯片。
所以,这个猫鼠游戏里,英伟达到底是如何做的?
3A090里的文字游戏
3A090,是华盛顿出口管制中的ECCN编码物项。3A090特指特定高性能集成电路,当一颗芯片输入输出双向传输速率超过每秒600GB,或算力超过4800TOPS时就属于3A090,也就意味着禁止向中国出口。
上一次美国规定先进半导体出口措施的时候,英伟达旗舰产品A100和H100都被划在了禁止向中国出口的列表当中。英伟达当时采取的措施是推出低配版、但是同架构、且同样配备高带宽插槽版本(也就是SXM版本)的A800和H800。这两块产品在性能上和原版的A100、H100几乎完全一致,颇有种孙悟空和六耳猕猴的感觉。
在上一次禁令发布的时候,美国只是对产品的具体型号做出了禁止出口的规定,这才有了H800和A800这种李逵李鬼的情况。所以这次新规就加入了更为严格的限制,规定了算力总和以及性能密度,所有人工智能产业能用到的高端张量计算GPU全都被划进了限制。
说得更直白一点,高性能的GPU不让卖,低性能的GPU买了也没用。
然而有意思的事情来了,禁令所限制的两个词汇“性能密度”和“总算力”,其实是一个文字游戏。
什么是性能密度?国际上有两个说法,第一个是人工智能公司常用的,浮点计算能力FLOPs,也就是每秒浮点操作数除以单位面积内的晶体管数量得来的。第二个是MIPS,也就是每秒百万指令数除以单位面积内的晶体管数量得来的。
我们都清楚一个道理,那就是“大人时代变了”。就拿英伟达刚推出的新品H200所搭载的HBM3e来说,这颗芯片采用了一种3D技术,通过立体空间堆叠的方式增加内存。如果只按面积来说,那这颗芯片的性能密度就很高,但是要按体积算,这颗芯片的性能密度也挺高,只是没有按面积算那么高而已。所以如果想要性能密度这个数字越小,算的时候以体积为单位就可以了。毕竟除法嘛,分母越大结果越小。
另外MIPS通常比FLOPs大,因为在计算过程中除了浮点,还有整数类型(INT)的运算。而且浮点自己还囊括了单精度(32位)、双精度(64位)等以所需存储空间来划分的类型。因为传统FLOPs计算方式,往往只会统计单精度和双精度,因此一颗张量计算用的GPU,在数据测试的时候,也可以只报单精度、双精度的浮点,这样无论是它的MIPS还是FLOPs都会很低。毕竟除法嘛,分子越小结果越小。
总算力这块能玩的花活就更多了。总算力,这个词指的是每个核心的时钟速度总和。英伟达H20,或者说整个H系列所采用的HoopeR架构,它都是有多种核心的,比如专门用来做张量计算的TensoRFloat32核心,还有脑浮点(BF16)核心。那刚才咱们聊了,计算FLOPs时,可以只计算单精度,双精度,也就意味着它在算力总和的测试中,就可以只计算单精度和双精度核心,而不再启用上述的这些张量计算核心。毕竟自然数加法嘛,加数越少结果越小。
综上,作为一个算力芯片厂商,他们可以很简单地把芯片数据弄得很低。这只是一种可能的假说,因为英伟达的最终目的不是通过3A090的限制,他是要把产品卖出去,赚取利润。一个性能极低的产品根本没有市场销路,就算设计出来了也没有实际的价值。
H20背后的真正秘密
区区是一张中上游的游戏显卡RTX 4080,它的浮点运算能力都能达到320TFLOPs,同时RTX 4080的性能密度有6.8。H20尊为一个张量计算用的GPU,296的浮点和2.9的性能密度,就好像是一个超级富二代独生子,从出生开始就享受世界上最优质的资源,顿顿早餐吃的煎饼果子都能加俩鸡蛋,喝酸奶从来用不着舔盖,结果到头来算个10以内加减法都能把CPU干冒烟了。
可我要是说H20的Die足足有814平方毫米,和H100完全相同,阁下应该如何应对?这并不是好钢用在刀背上,相反这正是H20的隐藏属性。也正因此,才让我更加相信,英伟达在H20的数据上,存在一些猫腻。
Die指的是芯片的裸晶,一般来说,越是性能优越的芯片,Die尺寸就会越大。比如RTX 4080的Die尺寸是379,而目前性能最好的游戏显卡RTX 4090的Die尺寸是609。因此,H20实际上并不是低端芯片,至少从芯片的制程来讲,H20是站在第一梯队的。
老鼠没有猫力气大,速度上也不占优势,如果老鼠不想被猫抓住,那就要想方设法地躲起来,不暴露自己。
诚然,H20的浮点运算能力很低,可是H20 SXM的内存足足有96GB,更恐怖的是它的带宽来到了4TBps。相较之下,1979TFLOPs浮点运算能力的H100 SXM只有80GB的内存和3.4TBps的带宽。在人工智能领域,尤其是现在火热的大语言模型中。内存是影响模型运行的关键,每10亿参数就要消耗3到5GB的内存,如果内存溢出则会严重影响模型的质量,产生不可预估的后果。那也就是说,在面对实际应用的时候,H20能比H100承担更大规模的大语言模型。
可能你会问了,H20的浮点运算能力不行啊,光有内存没用,跑的速度会慢。如果是2022年,那这的确是个大问题,毕竟没有人工智能公司会考虑低效率的GPU,这样做会拖垮整个训练过程。可是2023年,英伟达的TensoRRT-LLM已经问世,并且拥有TensoRRT-LLM功能的H200即将要在2024年发售了。
TensoRRT-LLM是一个帮助GPU快速解决复杂计算的优化软件,搭载在GPU内部,类似于游戏显卡驱动一样。以H100为例,使用TensoRRT-LLM后的H100,在对一些媒体网站进行文章摘要时的工作效率,比使用前快出整整1倍。而在700亿参数的LlaMa2上,前者比后者快77%。目前流通在市面上的A800也好,H800也好,都没有搭载TensoRRT-LLM功能。H20很有可能,或者说板上钉钉的会搭载TensoRRT-LLM。
英伟达虽然一直以硬件销售为主,然而其软件能力非同小可。比如DLSS,这是一种专门用来“欺骗”软件。不过DLSS所骗的目标并不是用户,而是显卡。当计算机需要大量图形计算时,DLSS会把图形以极低分辨率的形式交给显卡,它去骗显卡说:“你干这么点活就得了,剩下的不用你操心”,再通过DLSS技术还原成高分辨率的图形,这会大幅减轻显卡的压力,进而提升画面效果。
回到现在,TensoRRT-LLM也是一个给GPU减压减负的软件技术,这就让GPU能够表现出本不该属于它的性能。此外,如果英伟达真的隐藏了H20的真实数据,实际上H20的表现力很有可能会超过H100。
你以为英伟达是壁虎,断尾求生。实际上英伟达压根不打算“阉割”,他们想的是换一种方式,绕过监管,达到目的。毕竟,如果H20算力很低,就算可以出口中国,也没有买家愿意购买这样的产品。当猫堵住了一个老鼠洞,老鼠还是能有办法溜出来,因为不可能只有一个出口。
不只是英伟达自己的猫鼠游戏
英伟达有个好朋友叫做SK海力士,英伟达最新旗舰产品H200 SXM上的内存芯片HBM3e,就是SK海力士的。目前他们正联手开发HBM4,以颠覆整个产业。英伟达也是SK海力士最大的客户之一,如果英伟达失去了中国市场,那么SK海力士的损失也会是巨大的。
最重要的是,GPU是一个横跨软硬件两个领域的事情,造就了一个附加值极高的交易体系。比如英伟达的HoopeR架构,也就是H100、H200、H800、H20所采用的架构,多种同架构的GPU并联在一起,能够更好地分配计算资源。一般来说,人工智能企业都是买很多块GPU,而不是就买一块。所以当人工智能公司进行算力扩展的时候,GPU的第一个附加价值就体现出来了,它会要求人工智能公司只能接着购买该公司的GPU产品。
第二个附加价值在于算法的开发,不同的GPU产品,比如AMD的MI,英特尔的Gaudi,他们的差别不只有浮点运算能力、性能密度这些,还有指令集、逻辑芯片、底层语言上的差异等等。一个能在H100上运行的算法,不一定就完美适配MI300X。换言之,如果开发伊始就是基于某公司产品的话,后续的开发大概率也只