Architecture-Aware Currying

In near-data computing (NDC), computation is brought into data, as opposed to bringing data to computation. While there is prior work focusing on different NDC opportunities, there is no study, to our knowledge, that investigates the importance of "neighborhood" in NDC. This paper explores...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:2023 32nd International Conference on Parallel Architectures and Compilation Techniques (PACT) S. 250 - 264
Hauptverfasser: Kandemir, Mahmut Taylan, Akbulut, Gulsum Gudukbay, Choi, Wonil, Karakoy, Mustafa
Format: Tagungsbericht
Sprache:Englisch
Veröffentlicht: IEEE 21.10.2023
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:In near-data computing (NDC), computation is brought into data, as opposed to bringing data to computation. While there is prior work focusing on different NDC opportunities, there is no study, to our knowledge, that investigates the importance of "neighborhood" in NDC. This paper explores the neighborhood concept in multithreaded programs that run on on-chip network-based manycore systems. We define the concept of "neighborhood", in terms of on-chip network links, and use it to formulate the NDC problem. We propose a "generic" compiler algorithm, called "architecture-aware currying", that uses the neighborhood concept to implement NDC. So, a core can perform some portions of computation with the nearby data and postpone the remainder of the computation until the remaining data become nearby. It can also perform computations - with nearby data - on behalf of other cores. Our experimental evaluation shows that the proposed compiler algorithm outperforms state-of-the-art data locality optimization strategies.
DOI:10.1109/PACT58117.2023.00029