[all-commits] [llvm/llvm-project] 23391f: [llvm-profgen] Generating probe-based non-CS profile.
Hongtao Yu via All-commits
all-commits at lists.llvm.org
Tue Mar 1 18:49:26 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 23391febd87779f1ed57ae6bb384ab00367969c1
https://github.com/llvm/llvm-project/commit/23391febd87779f1ed57ae6bb384ab00367969c1
Author: Hongtao Yu <hoy at fb.com>
Date: 2022-03-01 (Tue, 01 Mar 2022)
Changed paths:
A llvm/test/tools/llvm-profgen/inline-pseudoprobe.test
A llvm/test/tools/llvm-profgen/noinline-pseudoprobe.test
M llvm/tools/llvm-profgen/ProfileGenerator.cpp
M llvm/tools/llvm-profgen/ProfileGenerator.h
Log Message:
-----------
[llvm-profgen] Generating probe-based non-CS profile.
I'm bring up the support of pseudo-probe-based non-CS profile generation. The approach is quite similar to generating dwarf-based non-CS profile. The main difference is for a given linear instruction range, instead of each disassembled instruction, pseudo probes that are covered by the range are processed. The pseudo probe extraction code is shared with CS probe profile generation.
I'm seeing 0.7% performance win for one of our internal large benchmark compared to using non-CS dwarf-based profile, and 0.5% win for another large benchmark when combined with profi.
Reviewed By: wenlei
Differential Revision: https://reviews.llvm.org/D120335
More information about the All-commits
mailing list