AWS Deep Learning Conta PyTorch iners 适用于 2.5 SageMaker - AWS 深度学习容器

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS Deep Learning Conta PyTorch iners 适用于 2.5 SageMaker

AWS 适用于亚马逊(SMDLCs)的 Dee@@ p Learning Containers SageMaker () 现已推出 PyTorch 2.5 版,并在 Ubuntu 22.04 上支持 CUDA 12.4。你可以在任何 SM 服务上启动 Deep Learning Containers 的新版本。有关 Dee AWS p Learning Containers 支持的框架和版本的完整列表,请参阅下文。

此版本包括用于在 GPU 上训练的容器镜像,针对性能和扩展进行了优化 AWS。这些 Docker 镜像已通过 SM 服务进行了测试,提供了稳定版本的 NVIDIA CUDA、Intel MKL 和其他组件,为运行深度学习工作负载提供了优化的用户体验。 AWS对这些映像中的所有软件组件进行安全漏洞扫描,并根据 AWS 安全最佳实践进行更新或修补。这些新 DLC 专为在 SageMaker 服务上使用而设计。

可用容器列表可以在我们的文档中找到。使用我们开发者指南中的入门指南和从初学者到高级级别的教程,快速开始使用 Dee AWS p Learning Containers。您也可以订阅我们的讨论论坛以获取发布公告并发布您的问题。

发布说明

  • PyTorch 为 2.5.1 引入了支持 SageMaker 服务的训练容器。有关此版本的详细信息,请查看我们的 GitHub 发布标签

  • PyTorch 2.5 为 SDPA 提供了全新 cuDNN 后端,默认情况下,在 H100 或更高版本上使用 SDPA 的用户启用加速功能。 GPUs此外,torch.compile 的区域编译允许用户无需重新编译即可编译重复的 nn.Module(例如 LLM 中的变压器层),从而缩短 torch.compile 的冷启动时间。最后, TorchInductor CPP 后端提供了稳定的性能加速,并提供了许多增强功能,例如 FP16 支持、CPP 封装、AOT-Inductor 模式和最大自动调谐模式。

  • 包括修复 PyPI 中的轮子无法在基于 RPM 的 Linux 发行版 out-of-the-box上使用,如 2.5.1 中所述。 PyTorch

  • 有关更新的完整说明,请参阅此处的 PyTorch 2.5.0 官方发行说明和此处的 PyTorch 2.5.1 发行说明。

  • NVidia/Apex 已被移除,取而代之的是原生火炬操作。有关从 apex 迁移到 torch 内置操作的更多信息,请参阅此处

  • 添加了 Python 3.11 支持

  • 添加了 CUDA 12.4 支持

  • 添加了 Ubuntu 22.04 支持

  • GPU Docker 镜像包含以下库:

    • CUDA 12.4.1

    • cudnn 9.1.0.70

    • NCCL 2.23.4

    • AWS OFI NCCL 插件 1.12.1

    • EFA 安装程序 1.36.0

    • 变形金刚引擎 1.11

    • 闪电注意 2.6.3

    • GDRCopy 2.4.2

  • 适用于 CPU 的 Dockerfile 可以在这里找到,GPU 的 Dockerfile 可以在这里找到。

有关最新更新,请参阅 aws/ 存储deep-learning-containers GitHub 库

安全建议

AWS 建议客户监控安全公告中的关键AWS 安全更新。

Python 3.11 Support

PyTorch 训练和推理容器支持 Python 3.11。

CPU 实例类型支持

这些容器支持 x86_64 实例类型。

GPU 实例类型支持

这些容器支持 GPU 实例类型,并包含以下支持 GPU 的软件组件:

  • CUDA 12.4.1

  • cudnn 9.1.0.70+cuda12.4

  • NCCL 2.23.4+cuda12.4

AWS 地区支持

这些容器可在以下地区使用:

区域

代码

美国东部(俄亥俄州)

us-east-2

美国东部(弗吉尼亚州北部)

us-east-1

美国西部(俄勒冈州)

us-west-2

美国西部(加利福尼亚北部)

us-west-1

AF South(开普敦)

af-south-1

亚太地区(香港)

ap-east-1

亚太地区(海得拉巴)

ap-south-2

亚太地区(孟买)

ap-south-1

亚太地区(大阪)

ap-northeast-3

亚太地区(首尔)

ap-northeast-2

亚太地区(东京)

ap-northeast-1

亚太地区(墨尔本)

ap-southeast-4

亚太地区(雅加达)

ap-southeast-3

亚太地区(悉尼)

ap-southeast-2

亚太地区(新加坡)

ap-southeast-1

亚太地区(马来西亚)

ap-southeast-5

加拿大(中部)

ca-central-1

加拿大(卡尔加里)

ca-west-1

欧洲(苏黎世)

eu-central-2

欧洲(法兰克福)

eu-central-1

欧洲(爱尔兰)

eu-west-1

欧洲(伦敦)

eu-west-2

欧盟(巴黎)

eu-west-3

欧盟(西班牙)

eu-south-2

欧盟(米兰)

eu-south-1

欧洲(斯德哥尔摩)

eu-north-1

以色列(特拉维夫)

il-central-1

中东(巴林)

me-south-1

中东(阿联酋)

me-central-1

南非(圣保罗)

sa-east-1

中国(北京)

cn-north-1

中国(宁夏)

cn-northwest-1

构建和测试

  • 建立在:c5.18xlarge

  • 已在:g3.16xlarge、p3.16xlarge、p3dn.24xlarge、p4d.24xlarge、p4d.24xlarge、p4de.24xlarge、g4dn.xlarge、p5.48xlarge、p5.48xlarge

  • 使用 Resnet50、BERT 以及上的 ImageNet EC2数据集、ECS AMI(亚马逊 Linux AMI 2.0.20240515)和 EKS AMI(-1.25.16-20240514)进行了测试 amazon-eks-gpu-node

已知问题

  • 使用的客户TransformerEngine可能会遇到 [W init.cpp: 767] 警告:torch 脚本不再支持 nvfuser,使用 _jit_set_nvfuser_enabled 已被弃用,并且由于自 2.2 起已弃用,因此禁止操作(函数运算符 ())。NVFuser PyTorch 欲了解更多信息,请查看此问题