Reading torch.profiler Correctly: Schedules, Labels, and CPU vs GPU Time

torch.profiler integrates PyTorch operator attribution, optional source stacks, and CUDA activity in one trace. Its numbers mean what you think only if you control the capture window, the labels and the host syncs.

October 9, 2026 · 63 min · Sandeep Kumar

PyTorch Distributed Training Internals

The mechanism behind step 5 of the training loop: bucketed gradient all-reduce triggered from autograd hooks, what NCCL does with it, and how to diagnose the result.

August 12, 2026 · 13 min · Sandeep Kumar

Introduction to GPU Profiling

Follow a batch from the CPU to the GPU, distinguish host ranges from device activity, and use an existing trace to choose the next profiling question. A starting point for the PyTorch Profiler tutorial, Nsight Systems tutorial, and their comparison.

February 10, 2026 · 8 min · Sandeep Kumar

PyTorch Profiler vs Nsight Systems

Use existing ResNet-50 traces to learn what torch.profiler and Nsight Systems explain, what NVTX bridges, and why neither a busy timeline nor an operator percentage proves a bottleneck.

October 10, 2026 · 7 min · Sandeep Kumar