086使用自定义的硬件进行训练
使用自定义的硬件进行训练¶
运行模型训练和推理所使用的硬件对性能有很大影响。关于 GPU 的深入探讨,请务必查看 Tim Dettmer 的优秀 博客文章。
让我们来看一些关于 GPU 设置的实际建议。
GPU¶
当你训练更大的模型时,基本上有三种选择:
- 更大的 GPU
- 更多的 GPU
- 更多的 CPU 和 NVMe(通过 DeepSpeed-Infinity 卸载)
我们从单个 GPU 的情况开始谈起。
电源和冷却¶
如果你购买了昂贵的高端 GPU,请确保为其提供正确的电源和充分的冷却。
电源:
一些高端消费级 GPU 卡有 2 个甚至 3 个 PCI-E 8 针电源接口。确保每个接口都插有独立的 12V PCI-E 8 针电缆。不要使用同一根电缆两端的两个分叉头(通常称为猪尾巴电缆)。例如,如果你的 GPU 有两个电源接口,那么你应该从电源供应器 (PSU) 连接两根 PCI-E 8 针电缆到 GPU,而不是一根带有两个 PCI-E 8 针连接头的电缆。否则,你无法充分发挥卡的性能。
每个 PCI-E 8 针电源电缆需要插入 PSU 的 12V 电源线,可以提供高达 150W 的功率。
有些其他卡可能使用 PCI-E 12 针连接器,这些连接器可以提供高达 500-600W 的功率。
低端卡可能使用 6 针连接器,这些连接器可以提供高达 75W 的功率。
此外,你还需要一个高质量的 PSU,它能提供稳定的电压。一些低质量的 PSU 可能无法为卡提供所需的稳定电压,以使其在峰值状态下运行。
当然,PSU 必须有足够的剩余瓦数来为卡供电。
冷却:
当 GPU 过热时,它会开始降低性能,甚至在过热时关闭。很难确定 GPU 在高负载下最佳的目标温度是多少,但通常只要低于 +80°C 就可以了,而 70-75°C 是一个非常好的范围。通常在温度达到约 84-90°C 时,性能开始下降。除了降低性能外,长时间的高温还可能缩短 GPU 的使用寿命。
接下来,我们来看看使用多个 GPU 时最重要的方面之一:连接性。
多 GPU 连接性¶
如果你使用多个 GPU,卡之间的互连方式可能会对总训练时间产生巨大影响。如果 GPU 在同一物理节点上,你可以运行: