如何在预算内租用 GPU
分布式、并行与集群计算
2024-08-01 v3 性能
摘要
过去十年中,机器学习 (ML) 的爆发式增长导致了对 GPU 进行 ML 模型训练需求的 dramatic increase。由于大多数用户构建和维护大型 GPU 集群的成本不可接受,大型云提供商 (Microsoft Azure、Amazon AWS、Google Cloud) 因此在租赁基于云的 GPU 方面需求激增。在这种云计算范式中,用户必须在每个时刻指定其对 GPU 的需求,并为实际使用的每个 GPU 小时付费。众所周知,ML 训练作业可以以不同程度的可并行性进行。给定一系列 ML 训练作业时,用户通常希望在所有作业之间最小化平均响应时间。此处,作业的响应时间指从作业到达直到完成的时间。此外,用户受到一些运营预算的约束。具体而言,本文中用户受到在长期时间平均内每小时使用不超过 个 GPU 的约束。问题是如何在满足预算约束的同时最小化平均响应时间。由于训练作业在额外 GPU 上的边际收益递减,为单个训练作业分配过多 GPU 会显著增加用户支付的总成本。因此,最优的租赁政策必须在训练成本和平均响应时间之间进行权衡。本文推导了针对一系列具有不同并行性级别(由加速函数指定)和不同作业大小(固有工作量)的训练作业的最优租赁政策。我们对到达过程和作业大小分布几乎没有假设。我们的 optimal policy 指定在每个时刻租用多少 GPU 以及如何分配这些 GPU。
引用
@article{arxiv.2406.15560,
title = {How to Rent GPUs on a Budget},
author = {Zhouzi Li and Benjamin Berg and Arpan Mukhopadhyay and Mor Harchol-Balter},
journal= {arXiv preprint arXiv:2406.15560},
year = {2024}
}