The Khronos Group - a non-profit industry consortium to develop, publish and promote open standard, royalty-free media authoring and acceleration standards for desktop and handheld devices, combined with conformance qualification programs for platform and device interoperability.

If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

When I print the timings, I see that total_comp_copy_time is just 3ms, but the total_callback_time is a whoophing 17ms.

Now, If I remove the "while(!global_var)" check, then the time is just a little over 3ms, but there is no synchronization if this code is run inside a loop.

I am not able to reason out precisely the reason for this.(I am suspecting that this exceedingly high time is due to process scheduling issue)
Can anyone precisely reason out the cause for this high timing values ?
On what processor does the callback execute? is it the same processor as the one which registered the callback?
If the processor is spinning in while loop, is the call_back waiting for the process to get scheduled out? is this the reason for 17ms?

The above code is enough to hit a timing of 20ms. (though it only takes 2ms for actual data transfer). so only if I try to synchronize the callback (with "while") I am seeing this issue.
If I dont try to synchronize, (I want to synchronize because I want to run this code in
a loop and I dont want to go to the next iteration before this iteration's data is copied out)