SpECTRE Documentation Coverage Report
Current view: top level - Utilities/System - AttachDebugger.hpp Coverage Total Hit
Commit: 0d1d717af84a81fb1284a20c4013708fe85cc2f0 Lines: 50.0 % 2 1
Test Date: 2026-10-22 17:29:42
Legend: Lines:     hit not hit

            Line data    Source code
       1            0 : // Distributed under the MIT License.
       2              : // See LICENSE.txt for details.
       3              : 
       4              : #pragma once
       5              : 
       6              : namespace sys {
       7              : /*!
       8              :  * \brief Provide an infinite loop to attach a debugger during startup. Useful
       9              :  * for debugging MPI runs.
      10              :  *
      11              :  * Each MPI rank writes a file name `spectre_pid_#_host_NAME` to the working
      12              :  * directory. This allows you to attach GDB to the running process using
      13              :  * `gdb --pid=PID`, once for each MPI rank. You must then halt the program
      14              :  * using `C-c` and then call `set var i = 7` inside GDB. Once you've done this
      15              :  * on each MPI rank, you can have each MPI rank `continue`.
      16              :  *
      17              :  * To add support for attaching to a debugger in an executable, you must add
      18              :  * `sys::attach_debugger` to the
      19              :  * `Parallel::charmxx::register_init_node_and_proc` init node functions. Then,
      20              :  * when you launch the executable launch it as
      21              :  * ```shell
      22              :  * SPECTRE_ATTACH_DEBUGGER=1 mpirun -np N ...
      23              :  * ```
      24              :  * The environment variable `SPECTRE_ATTACH_DEBUGGER` being set tells the code
      25              :  * to allow attaching from a debugger.
      26              :  */
      27            1 : void attach_debugger();
      28              : }  // namespace sys
        

Generated by: LCOV version 2.0-1