Showing results for 
Search instead for 
Did you mean: 
Honored Contributor I

clfinish is taking more time than kernel execution time

Hi All, 

I am working on a application where every millisec counts. Please refer to the below data.  



Time clFinish 40889 micro seconds 

OpenCl Execution time is: 32.301 milliseconds 

Time ReadBuffer 234 





Time clFinish 41386 micro seconds 

OpenCl Execution time is: 31.889 milliseconds 

Time ReadBuffer 331 



The kernel execution above is taking ~32msec, I have printed this using clGetEventProfilingInfo. But when I check the clfinish time it is close to ~40msec. 

As you can see above here there is a gap of 8msec from clfinish and kernel execution time. Even in profile.mon file the kernel execution status is close to 32msec.  

Can you please help me understand where I am loosing 8msec, as per my understanding the clfinish time should equivalent to that of the Kernel execution time as I dont have any pending Queues in commandQueue.  




Thanks in advance.
0 Kudos
1 Reply
Honored Contributor I

Is this with a kernel that has profiling enabled? Profiling has extra overhead since it needs to dump the profiling info onto the disk.