Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

Running OpenCL kernel (s) on CPU and GPU



I am posting my queries in "media" forum because I think they are related to the OpenCL driver. Please let me know if I should post it to some other forum as well.

I have installed intel media server studio essential 2015 R5 took kit. I have CentOS 7.1 running on Intel i7-4790K processor with HD4600 graphics. I want to confirm/ask following points related to running OpenCL programs with the new OpenCL Driver:

1) Although the website ( , 3rd option) says that the OpenCL driver on Linux OS supports only GPU, I am able to run the programs on both CPU and GPU by using CL_DEVICE_TYPE_{GPU/CPU} options. I am wondering if there is any limitation that I should be aware of while running a program on CPU. Please confirm.

2) Is it possible to execute multiple kernels at the same time on GPU? More specifically, I would like to know about the scheduling behavior in following cases:

(a) When multiple kernels (with no dependencies among them) are launched from an application through multiple command-queues: Do these kernels run concurrently, say when a particular kernel does not use all available cores of GPU? I know that there are four time stamps in a kernel execution: enqueue, submit, start, end. Can multiple kernels have an overlap between start and end? I think Device fission is one way of dividing the number of cores in to different groups, but I am wondering if the GPU hardware has an internal mechanism to run multiple kernels without Device fission?

(b) When multiple kernels are launched from DIFFERENT applications: Here, different kernels belong to different programs. How does the OpenCL driver schedule kernels in this case? Can multiple kernels "run" concurrently?




0 Kudos
2 Replies

Hi Kapil,

Could you post your questions in the OpenCL forum here I think you will get more information there. Thanks!

0 Kudos

Thanks Shaojuan!

Based on your suggestion, I posted it on "OpenCL" forum as well.


0 Kudos