We gratefully acknowledge support from
the Simons Foundation and member institutions.
Full-text links:

Download:

Current browse context:

cs.PL

Change to browse by:

cs

References & Citations

DBLP - CS Bibliography

Bookmark

(what is this?)
CiteULike logo BibSonomy logo Mendeley logo del.icio.us logo Digg logo Reddit logo

Computer Science > Programming Languages

Title: Full Version: (De/Re)-Composition of Data-Parallel Computations via Multi-Dimensional Homomorphisms

Authors: Ari Rasch
Abstract: We formally introduce a systematic (de/re)-composition approach, based on the algebraic formalism of "Multi-Dimensional Homomorphisms (MDHs)". Our approach is designed as general enough to be applicable to a wide range of data-parallel computations and for various kinds of target parallel architectures. To efficiently target the deep and complex memory and core hierarchies of contemporary architectures, we exploit our introduced (de/re)-composition approach for a correct-by-construction, parametrized cache blocking and parallelization strategy. We show that our approach is powerful enough to express, in the same formalism, the (de/re)-composition strategies of different classes of state-of-the-art approaches (scheduling-based, polyhedral, etc), and we demonstrate that the parameters of our strategies enable systematically generating code that can be fully automatically optimized (auto-tuned) for the particular target architecture and characteristics of the input and output data (e.g., their sizes and memory layouts). Particularly, our experiments confirm that via auto-tuning, we achieve higher performance than state-of-the-art approaches, including hand-optimized solutions provided by vendors (such as NVIDIA cuBLAS/cuDNN and Intel oneMKL/oneDNN), on real-world data sets and for a variety of data-parallel computations, including: linear algebra routines, stencil and quantum chemistry computations, data mining algorithms, and computations that recently gained high attention due to their relevance for deep learning.
Comments: A short version of this paper is published at ACM TOPLAS and presented at PLDI'24
Subjects: Programming Languages (cs.PL)
Journal reference: ACM Trans. Program. Lang. Syst. (May 2024)
DOI: 10.1145/3665643
Cite as: arXiv:2405.05118 [cs.PL]
  (or arXiv:2405.05118v2 [cs.PL] for this version)

Submission history

From: Ari Rasch [view email]
[v1] Wed, 8 May 2024 15:16:02 GMT (25306kb,D)
[v2] Fri, 24 May 2024 12:56:30 GMT (25306kb,D)

Link back to: arXiv, form interface, contact.