Debugging programs

Debugging a program is often the most challenging part of programming, especially with multithreaded programs. The SDK contains several tools for debugging, the most important of which are the gdb debugger and the IBM Full System Simulator for the Cell Broadband Engine.

The gdb debugger is a command-line debugger available as part of the GNU development environment. Because of the Cell Broadband Engine's unique characteristics, gdb has been modified so that there are actually two versions of the debugger – ppu-gdb for debugging PPE and combined PPE and SPE programs, and spu-gdb for debugging SPE programs. For additional information on using ppu-gdb and spu-gdb, consult the Software Development Kit, Programmer's Guide.

The other tool for debugging a Cell Broadband Engine program is the IBM Full System Simulator for the Cell Broadband Engine. This simulator lets you view many aspects of the simulated running program in GUI mode. You can also control many aspects of the simulator using Tcl commands. The simulator is described more fully in The simulator.