mindspore.hal

Hal中封装了设备管理、流管理、事件管理与内存管理的接口。MindSpore从不同后端抽象出对应的上述模块,允许用户在Python层调度硬件资源。

设备管理

接口名

概述

支持平台

mindspore.hal.device_count

查询指定后端类型的设备数量。

Ascend GPU CPU

mindspore.hal.get_arch_list

返回此MindSpore包支持哪些后端架构。

Ascend GPU CPU

mindspore.hal.get_device_capability

返回指定卡号设备的设备能力。

Ascend GPU CPU

mindspore.hal.get_device_name

返回指定卡号设备的设备名称。

Ascend GPU CPU

mindspore.hal.get_device_properties

返回指定卡号设备的设备属性信息。

Ascend GPU CPU

mindspore.hal.is_available

查询指定后端是否可用。

Ascend GPU CPU

mindspore.hal.is_initialized

返回指定后端是否已被初始化。

Ascend GPU CPU

流管理

接口名

概述

支持平台

mindspore.hal.communication_stream

返回此设备上的通信流。

Ascend GPU CPU

mindspore.hal.current_stream

返回此设备上正在使用的流。

Ascend GPU CPU

mindspore.hal.default_stream

返回此设备上的默认流。

Ascend GPU CPU

mindspore.hal.set_cur_stream

设置当前流,这是用于设置流的包装器API。

Ascend GPU CPU

mindspore.hal.synchronize

同步当前设备上的所有流。

Ascend GPU CPU

mindspore.hal.Stream

基于设备流的封装器。

Ascend GPU CPU

mindspore.hal.StreamCtx

上下文管理器,用于选择给定的流。

Ascend GPU CPU

事件管理

接口名

概述

支持平台

mindspore.hal.Event

设备事件的封装器。

Ascend GPU CPU

内存管理

接口名

概述

支持平台

mindspore.hal.contiguous_tensors_handle.combine_tensor_list_contiguous

返回一个连续内存管理器,在该内存管理器中,申请了连续内存,并提供切片功能。

Ascend GPU CPU

mindspore.hal.contiguous_tensors_handle.ContiguousTensorsHandle

连续内存管理器。

Ascend GPU CPU

mindspore.hal.max_memory_allocated

返回从进程启动开始,内存池真实被Tensor占用的内存大小的峰值。

Ascend GPU CPU

mindspore.hal.max_memory_reserved

返回从进程启动开始,内存池管理的内存总量的峰值。

Ascend GPU CPU

mindspore.hal.memory_allocated

返回当前真实被Tensor占用的内存大小。

Ascend GPU CPU

mindspore.hal.memory_reserved

返回内存池当前管理的内存总量。

Ascend GPU CPU

mindspore.hal.memory_stats

返回从内存池查询到的状态信息。

Ascend GPU CPU

mindspore.hal.memory_summary

返回可读的内存池状态信息。

Ascend GPU CPU

mindspore.hal.reset_max_memory_reserved

重置被内存池所管理的内存的峰值。

Ascend GPU CPU

mindspore.hal.reset_max_memory_allocated

重置内存池真实被Tensor占用的内存大小的峰值。

Ascend GPU CPU

mindspore.hal.reset_peak_memory_stats

重置内存池中的全部峰值。

Ascend GPU CPU

mindspore.hal.empty_cache

清理内存池中的内存碎片,优化内存排布。

Ascend GPU CPU