[PATCH] D74986: [LiveDebugValues] Encode register location within VarLoc IDs [3/3]

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 27 15:16:38 PDT 2020


nikic added a comment.

In D74986#2057820 <https://reviews.llvm.org/D74986#2057820>, @vsk wrote:

> In D74986#2057531 <https://reviews.llvm.org/D74986#2057531>, @nikic wrote:
>
> > While bisecting compile-time regressions, I hit on this change as a larger -O0 -g regression. It's 2% geomean on CTMark, with the largest regression being 4% on sqlite3. Might be worth a look.
>
>
> @nikic We actually saw a similar result on our CTMark bot, but the regression was fixed by D76465 <https://reviews.llvm.org/D76465> + D76467 <https://reviews.llvm.org/D76467>. Were you able to measure any improvement after those changes (or, put another way, does reverting D74986 <https://reviews.llvm.org/D74986> + D76465 <https://reviews.llvm.org/D76465> + D76467 <https://reviews.llvm.org/D76467> fix the issue)?


Thanks for the references! When I revert these patches in reverse order, I see (for the instructions retired metric) the original regression for sqlite at +4.4%, the CoalescingBitVector optimization as a -1.1% improvement, and the collectIDsForRegs() optimization as a -0.5% improvement. So these two changes seem to recover a sizable part of the regression (about a 35%), but not the entirety. As such, there might still be some optimization potential here. (Results for reference <http://llvm-compile-time-tracker.com/?config=O0-g&stat=instructions&branch=nikic%2Fperf%2Flive-debug-values> -- these are reverts, so inverted.)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D74986





More information about the llvm-commits mailing list