[llvm-dev] [RFC] Switching to MemorySSA-backed Dead Store Elimination (aka cross-bb DSE)

Florian Hahn via llvm-dev llvm-dev at lists.llvm.org
Tue Aug 18 14:14:53 PDT 2020



> On Aug 18, 2020, at 20:56, Joerg Sonnenberger via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> 
> On Tue, Aug 18, 2020 at 02:35:56PM +0100, Florian Hahn via llvm-dev wrote:
>> MemorySSA DSE can substantially increase the number of stores eliminated
>> in many cases (e.g. across MultiSource/SPEC2000/SPEC2006 with -O3 -flto,
>> the number of eliminated stores increases roughly by 45%, with some
>> benchmarks seeing much larger improvements). But the improvements come
>> at additional compile-time cost (CTmark geomean -O3 +0.86%, ReleaseThinLTO
>> +1.59%), due to a substantially increased search space. I’d like to
>> propose to switch to MemorySSA-backed DSE, as in my opinion the benefits
>> in terms of store reductions outweigh the compile-time impact).
> 
> Do you also have any numbers on the impact on (peak) RSS this has?
> 

Max RSS looks mostly neutral for CTMark.

-O3 -0.01%
ReleaseThinLTO +0.10%
ReleaseLTO-g +0.0%
O0-g: +0.0%
ReleaseThinLTO (link only): -0.23%
ReleaseLTO-g (link only): -0.09%

http://llvm-compile-time-tracker.com/compare.php?from=4cc20aa74339812c3e4daa4138ed40cb98521bfc&to=504153dc6efd29ad37ffb6ffb2e80d4101b56e5b&stat=max-rss

There appear to be some +- 2% swings for ReleaseThinLTO which might be worth taking a closer look, but overall it looks not too bad I think.

Cheers,
Florian


More information about the llvm-dev mailing list