目录
torch.cuda.current_blas_handle()
torch.cuda.current_stream(device=None)
torch.cuda.default_stream(device=None)
class torch.cuda.device(device)
class torch.cuda.device_of(obj)
torch.cuda.get_device_capability(device=None)
torch.cuda.get_device_name(device=None)
torch.cuda.max_memory_allocated(device=None)
torch.cuda.max_memory_cached(device=None)
torch.cuda.memory_allocated(device=None)
torch.cuda.memory_cached(device=None)
torch.cuda.reset_max_memory_allocated(device=None)
torch.cuda.reset_max_memory_cached(device=None)
torch.cuda.synchronize(device=None)
torch.cuda.get_rng_state(device='cuda')
torch.cuda.get_rng_state_all()
torch.cuda.set_rng_state(new_state, device='cuda')
torch.cuda.set_rng_state_all(new_states)
torch.cuda.comm.broadcast(tensor, devices)
torch.cuda.comm.broadcast_coalesced(tensors, devices, buffer_size=10485760)
torch.cuda.comm.reduce_add(inputs, destination=None)
torch.cuda.comm.scatter(tensor, devices, chunk_sizes=None, dim=0, streams=None)
torch.cuda.comm.gather(tensors, dim=0, destination=None)
torch.cuda.memory_allocated(device=None)
torch.cuda.max_memory_allocated(device=None)
torch.cuda.reset_max_memory_allocated(device=None)
torch.cuda.memory_cached(device=None)
torch.cuda.max_memory_cached(device=None)
torch.cuda.reset_max_memory_cached(device=None)
torch.cuda.nvtx.range_push(msg)
这个包增加了对CUDA张量类型的支持,它实现了与CPU张量相同的功能,但是它们利用gpu进行计算。它是惰性初始化的,所以你总是可以导入它,并使用is_available()来确定您的系统是否支持CUDA。CUDA语义提供了更多关于使用CUDA的细节。
torch.cuda.current_blas_handle()
返回指向当前cuBLAS句柄的cublasHandle_t指针。
torch.cuda.current_device()
返回当前选定设备的索引。
torch.cuda.current_stream(device=None)
返回给定设备当前选定的流。
参数:
- device (torch.device or int, optional) – 选定的设备。返回当前设备当前选择的流,如果设备为None(默认),则由current_device()给出。
torch.cuda.
default_stream
(device=None)
返回给定设备的默认流。
参数:
- device (torch.device or int, optional) – 选定的设备。返回当前设备的默认流,如果设备为None(默认),则由current_device()提供。
class torch.cuda.
device
(device)
更改所选设备的上下文管理器。
参数:
- device (torch.device or int) – 要选择的设备索引。如果这个参数是负整数或None,那么它就是no-op。
torch.cuda.
device_count
()
返回可用的gpu数量。
class torch.cuda.
device_of
(obj)
将当前设备更改为给定对象的设备的上下文管理器。您可以同时使用张量和存储作为参数。如果一个给定的对象没有分配在GPU上,这是一个no-op。
参数:
obj (Tensor or Storage) – 在选定设备上分配的对象。
torch.cuda.
empty_cache
()
释放缓存分配器当前持有的所有未占用的缓存内存,以便这些内存可以在其他GPU应用程序中使用,并在nvidia-smi中可见。
注意
empty_cache()不会增加PyTorch可用的GPU内存。有关GPU内存管理的更多细节,请参见内存管理。
torch.cuda.
get_device_capability
(device=None)
获取设备的cuda功能。
参数:
- device (torch.device or int, optional) – 用于返回设备功能的设备。如果这个参数是一个负整数,那么这个函数就是no-op。如果设备为None(默认),则使用current_device()提供的当前设备。
返回值:
- 主要和次要cuda功能的设备,返回类型。
torch.cuda.
get_device_name
(device=None)
获取设备的名称。
参数:
- device (torch.device or int, optional) – 用于返回名称的设备。如果这个参数是一个负整数,那么这个函数就是no-op。如果设备为None(默认),则使用current_device()提供的当前设备。
torch.cuda.
init
()
初始化PyTorch的CUDA状态。如果您通过PyTorch的C API与它进行交互,可能需要显式地调用这个函数,因为在初始化之前,CUDA功能的Python绑定不会这样做。普通用户不应该需要这样做,因为PyTorch的所有CUDA方法都会根据需要自动初始化CUDA状态。如果CUDA状态已经初始化,则不执行任何操作。
torch.cuda.
ipc_collect
()
Force在CUDA IPC释放GPU内存后收集GPU内存。
注意:
检查是否有任何已发送的CUDA张量可以从内存中清除。如果没有活动计数器,则强制关闭用于引用计数的共享内存文件。当生成器进程停止主动发送张量并希望释放未使用的内存时,此函数非常有用。
torch.cuda.
is_available
()
返回一个bool,指示CUDA当前是否可用。
torch.cuda.
max_memory_allocated
(device=None)
返回给定设备张量占用的最大GPU内存(以字节为单位)。默认情况下,这将返回自该程序开始以来分配的内存峰值。reset_max_memory_assigned()可用于重置跟踪此指标的起始点。例如,这两个函数可以测量训练循环中每个迭代的分配内存使用量峰值。
参数:
- device (torch.device or int, optional) – 选定的设备。返回当前设备的统计信息,由current_device()给出,如果设备为None(缺省值)。
注意
有关GPU内存管理的更多细节,请参见内存管理。
torch.cuda.
max_memory_cached
(device=None)
返回缓存分配器为给定设备管理的最大GPU内存(以字节为单位)。默认情况下,这将返回自该程序开始以来的峰值缓存内存。reset_max_memory_cached()可用于重置跟踪此指标的起始点。例如,这两个函数可以测量训练循环中每个迭代的峰值缓存内存量。
参数:
- device (to