跳转到主要内容
博客

PyTorch 2.5 现已支持英特尔 GPU

作者: 2024 年 10 月 25 日2025 年 5 月 5 日暂无评论

PyTorch® 2.5 现已支持英特尔 GPU,为英特尔 GPU 提供了改进的功能和性能,其中包括 英特尔® Arc™ 独立显卡内置英特尔® Arc™ 显卡的英特尔® 酷睿™ Ultra 处理器英特尔® 数据中心 GPU Max 系列。此次集成将英特尔 GPU 和 SYCL* 软件堆栈纳入 PyTorch 官方堆栈,确保了一致的用户体验,并支持更广泛的 AI 应用场景,尤其是在 AI PC 领域。

为英特尔 GPU 开发和使用英特尔 GPU 的开发人员和客户将通过直接从原生 PyTorch 获取持续的软件支持、统一的软件分发和一致的产品发布时间,从而获得更好的用户体验。

此外,英特尔 GPU 支持为用户提供了更多选择。现在 PyTorch 在前端和后端都提供了统一的 GPU 编程范式。开发人员现在只需最少的代码工作量即可在英特尔 GPU 上运行和部署工作负载。

英特尔 GPU 支持概述

PyTorch 中的英特尔 GPU 支持在 PyTorch 内置前端中提供了 Eager 模式和图模式支持。Eager 模式现在使用 SYCL 编程语言实现了常用 Aten 运算符。图模式 (torch.compile) 现在已启用英特尔 GPU 后端,以实现英特尔 GPU 的优化并集成 Triton。

英特尔 GPU 支持的基本组件已添加到 PyTorch 中,包括运行时、Aten 运算符、oneDNN、TorchInductor、Triton 和英特尔 GPU 工具链集成。同时,量化和分布式正在积极开发中,为 PyTorch 2.6 版本做准备。

功能

除了为英特尔® 客户端 GPU 和英特尔® 数据中心 GPU Max 系列提供推理和训练的关键功能外,PyTorch 还保持了与 PyTorch 支持的其他硬件相同的用户体验。如果您从 CUDA* 迁移代码,您可以通过最少的设备名称(从 cuda 到 xpu)代码更改,在英特尔 GPU 上运行现有应用程序代码。例如:

# CUDA 代码
tensor = torch.tensor([1.0, 2.0]).to(“cuda”)

# 英特尔 GPU 代码
tensor = torch.tensor([1.0, 2.0]).to(“xpu”)

PyTorch 2.5 在英特尔 GPU 上的功能包括:

  • 推理和训练工作流程。
  • 增强 torch.compile 和 eager 模式功能(更多 Ops),同时提高性能,并完全运行 eager 和 compile 模式下的三个 Dynamo Hugging Face*、TIMM* 和 TorchBench* 基准测试。
  • 数据类型,例如 FP32、BF16、FP16 和自动混合精度 (AMP)。
  • 在英特尔® 客户端 GPU 和英特尔® 数据中心 GPU Max 系列上运行。
  • 支持 Linux(Ubuntu、SUSE Linux 和 Red Hat Linux)和 Windows 10/11。

入门

请从入门指南中了解英特尔® 客户端 GPU 和英特尔® 数据中心 GPU Max 系列上的环境设置、PIP wheel 安装和示例。通过夜间和预览二进制版本中的 PyTorch PIP wheel 安装,可以体验对英特尔 GPU 的支持。

  • 通过英特尔® Arc™ 显卡家族(代号 DG2)、内置英特尔® 显卡的英特尔® 酷睿™ Ultra 处理器家族(代号 Meteor Lake)和内置英特尔® 显卡的英特尔® 酷睿™ Ultra 移动处理器家族(代号 Lunar Lake)试用英特尔® 客户端 GPU。
  • 通过英特尔® Tiber™ AI Cloud 试用英特尔数据中心 GPU Max 系列。
    1. 要了解如何创建免费标准帐户,请参阅入门。然后执行以下操作:

性能

英特尔 GPU 在 PyTorch 上的性能持续优化,在 eager 和 compile 模式下的三个 Dynamo Hugging Face、TIMM 和 TorchBench 基准测试中取得了不错的成绩。

基于 PyTorch Dynamo 基准测试套件,使用英特尔® 数据中心 GPU Max 系列 1100 单卡测得的最新性能数据显示,图 1 中 eager 模式下的 FP16/BF16 相对于 FP32 有显著的加速比,图 2 中 Torch.compile 模式相对于 eager 模式有显著的加速比。推理和训练都取得了类似的显著改进。

Figure 2: FP16/BF16 Performance Gains Over FP32 Eager

图 2:FP16/BF16 相对于 FP32 Eager 的性能提升

Figure 3: Torch.compile Performance Gains Over Eager Mode

图 3:Torch.compile 相对于 Eager 模式的性能提升

总结

PyTorch 2.5 上的英特尔 GPU 将英特尔® 客户端 GPU(内置英特尔® Arc™ 显卡的英特尔® 酷睿™ Ultra 处理器和用于独立 GPU 部件的英特尔® Arc™ 显卡)和英特尔® 数据中心 GPU Max 系列引入 PyTorch 生态系统,用于 AI 工作负载加速。特别是,客户端 GPU 已添加到 GPU 支持列表中,用于 Windows 和 Linux 环境下的 AI PC 使用场景。

我们热忱欢迎社区评估并提供关于 PyTorch 上的英特尔 GPU 支持 的反馈。

资源

鸣谢

我们要感谢 PyTorch 开源社区的技术讨论和见解:Andrey TalmanAlban DesmaisonNikita ShulgaEli UriegasJason AnselBin Bao

我们还要感谢 PyTorch 合作者提供的专业支持和指导。

性能配置

表中配置通过 svr-info 收集。由英特尔于 2024 年 9 月 12 日测试。

表 1

组件 详情
名称 英特尔® Tiber™ 开发人员云中的英特尔® Max 系列 GPU 1100
时间 2024 年 9 月 12 日 08:21:27 UTC
系统 超微 SYS-521GE-TNRT
主板 超微 X13DEG-OA
机箱 超微 其他
CPU 型号 英特尔(R) 至强(R) 铂金 8468V
微架构 SPR_XCC
插槽 2
每插槽核心数 48
超线程 已启用
CPU 192
英特尔睿频加速技术 已启用
基频 2.4GHz
全核最大频率 2.4GHz
最大频率 2.9GHz
NUMA 节点 2
预取器 L2 HW: Enabled, L2 Adj.: Enabled, DCU HW: Enabled, DCU IP: Enabled, AMP: Disabled, Homeless: Disabled, LLC: Disabled
PPINs 5e3f862ef7ba9d50, 6c85812edfcc84b1
加速器 DLB 2, DSA 2, IAA 2, QAT (on CPU) 2, QAT (on chipset) 0
已安装内存 1024GB (16x64GB DDR5 4800 MT/s [4800 MT/s])
巨页大小 2048 kB
透明巨页 madvise
自动 NUMA 平衡 已启用
网卡 2 x 以太网控制器 X710 for 10GBASE-T, 4 x MT2892 Family [ConnectX-6 Dx]
磁盘 1 x 894.3G Micron_7450_MTFDKBG960TFR
BIOS 1.4a
微码 0x2b0004b1
操作系统 Ubuntu 22.04.2 LTS
内核 5.15.0-73-generic
TDP 330W
电源与性能策略 正常 (6)
频率调控器 performance
频率驱动 acpi-cpufreq
最大 C-State 9

表 2

组件 详情
单卡 英特尔® Tiber™ 开发人员云中第四代英特尔® 至强® 处理器上的英特尔® Max 系列 GPU 1100 系列
工作负载和版本 Timm ac34701, TorchBench 03cde49, Torchvision d23a6e1, Torchaudio b3f6f51, Transformers 243e186
软件堆栈 intel-for-pytorch-gpu-dev 0.5.3, intel-pti-dev 0.9.0, Intel xpu backend for Triton cc981fe
框架 Pytorch 4a3dabd67f8ce63f2fc45f278421cca3cc532cfe
GPU 驱动 agama-ci-devel-803.61
GFX FW 版本 PVC2_1.23374

声明和免责声明

性能因使用情况、配置和其他因素而异。有关详细信息,请访问性能指标网站。性能结果基于配置中所示日期的测试,可能未反映所有公开可用的更新。有关配置详情,请参阅备份。任何产品或组件都不能绝对安全。您的成本和结果可能有所不同。英特尔技术可能需要启用硬件、软件或服务激活。

英特尔公司。英特尔、英特尔徽标和其他英特尔标志是英特尔公司或其子公司的商标。其他名称和品牌可能属于他人所有。

AI 免责声明
AI 功能可能需要购买软件、订阅或由软件或平台提供商启用,或者可能有特定的配置或兼容性要求。详情请访问 www.intel.com/AIPC。结果可能有所不同。