Can you re-run your script with CUDA_LAUNCH_BLOCKING=1 and see if the times make more sense?
CUDA kernels are asynchronous so the timing information won’t be 100% correct if you don’t take this into account.