评价此页

torch.xpu.memory.memory_stats#

torch.xpu.memory.memory_stats(device=None)[source]#

返回给定设备的 XPU 内存分配器统计信息的字典。

此函数的返回值是一个统计字典,其中每个统计项都是一个非负整数。

核心统计信息

  • "allocated_bytes.{all,large_pool,small_pool}.{current,peak,allocated,freed}": 已分配内存的大小。

  • "reserved_bytes.{all,large_pool,small_pool}.{current,peak,allocated,freed}": 已预留内存的大小。

  • "active_bytes.{all,large_pool,small_pool}.{current,peak,allocated,freed}": 活动内存的大小。

  • "requested_bytes.{all,large_pool,small_pool}.{current,peak,allocated,freed}": 客户端代码请求的内存,将其与 allocated_bytes 进行比较,以检查分配舍入是否会增加过多开销。

对于这些核心统计信息,值按以下方式细分。

内存池类型

  • all: 所有内存池的组合统计信息。

  • large_pool: 大内存分配池(用于大小 >= 1MB 的分配)的统计信息。

  • small_pool: 小内存分配池(用于大小 < 1MB 的分配)的统计信息。

指标类型

  • current:此指标的当前值。

  • peak:此指标的最大值。

  • allocated:此指标的历史总增长量。

  • freed:此指标的历史总减少量。

参数

device (torch.deviceintstr, 可选) – 选定的设备。如果 deviceNone(默认值),则返回当前设备(由 current_device() 指定)的统计信息。

返回类型

dict[str, Any]