算力
算力
本地部署大模型涉及三个方面需求:训练、微调和推理,其中:
训练:算力最密集,消耗的算力通常是推理过程的至少三个数量级以上;
微调:算力需求低于训练,但高于推理;
推理:算力消耗最低;
算力消耗:训练 > 微调 > 推理
主流的显卡显存容量:超算级别显卡A100、H100、A800、H800为80G显存;其中A100也有40G显存;消费级显卡4090和3090显存为24GB;
NVIDIA先后推出了V100、A100、H100多款专门用于AI训练的芯片;但在2022年10月份,被禁止向中国出售。
通过Google 云端硬盘使用(20240807)
eebyp(20240809)
手机(20240817)免费试用。20240818使用Unsloth微调qwen2-0.5b,但是上传Huggingface报错。
手机(20240817)
量化等级 | 推理时 GPU显存占用 | 微调时 GPU显存占用 |
---|---|---|
单精度 | 20G | 22G |
半精度 | 13G | 14G |
INT 8 | 8G | 9G |
INT 4 | 6G | 7G |
在深度学习和机器学习领域,Tensor(张量)是用于表示多维数组的数据结构,而FP16和FP32指的是张量中数据元素的浮点数的精度类型:
1. **Tensor FP16**:
- FP16代表“半精度浮点数”(Half Precision Floating Point Number)。
- 它使用16位来存储一个浮点数,其中1位用于符号,5位用于指数,10位用于尾数。
- FP16相比FP32可以节省内存和计算资源,因为它需要的位数更少。这在处理大规模数据集或进行深度学习训练时特别有用,因为它可以减少显存占用和加速计算过程。然而,由于精度的降低,可能会对某些应用的准确性产生较小的影响。
2. **Tensor FP32**:
- FP32代表“单精度浮点数”(Single Precision Floating Point Number)。
- 它使用32位来存储一个浮点数,其中1位用于符号,8位用于指数,23位用于尾数。
- FP32提供了比FP16更高的精度,这在许多科学计算和需要高精度结果的应用中是必要的。然而,它消耗更多的内存和计算资源。
选择使用FP16还是FP32取决于具体的应用场景和需求。例如,在深度学习训练中,由于模型参数众多且计算量大,使用FP16可以在不显著牺牲性能的情况下加速训练过程并减少显存占用。而在需要高精度计算的科学模拟或图形渲染等领域,FP32可能是更好的选择。