Tightening I/O Lower Bounds through the Hourglass Dependency Pattern

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: Eyraud-Dubois, Lionel, Iooss, Guillaume, Langou, Julien, Rastello, Fabrice
Format: Preprint
Publié: 2024
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866913329147019264
author Eyraud-Dubois, Lionel
Iooss, Guillaume
Langou, Julien
Rastello, Fabrice
author_facet Eyraud-Dubois, Lionel
Iooss, Guillaume
Langou, Julien
Rastello, Fabrice
contents When designing an algorithm, one cares about arithmetic/computational complexity, but data movement (I/O) complexity plays an increasingly important role that highly impacts performance and energy consumption. For a given algorithm and a given I/O model, scheduling strategies such as loop tiling can reduce the required I/O down to a limit, called the I/O complexity, inherent to the algorithm itself. The objective of I/O complexity analysis is to compute, for a given program, its minimal I/O requirement among all valid schedules. We consider a sequential execution model with two memories, an infinite one, and a small one of size S on which the computations retrieve and produce data. The I/O is the number of reads and writes between the two memories. We identify a common "hourglass pattern" in the dependency graphs of several common linear algebra kernels. Using the properties of this pattern, we mathematically prove tighter lower bounds on their I/O complexity, which improves the previous state-of-the-art bound by a parametric ratio. This proof was integrated inside the IOLB automatic lower bound derivation tool.
format Preprint
id arxiv_https___arxiv_org_abs_2404_16443
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Tightening I/O Lower Bounds through the Hourglass Dependency Pattern
Eyraud-Dubois, Lionel
Iooss, Guillaume
Langou, Julien
Rastello, Fabrice
Computational Complexity
Distributed, Parallel, and Cluster Computing
When designing an algorithm, one cares about arithmetic/computational complexity, but data movement (I/O) complexity plays an increasingly important role that highly impacts performance and energy consumption. For a given algorithm and a given I/O model, scheduling strategies such as loop tiling can reduce the required I/O down to a limit, called the I/O complexity, inherent to the algorithm itself. The objective of I/O complexity analysis is to compute, for a given program, its minimal I/O requirement among all valid schedules. We consider a sequential execution model with two memories, an infinite one, and a small one of size S on which the computations retrieve and produce data. The I/O is the number of reads and writes between the two memories. We identify a common "hourglass pattern" in the dependency graphs of several common linear algebra kernels. Using the properties of this pattern, we mathematically prove tighter lower bounds on their I/O complexity, which improves the previous state-of-the-art bound by a parametric ratio. This proof was integrated inside the IOLB automatic lower bound derivation tool.
title Tightening I/O Lower Bounds through the Hourglass Dependency Pattern
topic Computational Complexity
Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2404.16443