Debugging & Profiling#
When software misbehaves or underperforms, the ability to inspect program state and measure execution characteristics becomes invaluable. Debugging and profiling transform opaque failures into understandable problems with actionable solutions.
This section covers essential tools for C/C++ development: GDB for interactive debugging, Valgrind for memory error detection, compiler sanitizers for fast runtime checks, tracing tools for system call analysis, perf for CPU profiling, and NVIDIA Nsight for GPU optimization.