如何速成LLM以伪装成一个AI研究者(5)——显存估算,显卡选择
往期回顾
如何速成LLM以伪装成一个AI研究者(1)——循环,卷积,编解码器,注意力,Transformer
如何速成LLM以伪装成一个AI研究者(2)——Pre-LN,KV-Cache优化,MoE
如何速成LLM以伪装成一个AI研究者(3)——预训练,监督微调,强化学习RLHF/DPO
如何速成LLM以伪装成一个AI研究者(4)——PPO,GRPO,DAPO,GSPO
免责声明:作者也是伪装的,有错漏属于正常现象,欢迎评论指正。
模型,你配训多大?
这一章,我们中场休息一下,来谈点没那么“技术性”的内容——怎么花钱。
众所周知,搞AI是非常花钱的,搞大模型更是对显卡要求极高。一个大模型到底要吃多少显存?你的经济实力够多大规模的模型推理部署/训练呢?
首先,在推理场景下,显存开销主要来自三块:
- 参数存储 :参数显存(GB) = 参数量(B) × 每参数字节数,常用的参数精度有FP32(4字节),FP16(2字节),BF16 (2字节)。
- 激活值:
激活显存 ≈ 批次大小 × 序列长度 × 隐藏层维度 × 每参数字节数 - KV-Cache:
KV-Cache显存 ≈ 2 × 批次大小 × 序列长度 × 头维度 × 头数 × 每参数字节数
比如说,一个7B的FP16模型,批次大小为1,序列长度(max_token,输入输出的长度总和)为2048,隐藏层维度4096,头维度为64,头数32,则:
- 参数存储 :
7*2=14(GB) - 激活值:
1*2048*4096*2 / 10^6 ≈ 16.78(MB) - KV-Cache:
2*1*2048*64*32*2 / 10^6 ≈ 16.78(MB)
可见参数存储还是大头,加上杂七杂八的余量,16G的显存就差不多可以部署一个7B大模型推理了。
RTX 4060 Ti 就是16G,这也是为何7B级别是目前最适合个人部署的模型级别。
而假如你的模型是MoE的,则还有模型参数量/激活参数量的区别,其中参数存储按总参数量计算,激活值则只需要按激活参数量计算即可。
接下来谈谈训练,全参数训练的情况下,需要多少显存呢?
首先,推理部署的缓存在训练中也是要消耗的,此外还要考虑:
- 梯度参数:梯度的数量与待训练的参数数量相同。
- 优化器状态:最常见的Adam/AdamW优化器,需要存储一阶+二阶矩,也就是额外存两倍参数量的数据。并且,即使模型本身使用FP16之类的低精度存储,为了稳定数值,防止溢出,优化器一般也是要用FP32的。也就是说,7B大模型需要额外吃掉
7*2*4=56(GB)。
也就是说,全量微调要用到4倍参数量级别的显存!对于一个7B大模型来说,80G的A100都很难支持全参微调。
那假如,我不进行全参微调呢?比如,如果我只训1%的参数,则梯度参数+优化器状态就只占原来1%的开销了——这几乎没比推理部署多用多少显存!而一些参数高效微调方法,比如LoRA,一般就只需要训练0.1%-1%的模型参数。
注:LoRA很美好,然而,个人/学术界使用得多。工业界用全量微调更多,这也好理解——公司有钱,并且微小的性能差距都可能导致用户抛弃你的AI产品而选择竞品。
下一章我们会进一步介绍LoRA。
显卡购物入门
要为大模型部署/训练选购显卡,主要看三个指标:显存,带宽,算力。
显存,正如上文所言,根据模型参数可以估算。例如,消费级显卡中,8G的卡跑个3B大模型没问题,4-bit量化后也可以部署7B的;16G显存的卡可以流畅部署7B大模型(和用QLoRA微调它),24G可以流畅部署13B大模型,等等。
带宽,直接影响token的生成速度。每次生成token都需要重新读取一次模型的部分或全部参数,带宽翻倍,生成速度也几乎能翻倍。
算力,TOPS(Tera Operations Per Second,每秒万亿次操作)常用于整数运算(INT8),而TFLOPS(Tera Floating-Point Operations Per Second,每秒万亿次浮点运算)常用于浮点数运算(FP16/FP32)。一个经验公式是:推理生成一个token所需的计算量 ≈ 2 × 参数量P。
以下列举了一些NVIDIA系常见的LLM推理部署/训练用的显卡,可以用于对“我要什么卡”大概心里有个数:
消费级显卡
| 型号 | 架构 | 显存 | FP16算力 (Tensor Dense) | 首发年份 | 适用场景 |
|---|---|---|---|---|---|
| RTX 4090 | Ada Lovelace | 24GB | 165TF | 2022 | 个人AI部署旗舰,适合7B-13B模型全量微调,30B-70B模型量化后推理 |
| RTX 4080 | Ada Lovelace | 16GB | 106TF | 2022 | 7B模型量化推理性价比首选 |
| RTX 3090 | Ampere | 24 GB | 71.2TF | 2022 | 大显存性价比(不学的时候可以4K打赛博朋克2077) |
| RTX 3060 (12GB) | Ampere | 12GB | 25.5TF | 2021 | 适合入门学习(不学的时候可以1080P打赛博朋克2077) |
NVIDIA的显卡型号是什么意思?以RTX4090为例,它可以被拆分为RTX+4+90
RTX 表示支持光线追踪和AI加速技术,以前也有不带光追的GTX系列的显卡,但是现在基本被RTX取代,所以千万别买GTX系的。
4代表架构,数字越大表示架构技术越新。一般来说不要买架构太旧的显卡。
90代表性能,这个数字越大性能越好。
如果有Ti这个后缀,表示性能和定位高于标准版,但次于更高一级的数字型号。例如 RTX 4070 Ti 就强于 4070,但弱于 4080。
也就是说,不是整个数字(4090,5060)越大表示性能越好,比如4090的性能就比5060更好,但是如果跨的代数比较多,也有可能出现60“反超”90之类的情况。
备注1:众所周知,高端显卡市场波动得宛如理财产品,如何租卡/买卡请自行了解市场,本文不构成投资建议。
备注2:2077好玩,都给我玩。
专业级显卡
| 型号 | 架构 | 显存 | 互连带宽 (NVLink) | FP16算力 | 首发年份 | 适用场景 |
|---|---|---|---|---|---|---|
| A100 | Ampere | 80GB | 600 GB/s | 312TF | 2020 | 成熟稳定,适用于大部分中等规模AI训练/推理场景 |
| A800 | Ampere | 80GB | 400 GB/s | 312TF | 2022 | 应对出口管制的A100中国合规版 |
| H100 | Hopper | 80GB | 900 GB/s | 1979TF | 2022 | Transformer引擎加持,性能较A100有飞跃式提升 |
| H800 | Hopper | 80GB | 400 GB/s | 1979TF | 2023 | 应对出口管制的H100中国合规版 |
| H200 | Hopper | 141GB | 900 GB/s | 1979TF | 2023 | H100的显存升级版,适合内存密集型任务 |
| B100 | Blackwell | 192GB | 1.8 TB/s (NVLink 5) | 1.8PF | 2024 | 新一代旗舰,万亿级模型训练 |
AI公司有多少专业级显卡?
普遍在万张以上,叫得出名字的AI公司则一般有数十万量级。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)