Effective padding of multidimensional arrays to avoid cache conflict misses

4Citations
Citations of this article
29Readers
Mendeley users who have this article in their library.

Abstract

Caches are used to significantly improve performance. Even with high degrees of set associativity, the number of accessed data elements mapping to the same set in a cache can easily exceed the degree of associativity. This can cause conflict misses and lower performance, even if the working set is much smaller than cache capacity. Array padding (increasing the size of array dimensions) is a well-known optimization technique that can reduce conflict misses. In this paper, we develop the first algorithms for optimal padding of arrays aimed at a set-associative cache for arbitrary tile sizes. In addition, we develop the first solution to padding for nested tiles and multi-level caches. Experimental results with multiple benchmarks demonstrate a significant performance improvement from padding.

Cite

CITATION STYLE

APA

Hong, C., Bao, W., Cohen, A., Krishnamoorthy, S., Pouchet, L. N., Rastello, F., … Sadayappan, P. (2016). Effective padding of multidimensional arrays to avoid cache conflict misses. ACM SIGPLAN Notices, 51(6), 129–144. https://doi.org/10.1145/2908080.2908123

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free