CUDA-GDB CUDA Debugger - NVIDIA Developer
CUDA-GDB
Release 12.4 NVIDIA
Mar 28, 2024
Contents
1 What is CUDA-GDB?
3
2 Supported Features
5
3 About This Document
7
4 Release Notes
9
5 Getting Started
21
5.1 Setting Up the Debugger Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.1.1 Temporary Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.1.2 Using the CUDA-GDB debugger on Jetson and Drive Tegra devices . . . . . . . . . . . 21
5.2 Compiling the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.1 Debug Compilation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.2 Compilation With Linenumber Information . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.3 Compiling For Specific GPU architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.3 Using the Debugger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.3.1 Single-GPU Debugging with the Desktop Manager Running . . . . . . . . . . . . . . . 23
5.3.2 Multi-GPU Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.3.3 Remote Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.3.4 Multiple Debuggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.3.5 Attaching/Detaching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6 CUDA-GDB Extensions
27
6.1 Command Naming Convention . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
6.2 Getting Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
6.3 Initialization File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.4 GUI Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.5 GPU core dump support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7 Kernel Focus
35
7.1 Software Coordinates vs. Hardware Coordinates . . . . . . . . . . . . . . . . . . . . . . . . 35
7.2 Current Focus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
7.3 Switching Focus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
8 Program Execution
37
8.1 Interrupting the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
8.2 Single Stepping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9 Breakpoints and Watchpoints
39
9.1 Symbolic Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
9.2 Line Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
9.3 Address Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
9.4 Kernel Entry Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
i
9.5 Conditional Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 9.6 Watchpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
10 Inspecting Program State
43
10.1 Memory and Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.2 Variable Storage and Accessibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.3 Info CUDA Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.3.1 info cuda devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.3.2 info cuda sms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.3.3 info cuda warps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.3.4 info cuda lanes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
10.3.5 info cuda kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.3.6 info cuda blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.3.7 info cuda threads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
10.3.8 info cuda launch trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
10.3.9 info cuda launch children . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
10.3.10 info cuda contexts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
10.3.11 info cuda managed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.4 Disassembly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
10.5 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.6 Const banks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
11 Event Notifications
53
11.1 Context Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
11.2 Kernel Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
12 Automatic Error Checking
55
12.1 Checking API Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
12.2 GPU Error Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
12.3 Autostep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
13 Walk-Through Examples
61
13.1 Example: bitreverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
13.1.1 Walking through the Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
13.2 Example: autostep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
13.2.1 Debugging with Autosteps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
13.3 Example: MPI CUDA Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
14 Tips and Tricks
69
14.1 Command line arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
14.2 set cuda break_on_launch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
14.3 set cuda launch_blocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
14.4 set cuda notify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
14.5 set cuda ptx_cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
14.6 set cuda single_stepping_optimizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
14.7 set cuda thread_selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
14.8 set cuda value_extrapolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
14.9 Debugging Docker Containers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
14.10 Switching to Classic Debugger Backend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
14.11 Thread Block Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
14.12 Debugging OptiX/RTCore applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
14.13 Debugging on Windows Subsystem for Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 73
15 Supported Platforms
75
ii
16 Common Issues on Supported Operating Systems
77
17 Known Issues
79
18 Notices
81
18.1 Notice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
18.2 OpenCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
18.3 Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
iii
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- debugging with gdb
- hi gdb this is python tuxfamily
- name uid branch btech cse sem 4 th python lab
- debugging hung python processes with gdb 19x
- introduction to gdb python epita
- debugging hung python processes with gdb
- working with geodatabases using sql and python esri
- hi gdb this is python zenk security
- gdb tutorial a walkthrough with examples umd
- cs 331 gdb and x86 64 assembly language
Related searches
- salesforce platform developer 2 certificati
- salesforce lightning developer guide
- online gdb compiler
- opencv cuda windows
- microsoft visual web developer express
- business developer job description
- developer tools microsoft word
- salesforce developer edition
- salesforce developer edition org
- salesforce developer account
- salesforce developer edition sign up
- salesforce developer org free