Run-time reference clustering for cache performance optimization

Wesley K. Kaplow, Boleslaw Karol Szymanski, P. Tannenbaum, Viktor K. Decyk · 2002

We introduce a method for improving the cache performance of irregular computations in which data are referenced through run time defined indirection arrays. Such computations often arise in scientific problems. The presented method called Run-Time Reference Clustering (RTRC), is a run time analog of a compile time blocking used for dense matrix problems. RTRC uses the data partitioning and remapping techniques that are a part of distributed memory multiprocessor codes designed to minimize interprocessor communication. Remapping each set of local data decreases cache misses, the same way remapping the global data decreases off-processor references. We demonstrate the applicability and performance of the RTRC technique on several prevalent applications: Sparse Matrix-Vector Multiply, Particle-in-Cell, and CHARMM like codes. Performance results on SPARC-20, SP-2, and T3-D processors show that single node execution performance can be improved by as much as 35%.

Read the paper · More papers on PaperTik