Results 1 to 4 of 4

Thread: AutoFDO Optimizations For The GCC Compiler

  1. #1
    Join Date
    Jan 2007
    Posts
    15,388

    Default AutoFDO Optimizations For The GCC Compiler

    Phoronix: AutoFDO Optimizations For The GCC Compiler

    A patch has emerged that provides "AutoFDO" support for the GCC compiler for automated feedback-directed optimizations...

    http://www.phoronix.com/vr.php?view=MTE5NTc

  2. #2
    Join Date
    Jan 2011
    Posts
    209

    Default

    What exactly is the difference between PGO (profile guided optimization) and FDO?

  3. #3
    Join Date
    Oct 2009
    Posts
    845

    Default

    Quote Originally Posted by WorBlux View Post
    What exactly is the difference between PGO (profile guided optimization) and FDO?
    The name, some compilers refer to it as profile-guided-optimization, others call it feedback-driven-optimization, the technique is the same.

    One thing Micheal wrote was '-So this implementation is also faster than the traditional Feedback Directed Optimization (FDO) support currently found in GCC', now from the author's mail: -'This can bring 50% to 110% of the speedup derived by traditional instrumentation based FDO. (Average is between 70% to 80% for many CPU intensive applications).'

    I grok this as it generally gives 70-80% of the performance normal FDO (PGO) gives and ranges from faster (110%) or slower (%50), so saying it is faster than traditional PGO is a bit optimistic as it seems to general case is 70-80% of the speed traditional PGO gives.

    That said, it would be great to have a automated way to use PGO and thus avoid the hassle of either manual profile-gathering or writing an application-specific automation in order to utilize this optimization. Here's hoping it makes it into trunk, certainly interested in trying this.

  4. #4
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    5,269

    Default

    The way I read it, this still requires the representative runtime to be actually useful.

    So it's merely a question of setting up perf infrastructure vs building a PGO-instrumented binary. Given I don't have the perf things set up, I would rate the PGO approach as easier

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •