Characterizing the behavior of sparse algorithms on caches

Olivier Temam, William Jalby · 1992

Sparse computations constitute one of the most important area of numerical algebra and scientific computing. While there are many studies on the locality of dense codes, few deal with the locality of sparse codes. Because of indirect addressing, sparse codes exhibit irregular patterns of references. In this paper, the behavior on cache of one of the most frequent primitives SpMxV Sparse Matrix-Vector multiply is analyzed. A model of its references is built, and then performance bottlenecks of SpMxV are analyzed using model and simulations. Main parameters are identified and their role is explained and quantified. Then, this analysis is used to discuss optimizations of SpMxV. Moreover a blocking technique which takes into account the specifics of sparse codes is proposed. Keywords: sparse primitives, cache, performance prediction, data locality. 1 Introduction Due to the increasing difference between memory speed and processor speed, it becomes critical to minimize communications bet...

Read the paper · More papers on PaperTik