[PATCH] D31827: Add a flag that enables more aggressive load PRE
Taewook Oh via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 12 22:52:39 PDT 2017
twoh added a comment.
Below are the numbers with spec2006 (The numbers in the last row are overall for SPEC score and total for compile time and binary size):
-O2:
| Base | Aggressive | Diff |
| SPEC score compile time binary size | SPEC score compile time binary size | SPEC score compile time binary size |
400.perlbench | 27.9 30 1,207,608 | 27.6 29 1,211,704 | -1.08% -3.33% 0.34% |
401.bzip2 | 18.9 4 94,400 | 19.1 3 94,400 | 1.06% -25.00% 0.00% |
403.gcc | 26.4 79 3,771,952 | 26.4 81 3,784,280 | 0.00% 2.53% 0.33% |
429.mcf | 24.1 1 23,200 | 24.1 2 23,200 | 0.00% 100.00% 0.00% |
445.gobmk | 21.8 21 3,958,128 | 21.8 21 3,962,224 | 0.00% 0.00% 0.10% |
456.hmmer | 21.0 10 344,288 | 21.0 10 344,288 | 0.00% 0.00% 0.00% |
458.sjeng | 22.0 4 156,192 | 22.9 4 156,192 | 4.09% 0.00% 0.00% |
462.libquantum | 44.4 2 55,712 | 48.1 2 55,712 | 8.33% 0.00% 0.00% |
464.h264ref | 38.5 16 694,768 | 38.7 17 694,768 | 0.52% 6.25% 0.00% |
471.omnetpp | 17.7 30 1,553,888 | 18.4 30 1,553,888 | 3.95% 0.00% 0.00% |
473.astar | 18.0 2 125,616 | 18.1 2 125,616 | 0.56% 0.00% 0.00% |
483.xalancbmk | 29.5 199 6,903,592 | 29.6 203 6,907,688 | 0.34% 2.01% 0.06% |
| 24.8 398 18,889,344 | 25.2 404 18,913,960 | 1.61% 1.51% 0.13% |
-O3:
| Base | Aggressive | Diff |
| SPEC score compile time binary size | SPEC score compile time binary size | SPEC score compile time binary size |
400.perlbench | 27.2 30 3,570,840 | 27.0 35 3,581,096 | -0.74% 16.67% 0.29% |
401.bzip2 | 19.1 4 245,912 | 18.9 5 246,200 | -1.05% 25.00% 0.12% |
403.gcc | 26.0 79 10,517,504 | 26.8 93 10,546,032 | 3.08% 17.72% 0.27% |
429.mcf | 23.7 1 62,152 | 24.2 1 62,224 | 2.11% 0.00% 0.12% |
445.gobmk | 21.7 21 6,450,344 | 21.9 24 6,456,712 | 0.92% 14.29% 0.10% |
456.hmmer | 21.0 10 1,034,864 | 21.1 12 1,036,112 | 0.48% 20.00% 0.12% |
458.sjeng | 22.5 4 336,416 | 22.4 4 336,808 | -0.44% 0.00% 0.12% |
462.libquantum | 47.3 2 138,016 | 44.6 2 137,768 | -5.71% 0.00% -0.18% |
464.h264ref | 39.0 16 1,878,656 | 39.0 21 1,884,208 | 0.00% 31.25% 0.30% |
471.omnetpp | 19.7 30 4,468,208 | 18.9 32 4,469,464 | -4.06% 6.67% 0.03% |
473.astar | 18.0 2 295,152 | 18.2 3 295,824 | 1.11% 50.00% 0.23% |
483.xalancbmk | 30.0 199 39,545,312 | 29.2 221 39,533,360 | -2.67% 11.06% -0.03% |
| 25.2 398 68,543,376 | 25.0 453 68,585,808 | -0.79% 13.82% 0.06% |
For -O2 enabling aggressive load PRE brings somewhat expected results (better spec score, increase in compilation time and binary size). But for -O3 it doesn't even improve the spec score while increasing compile time significantly.
https://reviews.llvm.org/D31827
More information about the llvm-commits
mailing list