Files
clang-p2996/llvm/test/Transforms/SampleProfile/Inputs/profile-inference-rebalance-large.prof
spupyrev 13d1364a34 A better profi rebalancer
This is an extension of **profi** post-processing step that rebalances counts
in CFGs that have basic blocks w/o probes (aka "unknown" blocks). Specifically,
the new version finds many more "unknown" subgraphs and marks more "unknown"
basic blocks as hot (which prevents unwanted optimization passes).

I see up to 0.5% perf on some (large) binaries, e.g., clang-10 and gcc-8.

The algorithm is still linear and yields no build time overhead.
2022-01-18 12:14:24 -08:00

27 lines
302 B
Plaintext

foo1:37078302:0
1: 3300
2: 0
6: 3300
!CFGChecksum: 157181141624
foo2:37078302:0
1: 128
2: 128
3: 128
4: 128
!CFGChecksum: 208782362068
foo3:37078302:0
1: 500
2: 1500
4: 1200
6: 900
9: 500
!CFGChecksum: 189901498683
foo4:37078302:0
1: 400
3: 400
10: 400
!CFGChecksum: 241030178952