Fusing Gathers with Integer Linear Programming

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: van Balen, David, Keller, Gabriele, Wolff, Ivo Gabede, McDonell, Trevor L.
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866910533773426688
author van Balen, David
Keller, Gabriele
Wolff, Ivo Gabede
McDonell, Trevor L.
author_facet van Balen, David
Keller, Gabriele
Wolff, Ivo Gabede
McDonell, Trevor L.
contents We present an Integer Linear Programming based approach to finding the optimal fusion strategy for combinator-based parallel programs. While combinator-based languages or libraries provide a convenient interface for programming parallel hardware, fusing combinators to more complex operations is essential to achieve the desired performance. Our approach is not only suitable for languages with the usual map, fold, scan, indexing and scatter operations, but also gather operations, which access arrays in arbitrary order, and therefore goes beyond the traditional producer-consumer fusion. It can be parametrised with appropriate cost functions, and is fast enough to be suitable for just-in-time compilation.
format Preprint
id arxiv_https___arxiv_org_abs_2407_13585
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Fusing Gathers with Integer Linear Programming
van Balen, David
Keller, Gabriele
Wolff, Ivo Gabede
McDonell, Trevor L.
Programming Languages
We present an Integer Linear Programming based approach to finding the optimal fusion strategy for combinator-based parallel programs. While combinator-based languages or libraries provide a convenient interface for programming parallel hardware, fusing combinators to more complex operations is essential to achieve the desired performance. Our approach is not only suitable for languages with the usual map, fold, scan, indexing and scatter operations, but also gather operations, which access arrays in arbitrary order, and therefore goes beyond the traditional producer-consumer fusion. It can be parametrised with appropriate cost functions, and is fast enough to be suitable for just-in-time compilation.
title Fusing Gathers with Integer Linear Programming
topic Programming Languages
url https://arxiv.org/abs/2407.13585