Parallel execution of OpenCL kernels of two different programs on a GPU
I have two OpenCL applications that I want to execute in parallel on a GPU. The purpose is to reduce the execution time of two parallelly executing programs in comparison to when both programs are executed one by one. Suppose the name of the first application is A1.c and its kernel is named as a1.cl. Suppose the second application is A2.c and its kernel is named as a2.cl. When I launch both A1.c and A2.c simultaneously, their respective kernels a1.cland a2.cl are not executing in parallel.
My question is how can I execute kernels of two different programs, in parallel, on the GPU.