手机还是更适合小模型。
GPU 类型:他们评估了三种英伟达 GPU:A100-40GB、A100-80GB 和 H100-80GB。所有 GPU 使用的数据类型都是 BFloat16。
GPU 数量和通信:每种 GPU 类型都有三种主要训练配置,包括:单节点单 GPU(1 台 GPU)、单节点多 GPU(2、4 和 8 台 GPU)和多节点多 GPU(16、32 和 64 台 GPU)。当 GPU 超过 1 台时,还会评估分布式数据并行(DDP)和完全分片式数据并行(FSDP)这两种通信方法。对于分片,他们也研究了两种策略:1) 完全分片,即对所有梯度、优化器状态和权重进行分片;2) grad_op 分片,即仅对梯度和优化器状态进行分片(但权重不分片)。他们使用了 RDMA/EFA。
样本数量:他们还评估了训练期间适合单个 GPU 的各种样本数量。他们将序列长度固定为 1028,并迭代适合单台设备的批量大小。由于即使在最小(100M)的模型中也无法将 128 个样本放入单个 GPU 内存中,因此他们研究了每台设备的批量大小为 4、8、16、32 和 64 的情况。这里不使用梯度累积
Flash Attention:他们研究了在注意力模块中使用 Flash Attention 的影响。