大模型上不了智能汽车?

新闻 智能汽车
想要大模型上车,单单存储系统增加的成本就是3万美元,芯片运算部分至少也会增加数万美元成本。

什么是大模型?没有统一的定义,目前来说超过1000亿参数的深度学习模型叫大模型,未来可能是10000亿参数。深度学习从采集数据到标注数据,到训练出炉,最后得到的权重模型,这个权重模型98%就是参数,模型大小基本等于参数量的大小。以AlexNet为例,参数量在6000万,假设每个参数都是一个FP32格式,即4个字节,总字节就是24000万字节,则24000万字节/1024/1024 = 228MB,如果是车载领域常用的INT8格式,每个参数就是一个字节,容量会缩小到FP32格式的1/4,当然精度也会下降。

OpenAI在2020年提出了大模型的规模定律,基本近似于半导体领域的摩尔定律,这就是《Scaling Laws for Neural Language Models》,模型参数规模N,数据集大小D,模型形状(包括:transformer Block数量,宽度,attention heads和feed forward hidden dimension), 喂入序列长度和batch_size。当然还有训练模型的计算量C。其中,模型性能强烈依赖于参数规模N,数据集大小D和计算量C。考虑到自动驾驶全面引入了NLP领域的Transformer,所以这个定律对自动驾驶完全有效。

图片

给定计算量的时候,模型性能的提升主要在于增加参数规模而不是增加数据集。所以后续各种模型训练大家就非常关注于持续增加参数量,数据集并没有相应的倍增。一句话,参数越多效果越好。

来看一个典型的大模型:ChatGPT, 大部分网络消息都说它有 1750 亿个参数,通常用 INT8 格式来存储 LLM 权重,以便进行更低延迟的推理、更高的吞吐量和更低的内存需求(比用 float16 格式来存储要少两倍的内存)。每个 INT8 参数需要 1 个字节进行存储。简单的计算就知道,模型需要 175GB 的存储空间,实际会需要180-190GB左右。

GPT 风格的语言模型在每次前向传递时都是「自回归」的,它预测下一个最可能的 token(对于类似 ChatGPT 的 RLHF 模型,它会预测其人类标注者更偏好的下一个 token)。这意味着要生成 200 个 token,因此需要执行 200 个前向传递。对于每个前向传递,我们需要将模型的所有权重从高带宽(HBM)内存加载到矩阵计算单元(GPU 的张量计算核)中, 也就是说需要为每个前向传递加载 175GB 的权重。为什么不在GPU内部的存储上加载权重模型?因为贵到3万美元一片的英伟达H100其内部的SRAM也不到0.3GB,根本装不下。

在微软OpenAI ChatGPT上用的A100 SXM8,这是针对云服务器厂家供应的版本,一个节点即上图中的一个A100 SXM8,每个节点包含8个 A100 。这意味着每个模型实例的最大张量并行度是 8。因此,其实不需要为每个前向传递加载 175GB 的权重,而只需要为每个前向传递的每个 GPU 加载 21.87GB,因为张量并行性可以在所有 GPU 上并行化权重和计算。

在 A100 80GB SXM 8版本上,最大内存带宽是 2TB/s。这意味着在 batchsize=1 的情况下(受内存带宽限制),2000/21.87=91.4,也就是说前向传递最大的理论速度将达到 91 次 / 秒,这个次是对话的次数,实际是达不到这一水平的,也有人用这个反推,ChatGPT的参数没有达到1750亿个,但迟早会达到这个参数量。这个还没考虑后端计算,部分后端计算是CPU更擅长的。显然,90%时间都花在加载权重上,而不是计算矩阵乘法,高算力毫无用武之地。

我们不考虑算力,只考虑模型加载与存储间的关系,假设特斯拉用了这么大的模型,特斯拉初代 FSD 使用的 LPDDR4,型号是 MT53D512M32D2DS-046 AAT,容量为 16Gb,总共 8 片,I/O 频率 2133MHz,单通道的话,其带宽为 2133*64*16,即 273GB/s。那么速度就是273/175=1.56,也就是每秒可以加载1.56次权重模型。

特斯拉最新的自动驾驶大脑 FSD,不惜血本用上了 GDDR6。以特斯拉的 16 颗 GDDR6 为例,带宽是 56*16=896GB/s,896/175=5.12,即每秒加载5.12次权重模型,即便你的算力是100000TOPs,每秒运算次数也不会超过6次。

车载领域,摄像头帧率高的可以到60Hz,每帧可以看做ChatGPT的每次会话,也就是说每秒至少要加载60次权重模型,考虑到后端计算也要消耗时间,每秒至少要90次才合格,换句话说内存带宽要达到16TB/s,每 GB 的 HBM2 售价大约 20 美元,HBM3大约30美元,每片英伟达A100板卡对应80GB的HBM2,每个节点是8片,合计480GB,每片内存带宽2TB/s,合计16TB/s, 合计480*20=9600美元,最新的H100标配96GB的HBM3,每片板卡是8个芯片,合计8*96*30=23040美元, 而特斯拉最新FSD对应的GDDR6,16颗合计价格大约是150-200美元,价格差别巨大。 

退一步,我们不用ChatGPT这种大模型,我们用Transformer。典型Transformer的参数是1.1亿个,但这是针对NLP自然语言的,而自动驾驶领域的是针对视频的,参数量最少增加10倍,即11亿个,也就是1.1GB的权重模型。如果是特斯拉用的16颗GDDR6,那么896/1.1=814.5,也就是每秒最多运算不超过815次,但这16颗GDDR6可并非只为AI计算服务的,同时也为CPU服务,它在加载权重模型的同时,也在为CPU缓存数据。实际运算次数至少减半。回到老旧的目标检测模型,其模型尺寸大小通常只有20MB,运算速度自然高很多,非常复杂的一般都不超过300MB。但是小模型不仅性能不佳,鲁棒性和可移植性也很差,因此人类AI的发展方向就是越来越大的模型,参数越来越多,机器视觉的奠基者ResNet 50是2500万个参数,谷歌的ViT变种是20亿个参数,GPT3是惊人的1750亿。

图片

模型平均每两年会增加240倍,内存带宽每两年只会增加两倍。

存储模型最佳载体是SRAM,其带宽是最好的,但成本远超AI服务器领域的HBM。目前AI模型尺寸越来越大,超过20GB已是常态,用SRAM来存储的话,芯片价格轻易突破100万美元,即使是不太在乎价钱的服务器也承受不起,因此人类只能退而求其次,这就是HBM,即High Bandwidth Memory,每GB的HBM售价大约20美元。

图片

HBM如上图,简单地说HBM就是将SDRAM用TSV工艺堆叠起来,就像盖楼一样,层和层之间会有金属层等间隔,同时通过TSV联通各个存储单元。TSV(硅通孔)是内存能够堆叠的关键,它能够在各个存储层之间以及层内构建出硅通孔的通路,存储单元的访问就通过这些通孔完成。在堆叠上,现在一般只有2,4,8三种数量的堆叠,立体上最多堆叠4层,8堆叠是由两列4堆叠构成。

在继续了解HBM之前,我们需要明白几个内存基本概念,那就是密度、速度和带宽。

密度很简单,就是容量。速度有两种描述,一是频率即MHz,另一种是MT/s,后一种方式越来越成为主流。速度就好比高速公路的最高时速,带宽就好比高速公路的车道数。HBM是以牺牲速度来提高带宽的。1MHz=1000KHz=1000000Hz等于1秒内高低电平信号切换100万次。MT/s全称 Million Transfers Per Second意为每秒百万次传输,1T/s和1Hz,这两个单位前者指的是每秒做了一次传输,后者指每秒1时钟周期。又因为DDR内存信号每个时钟信号可以传输2次,所以实际的传输速率为1Hz等于2T/s,1MHz等于2MT/s。在DDR5发布后,JEDEC的态度有了一些变化,内存性能规格的单位选择了MT/s为主,英特尔和金士顿、美光、威刚、芝奇等PC行业的领头企业也纷纷跟进该策略,将内存性能的衡量单位改为了MT/s。对CPU来说,主要是串行数据流,速度就比较重要,而AI和GPU是并行计算,带宽比速度重要。

  • 系统最大内存带宽 = 内存标称频率*内存总线位数*通道数
  • 内存带宽 = 内存标称频率*内存总线位数*实际使用的通道数
  • 实际内存带宽 = 内存核心频率*内存总线位数*实际使用的通道数*倍增系数

我们以车载领域的LPDDR为例来描述带宽。

图片

历代LPDDR参数,注意位宽等同于Maximum density,这是CPU一次能拿走的数据最大密度,用于GPU的最大密度就可以轻易达到384bit。特斯拉初代FSD使用的LPDDR4,型号是MT53D512M32D2DS-046 AAT,容量为16Gb,总共8片,I/O频率2133MHz,单通道的话其带宽为2133*64*16,即273GB/s。

HBM是物理堆叠的,它的总线位宽可以是并联形式,每个die有2个128bit位宽的通道,HBM1只有4层堆叠叫做4-Hi,带宽可以达到4*2*128=1024bit,HBM2的I/O频率是1107MHz,倍频系数是2,以英伟达V100S加速器为例,用了4颗HBM2,带宽是1107*2*4*1028/8/1000,即1134GB/s。比LPDDR4要高很多。HBM3频率提到1600MHz,堆叠提高到16层,比HBM1高出4倍,英伟达最新旗舰H100有多个版本,其中顶配使用HBM3内存5颗,每颗16GB,带宽是5*1600*2*16*1028,也就是3350GB/s。

HBM通过基板的硅互联层与主处理器连接,物理距离远远小于PCB上内存与处理器之间的连接,几乎逼近L3缓存的连接距离,尽管其运行频率不高,但是这个速度是真实速度。顺便说一下,HBM只对AI友好,对CPU不太友好,CPU需要的是速度,AI需要的是带宽,两者是矛盾的,所以大部分自动驾驶厂家会选择价格更低的LPDDR,毕竟大部分时候CPU是主力。

图片

目前SK Hynix全球独家供应HBM3,而大模型带来的服务器需求暴增,HBM3严重供不应求。

图片

据说HBM3的价格涨了5倍,当然这是夸张的说法。

那么未来HBM3价格会下降吗?绝无可能,因为相对于1100亿美元的DRAM市场,HBM市场小得可怜,预计2023年不过10亿美元,就算最乐观的预测到2025年也不过30亿美元,与DRAM市场相比可以忽略不计。目前,能生产HBM3的全球只有SK Hynix和三星,它们同时也占据了60%以上的DRAM市场,为了这一点微不足道的市场,它们当然不会降价抢市场,服务器领域对价格的敏感度又特别低,未来HBM价格不会下降,只会上升。

想要大模型上车,单单存储系统增加的成本就是3万美元,芯片运算部分至少也会增加数万美元成本。

图片

上表是运行大模型的常见芯片,至少一个节点也就是8颗才能流畅运行。

图片

上表是运行大模型服务器一个节点的价格,如百度这样的企业需要数千台乃至上万台这样的服务器,这还是中国特供版A800的价格。换到嵌入式系统,至少也要增加2-3万美元左右的成本。

自动驾驶系统如果要上大模型要增加至少5万美元成本,未来大模型进一步变大,成本会增加10万美元都有可能,当然,实力企业不在乎这5万美元,可又会有多少销量呢?退一步讲,大模型会导致计算系统功率轻松超过500瓦功率,这必然导致续航明显下降,也绝不可能达到车规。所以,大模型不会上车。

责任编辑:张燕妮 来源: 佐思汽车研究
相关推荐

2024-02-01 17:48:35

智能模型

2013-11-26 09:50:41

iOS汽车iOS in the

2024-03-21 13:51:00

百度智能云千帆

2021-12-20 11:04:58

智能技术汽车

2022-11-10 10:14:12

人工智能

2023-07-04 09:48:10

AI模型

2022-04-14 12:43:36

自动驾驶智能汽车

2018-11-26 11:00:06

人工智能自动驾驶汽车行业

2016-01-15 11:10:58

智能汽车车联网硬件技术

2023-04-26 09:32:12

智能汽车

2023-08-28 06:52:29

2017-09-15 14:48:44

汽车智能互联网

2023-09-25 13:07:27

2024-03-11 00:40:00

AI研究

2021-11-12 15:09:08

智能自动驾驶汽车
点赞
收藏

51CTO技术栈公众号