viable/strict/1788294420: Skip test_index_add_bfloat16_deterministic on XPU (#195534)
PyTorch PR #195534 跳过 test_index_add_bfloat16_deterministic 在 XPU 上的测试。该测试断言确定性模式下 index_add 编译回退到 aten.index_put_,但该回退仅适用于 CUDA/ROCm,XPU 上不生效,导致 FileCheck 失败。自 PR #195192 合并后,XPU 工作流每次提交均失败。
发展脉络
- 首次出现viable/strict/1788294420: Skip test_index_add_bfloat16_deterministic on XPU (#195534)PyTorch Core
- 当前判断PyTorch 对 XPU 的支持正在成熟,但硬件特定行为仍需持续适配。测试跳过反映了多后端支持中的常见挑战,即某些功能仅针对特定硬件实现,需要维护者识别并调整测试。Agent Pulse · 分析
PyTorch 的 PR #195534 修复了 XPU 上 test_index_add_bfloat16_deterministic 测试的持续失败。该测试由 #195192 引入,断言在确定性模式下编译 index_add 会回退到 aten.index_put_。但 skipCUDAIf 门控仅适用于 CUDA 设备,导致测试在 XPU CI 上运行,而 XPU 的确定性模式不采用该回退路径,FileCheck 报错。自 #195192 合并后,XPU 工作流每次提交都失败。PR 通过添加 skipIfXpu 装饰器跳过该测试,因为该回退行为是 CUDA/ROCm 特有的。测试无法本地验证,需 Intel XPU 运行器,但装饰器与文件中现有用法一致,并已通过审查。
该 PR 揭示了 PyTorch 中确定性回退路径的硬件特异性:CUDA/ROCm 在确定性模式下将 index_add 回退到 index_put_,而 XPU 不采用此路径,导致测试断言失败。这表明不同后端的确定性实现存在差异,测试需要针对硬件特性进行门控。
PyTorch 对 XPU 的支持正在成熟,但硬件特定行为仍需持续适配。测试跳过反映了多后端支持中的常见挑战,即某些功能仅针对特定硬件实现,需要维护者识别并调整测试。
该修复稳定了 PyTorch 的 XPU CI,确保 Intel 硬件用户获得可靠的测试反馈,减少因测试失败导致的开发阻塞,提升多硬件支持的质量。
未来,PyTorch 可能为 XPU 实现确定性回退,或扩展测试门控以覆盖更多后端。可关注后续 PR 是否添加 XPU 的确定性支持或改进测试基础设施。