OpenCL* for CPU
Ask questions and share information on Intel® SDK for OpenCL™ Applications and OpenCL™ implementations for Intel® CPU.
Announcements
This forum covers OpenCL* for CPU only. OpenCL* for GPU questions can be asked in the GPU Compute Software forum. Intel® FPGA SDK for OpenCL™ questions can be ask in the FPGA Intel® High Level Design forum.
1719 Discussions

How do I know if the kernels are executing concurrently?

nikey1
Beginner
514 Views
Isee thatthe GPU I am using,supports 16 concurrent kernels. I am starting 10 kernels by looping through clEnqueueNDRangeKernel for 10 times. Each of the kernel is tied to a different command queue. How do I get to know that the kernels are executing concurrently?

One way which I have thought is to get the time before and after the NDRangeKernel statement. I might have to use events so as to ensure the execution of the kernel has completed. But I still feel that the loop will start the kernels sequentially. Can someone tell me if this is the right way to start concurrent kernels..?

0 Kudos
3 Replies
Raghupathi_M_Intel
514 Views

Are you talking about Nvidia GPU?

clEnqueueNDRangeKernel only enques the kernelto the command queue. You are enqueueing the commands sequentially in the loop.Then you'd run your commands (including your kernels) on theGPU by calling clFlush which is not a blocking call. But I am not too sure how you can make sure your kernels are running concurrently. I'd be curious to know too.

Raghu

0 Kudos
nikey1
Beginner
514 Views

After muchgoogling around,I got to know that there is something called Device fission by which we can create subdeviceson the single device and then execute different kernels on those subdevices. I am still reading on it.
Ya am talking about the NVIDIA GPU.

Kindly comment if anyone has more idea on device fission.

0 Kudos
Raghupathi_M_Intel
514 Views
Device fission allows for creating sub-devices from your device, thus, giving more control of the underlying hardwareto the programmer. Each sub-device can have it's own context, command queues etc.

I am not sure ifGPUs, particularly NVidia,support device fission.

Raghu
0 Kudos
Reply