locked
What PGO Optimization changes between VC2010 and VC2012? RRS feed

  • Question

  • Hi, all

         I tried to build firefox 17.0.1 using VC2012, but found that VC2012 PGO build is slower than VC2010 build (10%-20%), and VC2012 noPGO build is slight faster than VC2010 noPGO build.

         Take the mozjs.dll for an example,

    1) when using VC2010 pgo, it generated:

         863 of 19392 (  4.45%) profiled functions will be compiled for speed

    19392 of 19392 functions (100.0%) were optimized using profile data

    625510257010 of 625510257010 instructions (100.0%) were optimized using profile data

    2) when using VC2012 pgo, it generated:

    224 of 19394 (  1.15%) profiled functions will be compiled for speed, and the rest of the functions will be compiled for size

    19379 of 19394 functions (99.9%) were optimized using profile data, and the rest of the functions were optimized without using profile data

    539998720429 of 556207678757 instructions (97.1%) were optimized using profile data, and the rest of the instructions were optimized without using profile data

       So I want to ask: should I use some additional methods to modify VC2012 pgo build, in order to improve the profiled functions from 1.15% to 4.45%, and make their performance at a horizontal line?

       Thanks.

    Saturday, December 1, 2012 12:25 PM

Answers

All replies