Red Hat Compiler Developer Working On Compiler-Assisted Performance Analysis For GCC
Written by Michael Larabel in GNU on 30 May 2018 at 09:07 AM EDT. 7 Comments
GNU --
Longtime GNU toolchain developer at Red Hat, David Malcolm, has announced the work he is pursuing on compiler-assisted performance analysis with GCC.

David Malcom is hoping to make the GNU Compiler Collection produce more useful information about how the compiler optimizes code for GCC developers and advanced end-users. This would provide details about how an optimization could be improved or bugs fixed within GCC as well as for developers/end-users to understand what command-line flags are being used and how they could potentially rework their code for greater performance.

GCC currently provides some details such as with the -fopt-info flag and some data being emitted to dump files, but it leaves a lot to be desired. David's new GCC work is aiming to capture "optimization records" in an easily parse-able format, associate these records with areas of hot code, and capturing other meta-data from the compiler. This data could then be spun automatically into an HTML report containing the significant details.

More details on these plans as well as some example use-cases can be found via this mailing list post where the Red Hat developer has implemented an experimental version of this code under a "request for comments" flag. Hopefully this compiler-assisted performance analysis functionality will turn into something useful for next year's GCC 9 release.
Related News
About The Author
Author picture

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week