主要内容

gpuDeviceCount

GPU设备数量

    描述

    例子

    n= gpuDeviceCount返回GPU设备驱动程序报告的GPU设备数量。驱动程序报告的所有设备都被统计,包括MATLAB中不支持的设备®以及当前MATLAB会话中不可使用的设备。

    例子

    n= gpuDeviceCount (countMode返回您的计算机中GPU设备的数量,根据countMode.使用此语法仅计算受支持的GPU设备,或仅计算可在此MATLAB会话中使用的设备。

    例子

    nindx) = gpuDeviceCount (___还返回任何前面语法的已计数GPU设备的索引。当您希望选择或检查已计数的GPU设备时,请使用此语法。

    例子

    全部折叠

    确定计算机中可用的GPU设备数量及其索引。

    [n, indx] = gpuDeviceCount
    N = 2 indx = 1

    查询图形处理器的属性gpuDeviceTable

    gpuDeviceTable
    ans =索引名称ComputeCapability DeviceAvailable DeviceSelected  _____ __________________ _________________ _______________ ______________ 1“泰坦RTX”“7.5”真假2“GeForce GTX 1080”“5.0”真正的事实

    如果可以访问多个gpu,则可以使用并行池在多个gpu上并行执行计算。

    要确定可在MATLAB中使用的gpu的数量,请使用gpuDeviceCount函数。

    availableGPUs = gpuDeviceCount (“可用”
    availableGPUs = 3

    用尽可能多的可用gpu启动一个并行池。为了获得最佳性能,MATLAB默认为每个worker分配不同的GPU。

    parpool (“过程”, availableGPUs);
    使用“Processes”配置文件启动并行池(parpool)…连接到并行池(工作人员数量:3)。

    要识别每个工作人员使用的GPU,请调用gpuDevice在一个spmd块。的spmd块运行gpuDevice在每一个工人。

    spmdgpuDevice结束

    使用并行语言特性,例如parforparfeval,将计算分配给并行池中的工作人员。如果你使用gpuArray在你的计算中启用函数,这些函数在worker的GPU上运行。有关更多信息,请参见在图形处理器上运行MATLAB函数.示例请参见在多gpu上运行MATLAB函数

    完成计算后,关闭并行池。您可以使用gcp函数获取当前并行池。

    删除(gcp (“nocreate”));

    如果你想使用不同的gpu选择,那么你可以使用gpuDevice使用GPU设备索引在每个worker上选择一个特定的GPU。获取系统中每个GPU设备的索引gpuDeviceCount函数。

    假设您的系统中有三个可用的gpu,但您希望只使用两个进行一次计算。获取设备索引。

    [availableGPUs, gpuIndx] = gpuDeviceCount (“可用”
    availableGPUs = 3
    gpuIndx =1×31 2 3

    定义要使用的设备的索引。

    useGPUs = [1 3];

    启动并行池。使用一个spmd块和gpuDevice使用设备索引将每个工作人员与你想使用的一个gpu关联起来。的spmdIndex函数标识每个worker的索引。

    parpool (“过程”元素个数(useGPUs));
    使用“Processes”配置文件启动并行池(parpool)…连接到并行池(工人数量:2)。
    spmdgpuDevice (useGPUs (spmdIndex));结束

    作为最佳实践和最佳性能,为每个worker分配不同的GPU。

    完成计算后,关闭并行池。

    删除(gcp (“nocreate”));

    输入参数

    全部折叠

    设备计数模式,指定为以下之一:

    • “所有”—统计GPU设备驱动上报的所有GPU设备。计数包括MATLAB中不支持的设备和当前MATLAB会话中不可用的设备。

    • “支持”-只计算当前版本MATLAB支持的GPU设备。

    • “可用”-只计算当前MATLAB会话中可用的GPU设备。

    例子:“可用”

    数据类型:字符|字符串

    输出参数

    全部折叠

    GPU设备的数量,作为正标量返回。

    GPU设备的索引,作为数字向量返回。的每个元素indx为已统计GPU设备的设备索引。通过设备索引选择或查询GPU设备gpuDevice函数。

    版本历史

    介绍了R2010b

    Baidu
    map