gpuDevice
查询或选择 GPU 设备
说明
GPUDevice 对象代表计算机中的图形处理单元 (GPU)。您可以使用 GPU 运行支持 gpuArray 变量的 MATLAB® 代码或使用 CUDAKernel 对象执行 CUDA® 内核。
您可以使用 GPUDevice 对象来检查 GPU 设备的属性、重置 GPU 设备或等待 GPU 完成执行计算。要获取 GPUDevice 对象,请使用 gpuDevice 函数。您还可以使用 gpuDevice 函数选择或取消选择您的 GPU 设备。如果您可以访问多个 GPU,请使用 gpuDevice 函数选择要在其上执行代码的特定 GPU 设备。
您不需要使用 GPUDevice 对象在 GPU 上运行函数。有关如何使用支持 GPU 的函数的更多信息,请参阅 在 GPU 上运行 MATLAB 函数。
创建对象
描述
gpuDevice 显示当前选定的 GPU 设备的属性。如果当前没有选定的设备,gpuDevice 将选择默认设备而不清除它。当您想要检查 GPU 设备的属性时,请使用此语法。
D = gpuDevice 返回一个代表当前选定的设备的 GPUDevice 对象。如果当前没有选定的设备,gpuDevice 将选择默认设备并返回代表该设备的 GPUDevice 对象而不清除它。
gpuDevice([]) 使用一个空参量(而不是没有参量)取消选择 GPU 设备并清除其内存中的 gpuArray 和 CUDAKernel 变量。此语法不选择任何 GPU 设备作为当前设备。
输入参量
属性
对象函数
reset | 重置 GPU 设备并清除其内存 |
wait (GPUDevice) | 等待 GPU 计算完成 |
还提供以下函数:
parallel.gpu.GPUDevice.isAvailable(ind) | 如果索引 1 指定的 GPU 受支持且能够被选择,则返回逻辑 true 或 ind。ind 可以是整数或整数向量;默认索引是当前设备。 |
parallel.gpu.GPUDevice.getDevice(ind) | 返回一个 GPUDevice 对象而不选择它。 |
要获得完整的函数列表,请在 methods 对象上使用 GPUDevice 函数:
methods('parallel.gpu.GPUDevice')您可以使用以下命令获取任何对象函数的帮助:
help parallel.gpu.GPUDevice.functionname
其中 functionname 是函数的名称。例如,要获取有关 isAvailable 的帮助,请输入:
help parallel.gpu.GPUDevice.isAvailable
示例
提示
要查询远程 GPU 的属性,请使用您的集群启动一个并行池,然后在
spmd模块内调用gpuDevice。如果工作单元拥有多于一个的 GPU,请改用gpuDeviceTable。cluster = parcluster("myRemoteGPUCluster"); pool = parpool(cluster); spmd D = gpuDevice end
有关使用远程 GPU 的更多信息,请参阅 使用远程 GPU。
