Title :
On improving performance and energy profiles of sparse scientific applications
Author :
Malkowski, Konrad ; Lee, Ingyu ; Raghavan, Padma ; Irwin, Mary Jane
Author_Institution :
Dept. of Comput. Sci. & Eng., Pennsylvania State Univ., University Park, PA, USA
Abstract :
In many scientific applications, the majority of the execution time is spent within a few basic sparse kernels such as sparse matrix vector multiplication (SMV). Such sparse kernels can utilize only a fraction of the available processing speed because of their relatively large number of data accesses per floating point operation, and limited data locality and data re-use. Algorithmic changes and tuning of codes through blocking and loop unrolling schemes can improve performance but such tuned versions are typically not available in benchmark suites such as the SPEC CFP 2000. In this paper, we consider sparse SMV kernels with different levels of tuning that are representative of this application space. We emulate certain memory subsystem optimizations using SimpleScalar and Wattch to evaluate improvements in performance and energy metrics. We also characterize how such an evaluation can be affected by the interplay between code tuning and memory subsystem optimizations. Our results indicate that the optimizations reduce execution time by over 40%, and the energy by over 85%, when used with power control modes of CPUs and caches. Furthermore, the relative impact of the same set of memory subsystem optimizations can vary significantly depending on the level of code tuning. Consequently, it may be appropriate to augment traditional benchmarks by tuned kernels typical of high performance sparse scientific codes to enable comprehensive evaluations of future systems.
Keywords :
benchmark testing; mathematics computing; optimisation; power control; power engineering computing; sparse matrices; vectors; CPU; SPEC CFP 2000; SimpleScalar; Wattch; application code tuning; benchmark suites; data accesses; data locality; data reuse; energy metrics; memory subsystem optimizations; performance evaluation; power control modes; sparse kernels; sparse matrix vector multiplication; sparse scientific applications; Application software; Computational modeling; Computer architecture; Computer science; Kernel; Microprocessors; Power control; Power engineering and energy; Scientific computing; Sparse matrices; application code tuning; benchmarks; memory optimizations; performance evaluation; power optimizations; sparse matrix kernels; voltage scaling;
Conference_Titel :
Parallel and Distributed Processing Symposium, 2006. IPDPS 2006. 20th International
Print_ISBN :
1-4244-0054-6
DOI :
10.1109/IPDPS.2006.1639589