【发布时间】:2011-07-02 04:57:17
【问题描述】:
是否可以从(主机)应用程序的不同线程启动内核并让它们在同一 GPGPU 设备上同时运行?如果没有,您是否知道(英伟达)未来有提供这种能力的计划?
【问题讨论】:
标签: concurrency cuda
是否可以从(主机)应用程序的不同线程启动内核并让它们在同一 GPGPU 设备上同时运行?如果没有,您是否知道(英伟达)未来有提供这种能力的计划?
【问题讨论】:
标签: concurrency cuda
3.2.7.3 并发内核执行 一些计算能力 2.0 的设备可以同时执行多个内核。应用程序可以通过调用 cudaGetDeviceProperties() 并检查 concurrentKernels 属性来查询此功能。 设备可以同时执行的最大内核启动次数为 16 次。
所以答案是:视情况而定。它实际上仅取决于设备。主机线程不会以任何方式产生影响。如果设备不支持并发内核执行,则并发内核启动将被序列化,如果设备支持,则同时执行不同流上的串行内核启动。
【讨论】: