现场ImageNet EC2 - AI与Elastigroup工作负载运行

在Spotinst,我们爱追随人们如何实现和使用大型计算项目。我们变得更加兴奋当人们突破简化这些和民主化的使用。这就是为什么当杰里米·霍华德从快。ai上月公布,“任何人都可以火车Imagenet 18分钟”,我们想要看看是否有什么我们可以帮助的方式。

碰巧使用AWS EC2现货能力进行了讨论,最终导致这个堆栈溢出的问题雅罗斯拉夫Bulatov关于现货实例启动时间和变暖EBS卷

现货情况下,由用户与随需应变,不能停止。这使得现货实例,虽然便宜70 - 90%,启动和停止计算工作时处于不利地位。要理解为什么,我们必须了解一个AWS实例启动和EBS存储是如何分配的。

在开始任何EC2现货或按需实例,EC2将从Amazon S3 AMI。当这种情况发生时,只复制所需的模块。在这种状态下,EBS卷不是“温暖”。EBS卷需要阅读更多文件,块从S3。一旦读所有的文件或块,体积是温暖和S3点球是不存在的。在这一点上,一个随需应变的实例可以启动和停止反复EBS卷维护之间的所有本地块实例状态变化。

因为现货实例只能终止要求,AMI和任何快照被迫从S3取出。对于一个应用程序,该应用程序加载大量的python库,这可能意味着秒到几分钟的延迟块从S3。

当你运行的崇高目标ImageNet在18分钟,时间是宝贵的,第一个延迟将一块从S3是不可接受的。

这使得这个问题,节约成本必须有一个速度惩罚吗?必须有一个更好的方法!

温暖的EBS和现货实例

得到实例EBS现货实例的启动速度,一个人必须放弃使用根卷,而是依赖于预定义的卷,已经温暖。当现货实例启动时,现有的安装体积和保留任何块读取之前使用。

重要的是要注意,为每个实例启动,一个相应的温暖EBS卷必须存在。16 p3.16xlarge实例,现有16 EBS卷是必需的。这相当于保持16不再随需应变的实例,以供将来使用。唯一的区别是这些卷必须映射到新推出现货实例。

这种模式非常适合数据和应用程序自然生活在第二卷,但是如果我们想要快速加载等包快。ai ImageNet或AWS深度学习AMI吗?

答案是chroot

chroot

chroot、脚本和SSH会话可以将根文件系统重新映射到一个新的目录。在这种情况下,快速的快照。ai AMI。

每一个AWS AMI存储在S3和对应SnapshotId。这个ID可用于创建一个新的卷,不仅仅是一个根卷时启动一个实例。

找到SnapshotId快。ai AMI可以检索与AWS CLI使用describe-images参数——寻找它BlockDeviceMappings

ImageNet EC2现货

一旦安装体积,EC2实例用户数据将被用于安装和配置设备chroot。体积的组合BlockDeviceMappingsAttachVolume使用取决于这是第一个启动的实例。

块设备映射

连续运行

连续发射EC2实例,有必要保存EBS卷ID创建和使用AWS API挂载卷后启动一个实例。使用附加体积API一旦实例ID可用。

用户数据

现在所有新SSH会话将被孤立的安装EBS卷将保持温暖块之间的附件。此外,当一个用户或脚本使用SSH访问实例,将环境的根/dev/xvdf1。设备模块只会从S3读取一次,保留供以后使用。

有状态Elastigroups

在Spotinst,我们专注于所有类型的工作负载与现货实例运行,和有状态EBS就是其中之一。Elastigroup平台能够创建、跟踪和管理存储,网络,ami与现货实例相关联。实例被替换或终止时,Spotinst确保所有的有状态资源迁移到一个新的位置请求。雷竞技rabet官网

Imagenet,创建有状态Elastigroup每个处理节点。

每组包含一个特殊的状态标识,将管理网络和存储的请求。

下图显示了如何Spotinst平台将自动保留和接一个EBS卷,在这种情况下,PyTorch快。人工智能的形象。

最后,当不再需要时,Spotinst优雅地将确保实例停止,保存和跟踪状态。

在AWS EC2实例表Web控制台验证我们还没有停止,但终止,所有的实例用于ImageNet过程。

下次Imagenet处理,将使用温暖的EBS卷和消除任何需要将模块从S3。

Tensorboard图

使用描述的过程,我们已经能够运行ImageNet快。从1到16 p3.16xlarge ai PyTorch AMI实例。以下是图的运行。

省钱

最后但同样重要的是,省下一大笔钱。处理Imagenet快,需要大型和昂贵的计算资源。雷竞技rabet官网与现货实例,可以节省70% p3.16xlarge实例和运行时仍然体验温暖EBS的好处。

随需应变的Linux p3.16xlarge定价:

现货实例Linux和Windows p3.16xlarge定价:

我们继续跟进,与他合作,使这个过程更快更容易重复的。寻找代码和详细的教程即将到来!