torch.cuda¶
此软件包添加了对 CUDA 张量类型的支持。
它实现了与 CPU 张量相同的功能,但它们使用 GPU 进行计算。
它是懒加载初始化的,所以你可以随时导入它,并使用
is_available() 来确定你的系统是否支持CUDA。
CUDA语义 有关于使用CUDA的更多详细信息。
上下文管理器,用于选择指定的流。 |
|
检查两台设备之间的对等访问是否可行。 |
|
返回当前 cuBLAS 处理句柄的 cublasHandle_t 指针 |
|
返回当前选定设备的索引。 |
|
返回给定设备当前选择的 |
|
返回给定设备的默认 |
|
上下文管理器,用于更改选定的设备。 |
|
返回可用的 GPU 数量。 |
|
上下文管理器,可将当前设备更改为给定对象的设备。 |
|
返回此库编译所针对的 CUDA 架构列表。 |
|
获取设备的 CUDA 能力。 |
|
获取设备的名称。 |
|
获取设备的属性。 |
|
返回此库编译时使用的 NVCC gencode 标志。 |
|
返回当前用于cuda同步操作的调试模式值。 |
|
初始化 PyTorch 的 CUDA 状态。 |
|
在 CUDA IPC 释放 GPU 内存后,强制收集该内存。 |
|
返回一个布尔值,指示当前是否可用 CUDA。 |
|
返回 PyTorch 的 CUDA 状态是否已初始化。 |
|
返回过去采样期内全局(设备)内存被读取或写入的时间百分比,由nvidia-smi给出。 |
|
设置当前设备。 |
|
设置当前流。这是一个用于设置流的包装 API。 |
|
设置cuda同步操作的调试模式。 |
|
围绕选择给定流的上下文管理器 StreamContext 进行包装。 |
|
等待设备上所有流中的所有内核完成。 |
|
返回过去采样期内GPU上一个或多个内核处于执行状态的时间百分比,由nvidia-smi给出。 |
|
返回 GPU 传感器的平均温度,单位为摄氏度 (C)。 |
|
返回GPU传感器的平均功耗,单位为毫瓦(mW)。 |
|
返回过去采样期内由nvidia-smi给出的GPU SM的时钟速度(以赫兹为单位)。 |
|
当设备内存不足时引发异常 |
随机数生成器¶
返回指定 GPU 的随机数生成器状态作为字节张量。 |
|
返回一个列表,其中包含表示所有设备随机数状态的ByteTensor。 |
|
设置指定GPU的随机数生成器状态。 |
|
设置所有设备的随机数生成器状态。 |
|
为当前GPU生成随机数设置种子。 |
|
设置所有 GPU 上生成随机数的种子。 |
|
将生成随机数的种子设置为当前 GPU 的一个随机数。 |
|
在所有 GPU 上将生成随机数的种子设置为一个随机数。 |
|
返回当前 GPU 的当前随机种子。 |
通信集合¶
将张量广播到指定的 GPU 设备。 |
|
将张量序列广播到指定的 GPU 上。 |
|
从多个 GPU 上求和张量。 |
|
在多个 GPU 上分配张量。 |
|
从多个GPU设备收集张量。 |
流和事件¶
围绕 CUDA 流的包装器。 |
|
围绕外部分配的 CUDA 流的包装器。 |
|
围绕 CUDA 事件的包装器。 |
图表(测试版)¶
如果当前 CUDA 流中正在捕获 CUDA 图形,则返回 True,否则返回 False。 |
|
返回一个不透明的令牌,表示图内存池的 ID。 |
|
CUDA 图形的包装器。 |
|
上下文管理器,将CUDA工作捕获到一个 |
|
接受可调用对象(函数或 |
内存管理¶
释放当前由缓存分配器占用的所有未使用的缓存内存,以便这些内存可以在其他GPU应用程序中使用,并在nvidia-smi中可见。 |
|
返回给定设备上正在运行的过程及其 GPU 内存使用的易读打印信息。 |
|
返回给定设备的全局空闲和总 GPU 内存,使用 cudaMemGetInfo。 |
|
返回给定设备的 CUDA 内存分配器统计信息字典。 |
|
返回给定设备当前内存分配器统计信息的人类可读打印输出。 |
|
返回所有设备上 CUDA 内存分配器状态的快照。 |
|
返回给定设备上张量当前占用的 GPU 内存字节数。 |
|
返回给定设备上张量占用的最大 GPU 内存字节数。 |
|
重置给定设备上由张量占用的最大 GPU 内存的跟踪起点。 |
|
返回给定设备上由缓存分配器管理的当前 GPU 内存,单位为字节。 |
|
返回给定设备上缓存分配器管理的最大 GPU 内存(以字节为单位)。 |
|
为进程设置内存比例。 |
|
已弃用;参见 |
|
已弃用;参见 |
|
重置给定设备中由缓存分配器管理的最大 GPU 内存跟踪的起始点。 |
|
重置由 CUDA 内存分配器跟踪的“峰值”统计信息。 |
|
使用 CUDA 内存分配器进行内存分配。 |
|
释放使用 CUDA 内存分配器分配的内存。 |
|
返回一个字符串,描述由 |
|
从 SO 文件加载的 CUDA 内存分配器。 |
|
将当前使用的内存分配器更改为提供的分配器。 |
NVIDIA 工具扩展 (NVTX)¶
描述某个时刻发生的一个瞬间事件。 |
|
将一个范围推到嵌套范围跨度的栈上。 |
|
从嵌套范围跨度的栈中弹出一个范围。 |
|
上下文管理器/装饰器,在其作用域开始时推送一个NVTX范围,并在其结束时弹出。 |
Jiterator (测试版)¶
为元素级运算创建一个由 jiterator 生成的 CUDA 内核。 |
|
为元素级运算创建一个由 jiterator 生成的 CUDA 内核,支持返回一个或多个输出。 |