GPU Frame Capture shows wrong times

I'm using a single Compute Command Encoder to execute 5 kernel functions.

My aim is to measure the execution time of each kernel function.


However, when I try to profile the application via GPU Frame Capture, Xcode shows clearly wrong times – the sum of execution times of all 5 kernel functions is always 100µs (every time I profile the app). I've also tried to execute just one kernel function, but according to Xcode, running just one kernel function takes the same 100µs as if I was running 5 kernels.


Please take a look at the following 2 images: i.imgur.com/p8F59hp.png (running 5 kernels)andi.imgur.com/i8OEKEQ.png (running 1 kernel).


My comment: Based on the fact that the executions times always sum up to 100, I'd say they represent percentages if they weren't displayed with the units (nanoseconds and microseconds). I've also tried switching between showing percentages and time, but I've been unable to see the actual durations.

Whan can I do to see the actual (i.e. absolute – and not just relative percentages) execution duration times of individual kernel functions?

After upgrading to iOS 10 beta 7 and Xcode 8 beta 6, the problem is gone and Xcode finally shows real durations!


Despite that, I still wonder what is the hidden problem in previous versions of both Xcode and iOS.

GPU Frame Capture shows wrong times
 
 
Q