
Google Engineers Propose “Machine Function Splitter” for Faster Performance - ykm
https://www.phoronix.com/scan.php?page=news_item&px=Machine-Function-Splitter
======
twoodfin
They preface this by discussing the prevalence of deep inlining in aggressive,
profile-guided optimization of modern (presumably C++-dominated) code.

Couple of thoughts:

\- I wonder how relatively effective this optimization would be applied to
profiled, typical "old school" C, written and tuned in an era when compilers
were simpler and inlining of small functions—and other abstractions we would
consider "zero cost" today—could not be assumed (and thus were often replaced
by macros). This is the C of the 400-line function, which surely has a few hot
paths and many cold paths as well.

\- Are there existing or promising potential optimizations similar to this but
without the profiling requirement? Are there effective heuristics for
identifying likely "hot" code paths without requiring profiling or user
annotation?

