arXiv · 1802.00166
PCOT: Cache Oblivious Tiling of Polyhedral Programs
Abstract
This paper studies two variants of tiling: iteration space tiling (or loop blocking) and cache-oblivious methods that recursively split the iteration space with divide-and-conquer. The key question to answer is when we should be using one over the other. The answer to this question is complicated for modern architecture due to a number of reasons. In this paper, we present a detailed empirical study to answer this question for a range of kernels that fit the polyhedral model. Our study is based on a generalized cache oblivious code generator that support this class, which is a superset of those supported by existing tools. The conclusion is that cache oblivious code is most useful when the aim is to have reduced off-chip memory accesses, e.g., lower energy, albeit certain situations that diminish its effectiveness exist.
Explore related subjects
Keep this discovery
Waruna Ranasinghe, Nirmal Prajapati, Tomofumi Yuki, Sanjay Rajopadhye. 2018-02-01. PCOT: Cache Oblivious Tiling of Polyhedral Programs. https://arxiv.org/abs/1802.00166
Cite the original work for its findings. Save a collection to share your selection of sources.