通过本文,你将了解以下几个方面的内容:
- 要运行一个LLM需要多少显存?(我的GPU可以运行多大LLM?)
- 不同LLM推理速度如何?
- 量化对显存、推理速度和性能的影响?
- vLLM、DeepSeed等工具的加速效果如何?
- 上下文、batch-size对显存和推理的影响?
本文内容和测试数据主要来自Qwen,零一万物,Nvidia等官方材料(相关文档请查看参考资料部分)。
1. 不同参数量LLM推理需要多少显存?
实验设置:batch-size = 1
部分模型只推荐GPU,没有显存数据。
1.1 低配使用(计算资源有限)
Int4量化,约2K上下文
模型(int4) | 所需显存 (GB) | 推荐GPU | 参考模型 |
---|---|---|---|
0.5B | <5G | Qwen2-0.5B-Instruct | |
1.5B | <3G | Qwen-1_8B-Chat, Qwen2-1.5B-Instruct | |
6B | 4G | Yi-6B-Chat-4bits | |
7B | <11G | Qwen2-7B-Instruct,Qwen-7B-Chat-Int4 | |
14B | 13G | Qwen-14B-Chat-Int4 | |
34B | 20G | Yi-34B-Chat-4bits | |
57B | <35G | Qwen2-57B-A14B-Instruct | |
72B | <47G | Qwen2-72B-Instruct | |
130B | - | 8 * RTX 2080 Ti(11G) 4 * RTX 3090(24G) | GLM-130B |
236B | 130G | 8xA100(80G) | DeepSeek-V2-Chat |
1.2 标配使用(性能与资源平衡)
Int8量化,4K、6K上下文
模型(int8) | 所需显存 (GB) | 推荐GPU | 参考模型 |
---|---|---|---|
0.5B | 6G | Qwen2-0.5B-Instruct | |
1.5B | 8G | Qwen2-1.5B-Instruct | |
6B | 8G | Yi-6B-Chat-8bits | |
7B | 14G | Qwen2-7B-Instruct | |
14B | 27G | Qwen-14B-Chat-Int8 | |
34B | 38G | Yi-34B-Chat-8bits | |
57B | 117G (bf16) | Qwen2-57B-A14B-Instruct | |
72B | 80G | Qwen2-72B-Instruct | |
130B | - | 8xRTX3090 (24G) | GLM-130B |
236B | 490G (fb16) | 8xA100 (80G) | DeepSeek-V2-Chat |
340B | - | 16xA100(80G) 16xH100(80G) 8xH200 | Nemotron-4-340B-Instruct |
1.3 高配使用(高级用法,性能优先)
性能优先,不量化,数据格式FB16,32K上下文
模型(fb16) | 所需显存 (GB) | 推荐GPU | 参考模型 |
---|---|---|---|
0.5B | 27G | Qwen2-0.5B-Instruct | |
1.5B | 30G | Qwen2-1.5B-Instruct | |
6B | 20G | Yi-6B-200K | |
7B | 43G | Qwen2-7B-Instruct | |
14B | 39G (8k) | Qwen-14B-Chat | |
34B | 200G (200k) | 4 x A800 (80G) | Yi-34B-200K |
57B | 117G | Qwen2-57B-A14B-Instruct | |
72B | 209G | Qwen2-72B-Instruct |
若以上内容无法帮助你做出判断,你可以参考Qwen官网更详细的数据:Qwen速度基准
2. Batch Size和量化对显存的影响
要点:
- Batch Size增加,显存占用也会增加。
- 量化可以节省显存:通过下表中的数据可以看到,6B模型在float16时占用12G显存,8bit量化占用7G,4bit量化只需要4G显存。
Model | batch=1 | batch=4 | batch=16 | batch=32 |
---|---|---|---|---|
Yi-6B-Chat | 12 GB | 13 GB | 15 GB | 18 GB |
Yi-6B-Chat-8bits | 7 GB | 8 GB | 10 GB | 14 GB |
Yi-6B-Chat-4bits | 4 GB | 5 GB | 7 GB | 10 GB |
Yi-34B-Chat | 65 GB | 68 GB | 76 GB | >80 GB |
Yi-34B-Chat-8bits | 35 GB | 37 GB | 46 GB | 58 GB |
Yi-34B-Chat-4bits | 19 GB | 20 GB | 30 GB | 40 GB |
数据来源:Yi-6B-Chat
3. 上下文长度对显存和推理速度的影响
要点:
- 上下文越长,推理速度越慢。
- 显存占用也会增加。
输入长度(上下文) | 推理速度 (Tokens/s) | GPU占用 |
---|---|---|
1 | 37.97 | 14.92 |
6144 | 34.74 | 20.26 |
14336 | 26.63 | 27.71 |
30720 | 17.49 | 42.62 |
数据整理自Qwen2官方测试报告。
4. 量化对推理速度的影响
要点:
- 量化后推理速度会变慢或持平。
- 当量化影响到GPU使用量时,例如从多张GPU降低到单GPU,推理速度会明显变快。
Qwen2模型的测试结果如下:
- Qwen2-0.5B模型:量化模型速度变慢。
- Qwen2-1.5B模型:量化与fb16相比速度持平。
- Qwen2-7B模型:稍微变慢,使用vLLM时,量化版本更快。
- Qwen2-72B模型:速度变快(尤其是Int4量化后,从2GPU变为1GPU后推理速度明显变快),但使用长context时(120k),量化版本推理速度变慢。
详细结果请访问:Qwen速度基准
5. 参数量对推理速度的影响
单位:tokens/s
推理工具 | 0.5B | 1.5B | 7B | 72B |
---|---|---|---|---|
Transformers | 50.83 | 40.86 | 34.74 | 5.99 |
vLLM | 256.16 | 166.23 | 76.41 | 27.98 |
vLLM 速度提升倍数 | 5.04倍 | 4.07倍 | 2.20倍 | 4.67倍 |
模型:Qwen2系列,上下文6K,FB16模型
6. vLLM、DeepSeed、CTranslate2等工具推理速度如何?
- 与Transformers相比,使用vLLM、DeepSeed等工具加速,推理速度可以提升2到5倍。
- DeepSeed、vLLM、CTranslate2三个加速工具中,CTranslate2的表现更好,尤其是batch size为1时。
7. 量化对模型性能的影响
8. 常见LLM用GPU参考
GPU | 显存 |
---|---|
H200 | 141GB |
H100, H800 | 80GB |
A100, A800 | 80GB |
A100 | 40GB |
V100 | 32GB |
RTXA6000 | 48GB |
RTX4090, RTX3090, A10, A30 | 24GB |
RTX4070 | 12GB |
RTX3070 | 8GB |
参考资料
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » 大语言模型LLM基础:推理/不同模型/量化对显存、推理速度和性能的影响
发表评论 取消回复