torch.backends.mkl 的源代码
# mypy: 允许未类型化定义
导入
火炬
[文档]def is_available():
r"""返回 PyTorch 是否使用 MKL 支持构建。"""
return torch._C.has_mkl
VERBOSE_OFF = 0
VERBOSE_ON = 1
[文档]class verbose:
""
按需启用 oneMKL 详细输出功能。
为了便于调试性能问题,oneMKL 可以输出包含执行信息(如持续时间)的详细消息。
在执行过程中,可以输出包含执行信息(如持续时间)的详细消息。
内核。可以通过名为 `MKL_VERBOSE` 的环境变量来调用详细输出功能。
然而,这种方法会在所有步骤中输出消息。这些是大量的详细消息。此外,为了
调查性能问题,通常需要详细消息。
然而,这种方法会在所有步骤中输出消息。这些是大量的详细消息。此外,为了
单次迭代即可。此按需动词化功能
使能够控制冗长消息输出的范围。
以下示例,将输出详细消息
仅推理。
.. 突出显示 :: python
.. 代码块 :: python
import torch
model(data)
with torch.backends.mkl.verbose(torch.backends.mkl.VERBOSE_ON):
model(data)
Args:
level: Verbose level
- ``VERBOSE_OFF``: 关闭详细输出
- ``VERBOSE_ON``: 启用详细输出
"""
def __init__(self, 启用):
self.enable = enable
def __enter__(self):
if self.enable == VERBOSE_OFF:
return
st = torch._C._verbose.mkl_set_verbose(self.enable)
assert (
st
), "无法将 MKL 设置为详细模式。请考虑禁用此详细范围。"
返回自身
def __exit__(self, exc_type, exc_val, exc_tb):
torch._C._verbose.mkl_set_verbose(VERBOSE_OFF)
返回 False