OpenCL:通过划分GPU资源来执行并发内核

OpenCL:通过划分GPU资源来执行并发内核,opencl,Opencl,假设我的GPU总共有8个内核。我想要的是在4个内核中的每一个上并行运行两个内核(或者如果不可能,那么至少并发运行)。可能吗?如果是,我们如何在OpenCL中做到这一点 一次运行多个OpenCL内核的能力由硬件决定。最新的AMD和Nvidia卡可以做到这一点。至少您需要这样的设备&多个命令队列,在这些队列中,您可以对内核执行排队。看看这个: GPU的划分称为设备裂变。它在OpenCL1.1中作为扩展得到支持,并在OpenCL1.2中开箱即用。顺便说一句,主要供应商不支持GPU,不过,CPU可以很容

假设我的GPU总共有8个内核。我想要的是在4个内核中的每一个上并行运行两个内核(或者如果不可能,那么至少并发运行)。可能吗?如果是,我们如何在OpenCL中做到这一点

一次运行多个OpenCL内核的能力由硬件决定。最新的AMD和Nvidia卡可以做到这一点。至少您需要这样的设备&多个命令队列,在这些队列中,您可以对内核执行排队。看看这个:

GPU的划分称为设备裂变。它在OpenCL1.1中作为扩展得到支持,并在OpenCL1.2中开箱即用。顺便说一句,主要供应商不支持GPU,不过,CPU可以很容易地分割成子设备。通讯器API调用是clCreateSubDevices。关于这个主题的好文章:英特尔