mindspore.utils
- mindspore.utils.stress_detect(detect_type='aic')[源代码]
此接口将在后续版本中废弃,请使用接口
mindspore.tools.stress_detect()
代替。- 参数:
detect_type (str,可选) - 进行压测的类型。有两种可选:
'aic'
和'hccs'
,分别会对设备进行AiCore和HCCS链路压测。默认'aic'
。
- 返回:
int。返回值代表错误类型,0表示正常;1表示精度检测用例执行失败;2表示硬件故障,建议更换设备。
- 支持平台:
Ascend
样例:
>>> from mindspore.utils import stress_detect >>> ret = stress_detect() >>> print(ret) 0
- mindspore.utils.dlpack.from_dlpack(dlpack)[源代码]
将DLPack对象转换为MindSpore Tensor。
此函数允许从其他支持DLPack的深度学习框架共享张量数据。 数据不会被复制,返回的MindSpore Tensor与源张量共享内存。
警告
这是一个实验性API,后续可能修改或删除。
- 参数:
dlpack (PyCapsule) - 要转换的DLPack对象,它是一个包含指向 DLManagedTensor 的指针的capsule。
- 返回:
Tensor, 与DLPack对象共享内存的MindSpore Tensor。
- 支持平台:
Ascend
样例:
>>> import mindspore as ms >>> from mindspore.utils.dlpack import to_dlpack, from_dlpack >>> import numpy as np >>> # Create a MindSpore Tensor and convert it to DLPack >>> x = ms.Tensor(np.random.rand(2, 3), ms.float32) >>> dlpack_obj = to_dlpack(x) >>> >>> # Convert the DLPack object back to a MindSpore Tensor >>> y = from_dlpack(dlpack_obj) >>> print(x.shape == y.shape) True
- mindspore.utils.dlpack.to_dlpack(tensor)[源代码]
将MindSpore的Tensor转换为DLPack对象。
DLPack格式是在不同深度学习框架之间共享张量数据的标准。 返回的DLPack对象是一个Python capsule,可以被其他支持DLPack的库使用。 该capsule包含一个指向 DLManagedTensor 结构的指针。DLPack对象的使用者负责释放内存。
警告
这是一个实验性API,后续可能修改或删除。
- 参数:
tensor (Tensor) - 要转换的MindSpore Tensor。
- 返回:
PyCapsule, 一个可以被其他库使用的DLPack对象。
- 支持平台:
Ascend
样例:
>>> import mindspore as ms >>> from mindspore.utils.dlpack import to_dlpack, from_dlpack >>> import numpy as np >>> # Convert a MindSpore Tensor to DLPack >>> x = ms.Tensor(np.random.rand(2, 3), ms.float32) >>> dlpack_obj = to_dlpack(x) >>> >>> # At this point, dlpack_obj can be used by other frameworks that support DLPack. >>> # For demonstration, we convert it back to a MindSpore Tensor. >>> y = from_dlpack(dlpack_obj) >>> print(x.shape == y.shape) True
- mindspore.utils.dryrun.set_simulation()[源代码]
用于设置dryrun功能开启。dryrun功能主要用于模拟大模型的实际运行,开启后可以在不占卡的情况下模拟出显存占用,编译信息等。 在PyNative场景下开启后,若存在从device取值到host的场景,会打印出Python调用栈日志,告知用户这些值是不准确的。
- 支持平台:
Ascend
样例:
>>> import mindspore as ms >>> from mindspore.utils import dryrun >>> import numpy as np >>> dryrun.set_simulation() >>> print(os.environ.get('MS_SIMULATION_LEVEL')) 1
- mindspore.utils.dryrun.mock(mock_val, *args)[源代码]
在网络中若一些if判断需要用到实际执行值,虚拟执行无法获取,可以使用该接口返回模拟值。实际执行时可以获取到正确结果,返回执行值。
- 参数:
mock_val (Union[Value, Tensor]) - 虚拟执行场景下,想要输出的值。
args (Union[Value, function]) - 期望被mock掉的值,可以是函数或者变量。
- 返回:
开启dryrun功能,返回静态模拟值(mock_val),否则返回实际执行结果(args)。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import mindspore as ms >>> from mindspore.utils import dryrun >>> import numpy as np >>> dryrun.set_simulation() >>> a = ms.Tensor(np.random.rand(3, 3).astype(np.float32)) >>> if dryrun.mock(True, a[0, 0] > 0.5): ... print("return mock_val: True.") return mock_val: True >>> >>> import mindspore as ms >>> from mindspore.utils import dryrun >>> import numpy as np >>> a = ms.Tensor(np.ones((3, 3)).astype(np.float32)) >>> if dryrun.mock(False, a[0, 0] > 0.5): ... print("return real execution: True.") return real execution: True. >>> >>> import mindspore as ms >>> from mindspore.utils import dryrun >>> import numpy as np >>> a = ms.Tensor(np.ones((3, 3)).astype(np.float32)) >>> if dryrun.mock(False, (a > 0.5).any): ... print("return real execution: True.") return real execution: True.
- mindspore.utils.sdc_detect_start()[源代码]
此接口将在后续版本中废弃,请使用接口
mindspore.tools.sdc_detect_start()
代替。- 支持平台:
Ascend
样例:
>>> from mindspore.utils import sdc_detect_start >>> sdc_detect_start()
- mindspore.utils.sdc_detect_stop()[源代码]
此接口将在后续版本中废弃,请使用接口
mindspore.tools.sdc_detect_stop()
代替。- 支持平台:
Ascend
样例:
>>> from mindspore.utils import sdc_detect_stop >>> sdc_detect_stop()
- mindspore.utils.get_sdc_detect_result()[源代码]
此接口将在后续版本中废弃,请使用接口
mindspore.tools.get_sdc_detect_result()
代替。- 返回:
bool,表示在检测开启后是否发生静默数据错误。
- 支持平台:
Ascend
样例:
>>> from mindspore.utils import get_sdc_detect_result >>> result = get_sdc_detect_result() >>> print(result) False