Title :
Optimization opportunities created by global data reordering
Author :
Haber, Gadi ; Klausner, Moshe ; Eisenberg, Vadim ; Mendelson, Bilha ; Gurevich, Maxim
Author_Institution :
IBM Haifa Res. Lab., Israel
Abstract :
Memory access has proven to be one of the bottlenecks in modern architectures. Improving memory locality and eliminating the amount of memory access can help release this bottleneck. We present a method for link-time profile-based optimization by reordering the global data of the program and modifying its code accordingly. The proposed optimization reorders the entire global data of the program, according to a representative execution rate of each instruction (or basic block) in the code. The data reordering is done in a way that enables the replacement of frequently-executed Load instructions, which reference the global data, with fast Add Immediate instructions. In addition, it tries to improve the global data locality and to reduce the total size of the global data area. The optimization was implemented into FDPR (Feedback Directed Program Restructuring), a post-link optimizer, which is part of the IBM AIX operating system for the IBM pSeries servers. Our results on SPECint2000 show a significant improvement of up to 11% (average 3%) in execution time, along with up to 97.9% (average 83%) reduction in memory references to the global variables via the global data access mechanism of the program.
Keywords :
data handling; optimising compilers; storage management; FDPR; Feedback Directed Program Restructuring; IBM AIX operating system; IBM pSeries servers; SPECint2000; execution time; fast Add Immediate instructions; frequently-executed Load instructions; global data access mechanism; global data area; global data locality; global data reordering; global variables; link-time profile-based optimization; memory access; memory locality; memory references; optimization opportunities; post-link optimizer; representative execution rate; Feedback; Frequency; Interference; Libraries; Optimization methods; Program processors; Reduced instruction set computing; Registers; Sun;
Conference_Titel :
Code Generation and Optimization, 2003. CGO 2003. International Symposium on
Print_ISBN :
0-7695-1913-X
DOI :
10.1109/CGO.2003.1191548