When starting gdb from intel's mpirun using:
mpirun -gdb -gdb-args --interpreter=mi3 -n 2 ./my-prog
output has an leading indicator of which processes are being debugged, for example:
which breaks the output parsing. By proxying the gdbmiparser.parse_response I can easily restore the structured output:
mpigdb_prefix = re.compile(r"^\s*(\(mpigdb\))?\s*\[[0-9,]+\]\s")
parse = gdbmiparser.parse_response
def new_parse(a0, *args, **kwargs):
newa0 = mpigdb_prefix.sub("", a0)
return parse(newa0, *args, **kwargs)
gdbmiparser.parse_response = new_parse
But the mpi rank information is lost. It would be nice if such information could be included in the parsed output.
When starting gdb from intel's
mpirunusing:output has an leading indicator of which processes are being debugged, for example:
which breaks the output parsing. By proxying the
gdbmiparser.parse_responseI can easily restore the structured output:But the mpi rank information is lost. It would be nice if such information could be included in the parsed output.