cupy.cuda.Device#
- class cupy.cuda.Device(device=None)[source]#
表示 CUDA 设备的类。
此类提供 CUDA 设备的一些基本操作。
它支持上下文协议。例如,以下代码是临时切换当前设备的示例:
with Device(0): do_something_on_device_0()
在 with 语句完成后,当前设备将重置为原始设备。
- 参数:
device (int 或 cupy.cuda.Device) – 要操作的设备索引。请注意,设备 ID(也称为 GPU ID)是从零开始的。如果是一个 Device 对象,则使用其 ID。默认选择当前设备。
- 变量:
id (int) – 此设备的 ID。
方法
- __enter__(self)#
- __exit__(self, *args)#
- from_pci_bus_id(cls, pci_bus_id)#
根据 PCI 总线 ID 返回新的设备实例
- synchronize(self)#
将当前线程与设备同步。
- use(self)#
将此设备设为当前设备。
如果要临时切换设备,请使用 with 语句。
- __eq__(value, /)#
返回 self==value。
- __ne__(value, /)#
返回 self!=value。
- __lt__(value, /)#
返回 self<value。
- __le__(value, /)#
返回 self<=value。
- __gt__(value, /)#
返回 self>value。
- __ge__(value, /)#
返回 self>=value。
属性
- attributes#
设备属性字典。
- 返回:
字典的键是属性名称,值是属性值。属性名称已移除字符串 cudaDevAttr。例如,枚举值 cudaDevAttrMaxThreadsPerBlock 对应的属性键为 MaxThreadsPerBlock。
- 返回类型:
attributes (dict)
- compute_capability#
此设备的计算能力。
计算能力由包含主索引和次索引的字符串表示。例如,计算能力 3.5 由字符串“35”表示。
- cublas_handle#
此设备的 cuBLAS 句柄。
即使 Device 实例本身不同,同一设备也使用相同的句柄。
- cusolver_handle#
此设备的 cuSOLVER 句柄。
即使 Device 实例本身不同,同一设备也使用相同的句柄。
- cusolver_sp_handle#
此设备的 cuSOLVER Sp 句柄。
即使 Device 实例本身不同,同一设备也使用相同的句柄。
- cusparse_handle#
此设备的 cuSPARSE 句柄。
即使 Device 实例本身不同,同一设备也使用相同的句柄。
- id#
‘int’
- 类型:
id
- mem_info#
设备内存信息。
- 返回:
free: 可用内存量,以字节为单位。total: 总内存量,以字节为单位。
- 返回类型:
free