[llvm-dev] Call for testing -- new variable location tracking solution

Caroline Tice via llvm-dev llvm-dev at lists.llvm.org
Thu Sep 2 08:29:45 PDT 2021


Just FYI.

 I ran some  tests using this flag on a large set of tests inside Google
and saw only very slight degradations (~1%) in memory usage and wall clock
time.

Focusing on optimized builds (-O3) with debug information on a
representative set of medium-to-large programs,

The ratio sum_all_params(#bytes in parent scope covered by
DW_AT_location)/#bytes in parent scope) improved (increased) by 6-8%.

The ratio of sum_all_variables(#bytes in parent scope covered by
DW_AT_location)/#bytes in parent scope *mostly* improved (increased) 3-4%.
One extremely large program had a 22% improvement.  However another very
large program had a 30% regression.

The ratio of local_vars_bytes_with_locations:sum_all_local_vars(#bytes in
parent scope covered by DW_AT_location)/#bytes in parent scope also showed
regressions in those two large programs.

The ratio of sum_all_params(#bytes in parent scope covered by
DW_OP_entry_value)/#bytes in parent scope showed 2-4% improvements across
all the test programs.

Unsurprisingly, the size of debug_loclists increased 5-11%.

If you want more details, let me know.

-- Caroline Tice
cmtice at google.com


On Wed, Aug 18, 2021 at 1:31 PM Jeremy Morse via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hi Amy,
>
> On Wed, Aug 18, 2021 at 8:58 PM Amy Huang <akhuang at google.com> wrote:
> > Just wanted to say I've tried building Chrome with this (with -g2 -O2)
> on Linux and didn't see a noticeable difference in compile time.
>
> Excellent, that's really reassuring given how large chrome is, thanks
> for trying a build with the flag,
>
> > Unfortunately running llvm-locstats fails on the chrome binary, so no
> coverage stats.
>
> That's a shame; however I'm confident there won't be a coverage
> regression, detecting any performance cliff edges was my main aim
> here.
>
> --
> Thanks,
> Jeremy
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210902/02e4298d/attachment.html>


More information about the llvm-dev mailing list