Efficient resolution of sparse indirections in data-parallel compilers
Manuel Ujaldón, Emilio L. Zapata · 1995
This paper describes new compiler and run-time techniques to handle array accesses involving several levels of indirection such as those arising in sparse and irregular problems. The lack of information at compile-time in such problems has typically required the insertion of expensive runtime support. We propose new data distributions which can be used with standard sparse matrix representations to achieve much more efficient resolution of indirections at runtime. Unlike previous methods, our techniques require only a single communication phase to access non-local data, even in the presence of multiple levels of indirections. Likewise, the methods presented here are novel in that they allow the compiler to use the semantic relations of the array elements involved in the indirect accesses to perform a number of optimizations.