diff options
author | spupyrev <spupyrev@fb.com> | 2023-07-24 10:27:05 -0700 |
---|---|---|
committer | spupyrev <spupyrev@fb.com> | 2023-08-31 07:29:02 -0700 |
commit | 1256ef274c629ea1f86608a816f33a824679a75d (patch) | |
tree | 38889da36453ff4fe80e6026a8e272d8e07868d2 /flang/lib/Frontend/CompilerInvocation.cpp | |
parent | c81ab62273ba8df18ade37ddecdc59960e53941a (diff) | |
download | llvm-1256ef274c629ea1f86608a816f33a824679a75d.zip llvm-1256ef274c629ea1f86608a816f33a824679a75d.tar.gz llvm-1256ef274c629ea1f86608a816f33a824679a75d.tar.bz2 |
[BOLT] Fine-tuning hash computation for stale matching
Fine-tuning hash computation for stale matching:
- introducing a new "loose" basic block hash that allows to match many more blocks than before;
- tweaking params of the inference algorithm that find (slightly) better solutions;
- added more meaningful tests for stale matching.
Tested the changes on several open-source benchmarks (clang, rocksdb, chrome)
and one prod workload using different compiler modes (LTO/PGO etc). There is
always an improvement in the quality of inferred profiles.
(The current implementation is still not optimal but the diff is a step forward;
I am open to further suggestions)
Reviewed By: Amir
Differential Revision: https://reviews.llvm.org/D156278
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions