concurrency - concurrent kernel execution -
is possible launch kernels different threads of (host) application , have them run concurrently on same gpgpu device? if not, know of plans (of nvidia) provide capability in future?
the programming guide http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/docs/nvidia_cuda_c_programmingguide_3.1.pdf says:
3.2.7.3 concurrent kernel execution devices of compute capability 2.0 can execute multiple kernels concurrently. applications may query capability calling cudagetdeviceproperties() , checking concurrentkernels property. maximum number of kernel launches device can execute concurrently sixteen.
so answer is: depends. depends on device. host threads won't make difference in way. concurrent kernel launches serialized if device doesn't support concurrent kernel execution , if device does, serial kernel launches on different streams executed concurrently.
Comments
Post a Comment