With the advent of multicore systems, the gap between processor speed and memory latency has grown worse because of their complex interconnect. Sophisticated techniques are needed more than ever to improve an application's spatial and temporal locality. This paper describes an optimization that aims to improve heap data layout by structure-splitting. It also provides runtime address checking by piggybacking on the existing page protection mechanism to guarantee the correctness of such optimization that has eluded many previous attempts due to safety concerns. The technique can be applied to both sequential and parallel programs at either compile time or runtime. However, we focus primarily on sequential programs (i.e., single-threaded programs) at runtime in this paper. Experimental results show that some benchmarks in SPEC 2000 and 2006 can achieve a speedup of up to 142.8%. © 2012 ACM.
CITATION STYLE
Wang, Z., Wu, C., Yew, P. C., Li, J., & Xu, D. (2012). On-the-fly structure splitting for heap objects. Transactions on Architecture and Code Optimization, 8(4). https://doi.org/10.1145/2086696.2086705
Mendeley helps you to discover research relevant for your work.