[PATCH] D120335: [llvm-profgen] Generating probe-based non-CS profile.

Lei Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 22 18:53:47 PST 2022


wlei added a comment.

Thanks for adding support for probe-based non-CS profile.

> 0.5% win for another large benchmark when combined with profi.

is this because with probe, it now have a good support for the unknown(dangling) block, so PROFI can work well for this?



================
Comment at: llvm/test/tools/llvm-profgen/inline-pseudoprobe.test:4
+
+; CHECK:     main:88:0
+; CHECK-NEXT: 1: 0
----------------
Out of curiosity, for the text profile, how do we know the profile is a CS nested profile or a non-CS nested profile?


================
Comment at: llvm/tools/llvm-profgen/ProfileGenerator.cpp:444
+  ProbeCounterMap ProbeCounter;
+  extractProbesFromRange(preprocessRangeCounter(RangeCounter), ProbeCounter);
+
----------------
So here we don't use the way like CS-profile to generate the zero-count(in ProfileGenerator.cpp: 981), instead we reuse the `preprocessRangeCounter` to initialize all function range with zero, the probe inside the function will naturally be added with zero count. I guess this is the same to the way of CS-profile, right?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D120335/new/

https://reviews.llvm.org/D120335



More information about the llvm-commits mailing list