AWS Batch,如何申请 GPU

AWS Batch, how to ask for GPUs

我正在获取有关如何使用 AWS Batch 训练深度学习模型的文档。这个想法是,一旦建立了模型,我想提交几个作业来探索一下超参数 space。

在这篇interesting blog post中,博主创建了一个P2实例的执行环境,并用它来为MNIST训练一个卷积神经网络。 我现在想知道是否可以在我的作业定义中要求特定数量的 GPU 而不是 vCPU。通过这种方式,我可以确定我的工作拥有所需的 GPU 数量。如果没有,是否有任何解决方法?

我相信你现在已经想通了,但不会有伤害,对吧?不,截至目前,无法指定 GPU 数量。但是,您可以将 vCPU 数量分配给作业定义以指定那么多 GPU。

例如,p2.xlarge 个实例有 4 个 vCPU。因此,如果您希望为您的作业分配 1 个 GPU,则为该作业定义分配 4 个 vCPU。这样一来,每个 p2.xlarge 实例将只会有一个作业 运行。它可能对所需的 vCPU space 有点矫枉过正,但这是目前指定您想要该作业并且该作业仅具有 GPU 的唯一方法。

我和 AWS 的人谈过,他们一直说 GPU 规范可能很快就会出现,但谁知道呢,真的。

自 2019 年 4 月起,AWS Batch 开始支持 GPU allocation/scheduling。使用此新功能,您可以指定作业所需的 GPU 数量。 Batch 还为您的作业进行 GPU 固定。如果一个实例有多个 GPU,Batch 可以在同一个实例上放置多个作业(每个作业需要 1 个 GPU)并同时让它们 运行。下面是 运行 个支持批处理 gpu 的 gpu 作业的示例。 https://aws.amazon.com/blogs/compute/gpu-workloads-on-aws-batch/