[mpich-devel] proposed changes to function enter/exit logging

Raffenetti, Kenneth J. raffenet at mcs.anl.gov
Wed Nov 6 16:04:50 CST 2019


Folks,

I want to draw attention to a pull request posted to the MPICH github.

   https://github.com/pmodels/mpich/pull/4139

This proposes to remove all MPIR_FUNC_VERBOSE_ENTER and 
MPIR_FUNC_VERBOSE_EXIT macros from MPICH and instead use compiler 
function instrumentation when configured for debug logging: 
https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html.

There are 2 main benefits:

1. De-clutter the code. PR stats show a net deletion of >10,000 lines!
2. Less error-prone. The compiler will reliably instrument *all* 
functions, and will not suffer from copy/paste errors or typos.

Drawbacks:

1. Requires compiler support for instrumentation. May affect users 
debugging certain compiler configurations.
2. Compiler function instrumentation logs function addresses, not 
symbols. An additional step is needed to convert addresses to function 
names via script (included in PR).

What do people think? Will these changes affect anyone using debug 
logging in any regular capacity? We're looking for feedback good or bad. 
Let us know.

Thanks,
Ken


More information about the devel mailing list