torch.cuda.memory.host_memory_stats#
- torch.cuda.memory.host_memory_stats()[源代码]#
返回给定设备的 CUDA 内存分配器统计信息的字典。
此函数的返回值是一个统计字典,其中每个统计项都是一个非负整数。
核心统计信息
"allocated.{current,peak,allocated,freed}"
:分配器收到的分配请求数量。"allocated_bytes.{current,peak,allocated,freed}"
:已分配的内存量。"segment.{current,peak,allocated,freed}"
:从cudaMalloc()
保留的段数。"reserved_bytes.{current,peak,allocated,freed}"
:已保留的内存量。
对于这些核心统计信息,值按以下方式细分。
指标类型
current
:此指标的当前值。peak
:此指标的最大值。allocated
:此指标的历史总增长量。freed
:此指标的历史总减少量。
除了核心统计数据外,我们还提供了一些简单的事件计数器
"num_host_alloc"
:CUDA 分配调用的数量。这包括 cudaHostAlloc 和 cudaHostRegister。"num_host_free"
:CUDA 释放调用的数量。这包括 cudaHostFree 和 cudaHostUnregister。
最后,我们还提供了一些简单的计时计数器
"host_alloc_time.{total,max,min,count,avg}"
:通过 CUDA 调用进行的分配请求的计时。"host_free_time.{total,max,min,count,avg}"
:通过 CUDA 调用进行的释放请求的计时。
对于这些计时统计信息,值分解如下。
指标类型
total
:花费的总时间。max
:每次调用的最大值。min
:每次调用的最小值。count
:调用次数。avg
:每次调用的平均时间。