Hi,
I think it could be that you’re missing the use_cuda flag from the profiler doc 7.
This would mean that for all cuda ops, you only measure the time to launch the kernel but not for it to run. And operations that create synchronization (like copy to the cpu), will have a large runtime just because they wait on the rest to actually run on the GPU.