<div dir="ltr"><div>Do you have a list of what compilers support this?  Is this just GCC, just GCC and Clang, or a bigger list?  If Clang supports it, do you know if all of the Clang derivatives (e.g. IBM XLC) support it?</div><div><br></div><div>Thanks,</div><div><br>Jeff</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Nov 6, 2019 at 2:04 PM Raffenetti, Kenneth J. via devel <<a href="mailto:devel@mpich.org">devel@mpich.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Folks,<br>
<br>
I want to draw attention to a pull request posted to the MPICH github.<br>
<br>
   <a href="https://github.com/pmodels/mpich/pull/4139" rel="noreferrer" target="_blank">https://github.com/pmodels/mpich/pull/4139</a><br>
<br>
This proposes to remove all MPIR_FUNC_VERBOSE_ENTER and <br>
MPIR_FUNC_VERBOSE_EXIT macros from MPICH and instead use compiler <br>
function instrumentation when configured for debug logging: <br>
<a href="https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html" rel="noreferrer" target="_blank">https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html</a>.<br>
<br>
There are 2 main benefits:<br>
<br>
1. De-clutter the code. PR stats show a net deletion of >10,000 lines!<br>
2. Less error-prone. The compiler will reliably instrument *all* <br>
functions, and will not suffer from copy/paste errors or typos.<br>
<br>
Drawbacks:<br>
<br>
1. Requires compiler support for instrumentation. May affect users <br>
debugging certain compiler configurations.<br>
2. Compiler function instrumentation logs function addresses, not <br>
symbols. An additional step is needed to convert addresses to function <br>
names via script (included in PR).<br>
<br>
What do people think? Will these changes affect anyone using debug <br>
logging in any regular capacity? We're looking for feedback good or bad. <br>
Let us know.<br>
<br>
Thanks,<br>
Ken<br>
_______________________________________________<br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mpich.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">https://lists.mpich.org/mailman/listinfo/devel</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature">Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a></div></div>