Skip to content

Docs CSC now features an automatic Finnish translation. Click here for more information.

Warning!

Puhti and Mahti are being decommissioned in stages, and their storage areas will become fully unavailable from 15 October 2026. Clean up unnecessary files and move any data you need to keep by 31 August 2026. See the Roihu data migration guide for instructions on transferring your data to Roihu.

Puhti scratch is very full: keep only active data there and move or delete everything else. No new Puhti scratch quota will be granted.

cuda-gdb: CUDA debugger

Available

  • Puhti: 10.2
  • Mahti: 10.1
  • Roihu-GPU

License

Usage is possible for both academic and commercial purposes.

Usage

cuda-gdb is an NVIDIA extension of the GNU debugger gdb. It is a command-line tool for debugging CUDA programs.

In order to use tool the CUDA code has to be compiled with the extra flags -g and -G.

Next, in an interactive session one needs to first load the CUDA module:

module load cuda

and then start the application under debugger by running:

cuda-gdb ./cuda_program

The tool supports all options of gdb and some extra commands specific to CUDA debugging:

  • Info commands: Commands to query information about CUDA activities
  • Focus Commands: Commands to query or switch the focus of the debugger
  • Configuration Commands: Commands to configure the CUDA-specific commands

Out of bounds accesses can be checked inside the debugger by activating the memory checker with set cuda memcheck on. Alternatively the cuda-memcheck or compute-sanitizer tool can be used outside of the debugger (cuda-memcheck ./cuda_program or compute-sanitizer ./cuda_program).