Redundant Loads: A Software Inefficiency Indicator
Pengfei Su, Shasha Wen, Hailong Yang, Milind Chabbi, Xu Liu

TL;DR
This paper introduces LoadSpy, a profiler that detects redundant memory load operations in software, revealing optimization opportunities missed by compilers and enabling targeted performance improvements.
Contribution
The paper presents LoadSpy, a novel whole-program profiler that identifies and quantifies redundant loads in optimized binaries, aiding developers in performance tuning.
Findings
Redundant loads are prevalent in modern software despite compiler optimizations.
Using LoadSpy-guided optimizations, significant speedups are achieved in benchmarks and real applications.
LoadSpy effectively associates redundancies with specific code contexts for targeted improvements.
Abstract
Modern software packages have become increasingly complex with millions of lines of code and references to many external libraries. Redundant operations are a common performance limiter in these code bases. Missed compiler optimization opportunities, inappropriate data structure and algorithm choices, and developers' inattention to performance are some common reasons for the existence of redundant operations. Developers mainly depend on compilers to eliminate redundant operations. However, compilers' static analysis often misses optimization opportunities due to ambiguities and limited analysis scope; automatic optimizations to algorithmic and data structural problems are out of scope. We develop LoadSpy, a whole-program profiler to pinpoint redundant memory load operations, which are often a symptom of many redundant operations. The strength of LoadSpy exists in identifying and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Distributed systems and fault tolerance · Cloud Computing and Resource Management
