Skip to content

Argonne Leadership Computing Facility

Introduction of Debugging

Initial Setups

  • Submitting an interactive job – Save time by queuing once and running multiple times.
  • Using VNC with a Debugger – when displaying an X11 client (e.g., DDT) remotely over the network, interactive response is typically slow. Using the VNC server can often help you improve the situation.

Debugging Tools

  • Arm Forge (formerly Allinea DDT) – a full-featured GUI-based debugging tool supporting scalar, multi-threaded, and large-scale parallel applications.
  • ATP – Cray’s Abnormal Termination Processing can generate a merged stack backtrace if your program dies.
  • STAT – Generate a merged stack backtrace snapshot while your run is in progress. Useful to diagnose deadlock.
  • lgdb – Provides a command-line interface for debugging a parallel application with gdb (the GNU Project Debugger).

Common Debugging Issues

  • Determining Memory Use – learn how to use the glibc mallinfo call to get information on used/available memory in your code.