Back to Search Start Over

Load redundancy elimination on executable code.

Authors :
Fernández, Manel
Espasa, Roger
Debray, Saumya
Source :
Concurrency & Computation: Practice & Experience; Aug2003, Vol. 15 Issue 10, p979-997, 19p, 4 Diagrams, 3 Charts, 4 Graphs
Publication Year :
2003

Abstract

Optimizations performed at link time or directly applied to final program executables have received increased attention in recent years. This paper discusses the discovery and elimination of redundant load operations in the context of a link-time optimizer, an optimization that we call Load Redundancy Elimination (LRE). Our experiments show that between 50% and 75% of a program's memory references can be considered redundant because they are accessing memory locations that have been referenced less than 200–400 instructions away. We then present three profile-based LRE algorithms targeted at optimizing away these redundancies. Our results show that between 5% and 30% of the redundancy detected can indeed be eliminated, which translates into program speedups of around 8%. We also test our algorithm assuming different cache latencies, and show that, if latencies continue to grow, the load redundancy elimination will become more important. Copyright © 2003 John Wiley & Sons, Ltd. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
15320626
Volume :
15
Issue :
10
Database :
Complementary Index
Journal :
Concurrency & Computation: Practice & Experience
Publication Type :
Academic Journal
Accession number :
13507389
Full Text :
https://doi.org/10.1002/cpe.742