A GDB-based Debugger for MPI Applications
PGDB is an open-source parallel debugger for MPI applications presently scaling to 1K nodes and currently deployed on systems at Lawrence Livermore National Laboratory and the University of Illinois at Urbana-Champaign. PGDB is written in Python and extends the GNU Debugger (GDB). I will first discuss debugging application with PGDB, which makes extensive use of data aggregation to reduce output and identify classes of processes. I then will discuss the architecture of PGDB and its scalability, including MPIR interfacing and tool daemon deployment with LaunchMON, communication and data aggregation using the MRNet tree-based overlay network, and debugger management.
Nikoli Dryden is an undergraduate at the University of Illinois at Urbana-Champaign pursuing a BS in computer science. He worked at Lawrence Livermore National Laboratory to develop the Parallel GDB (PGDB) debugger, and remains a collaborator with them. He currently works with the XSEDE program at the National Center for Supercomputing Applications, furthering the development of PGDB. Dryden's research interests include high-performance computing, debuggers, machine learning, and graphical models.