Refactoring for data locality

K Beyls, EH D'Hollander - Computer, 2009 - ieeexplore.ieee.org
Computer, 2009ieeexplore.ieee.org
Refactoring for data locality opens a new avenue for performance-oriented program
rewriting. SLO has broken down a large part of the complexity that software developers face
when speeding up programs with numerous cache misses. Therefore, we consider SLO to
belong to a new generation of program analyzers. Whereas existing cache profilers
(generation 1.0) highlight problems such as cache misses, second-generation analyzers
(such as SLO) highlight the place to fix problems. Improving data locality is also important in …
Refactoring for data locality opens a new avenue for performance-oriented program rewriting. SLO has broken down a large part of the complexity that software developers face when speeding up programs with numerous cache misses. Therefore, we consider SLO to belong to a new generation of program analyzers. Whereas existing cache profilers (generation 1.0) highlight problems such as cache misses, second-generation analyzers (such as SLO) highlight the place to fix problems. Improving data locality is also important in hardware-based applications. SLO was already used to optimize the frame rate and energy consumption in a wavelet decoder implemented on an FPGA. In another vein, the SLO concepts could be incorporated in interactive performance debuggers and profile-directed compilers. We believe that SLO will be useful in the optimization of many data-intensive applications.
ieeexplore.ieee.org