快捷方式

MPS 环境变量

PyTorch 环境变量

变量

描述

PYTORCH_DEBUG_MPS_ALLOCATOR

如果设置为 1,则将分配器日志级别设置为详细。

PYTORCH_MPS_LOG_PROFILE_INFO

将日志选项位掩码设置为 MPSProfiler。有关可用选项,请参阅 aten/src/ATen/mps/MPSProfiler.h 中的 LogOptions 枚举。

PYTORCH_MPS_TRACE_SIGNPOSTS

将配置文件和标志位掩码设置为 MPSProfiler。有关可用选项,请参阅 aten/src/ATen/mps/MPSProfiler.h 中的 ProfileOptionsSignpostTypes 枚举。

PYTORCH_MPS_HIGH_WATERMARK_RATIO

MPS 分配器的高水位比。默认设置为 1.7。

PYTORCH_MPS_LOW_WATERMARK_RATIO

MPS 分配器的低水位比。默认情况下,如果内存是统一内存,则设置为 1.4;如果内存是独立内存,则设置为 1.0。

PYTORCH_MPS_FAST_MATH

如果设置为 1,则为 MPS Metal 内核启用快速数学。有关精度影响,请参阅 https://developer.apple.com/metal/Metal-Shading-Language-Specification.pdf 中的 1.6.3 节。

PYTORCH_MPS_PREFER_METAL

如果设置为 1,则强制使用 Metal 内核而不是使用 MPS Graph API。目前仅用于 matmul 操作。

PYTORCH_ENABLE_MPS_FALLBACK

如果设置为 1,当 MPS 不支持某些操作时,回退到 CPU 进行处理。

注意

高水位比 是总允许分配的硬限制

  • 0.0 : 禁用高水位限制(如果发生系统范围的 OOM,可能会导致系统故障)

  • 1.0 : 建议的最大分配大小(即 device.recommendedMaxWorkingSetSize)

  • >1.0: 允许超出 device.recommendedMaxWorkingSetSize 的限制

例如,值 0.95 表示我们最多分配建议最大分配大小的 95%;超出此范围,分配将因 OOM 错误而失败。

低水位比 是一个软限制,尝试通过垃圾回收或更频繁地提交命令缓冲区(也称为自适应提交)将内存分配限制在较低水位水平。值介于 0 到 m_high_watermark_ratio 之间(设置为 0.0 会禁用自适应提交和垃圾回收),例如,值 0.9 表示我们“尝试”将分配限制在建议最大分配大小的 90%。

文档

查阅 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源