Solved by ptrblck in post #3 
              
              
                CUDA operations are executed asynchronously, so you would need to synchronize the code before starting and stopping each timer via torch.cuda.synchronize(). Otherwise the times will be accumulated in blocking operations and are thus wrong.