DaPPA: A Data-Parallel Framework for Processing-in-Memory Architectures - LIRMM - Laboratoire d’Informatique, de Robotique et de Microélectronique de Montpellier Accéder directement au contenu
Poster De Conférence Année : 2023

DaPPA: A Data-Parallel Framework for Processing-in-Memory Architectures

DaPPA : Un framework de traitement parallèle des données pour les architectures de traitement en mémoire

Résumé

To ease the programmability of PIM architectures, we propose DaPPA(data-parallel processing-in-memory architecture), a framework that can, for a given application, automatically distribute input and gather output data, handle memory management, and parallelize work across the DPUs. The key idea behind DaPPA is to remove the responsibility of managing hardware resources from the programmer by providing an intuitive data-parallel pattern-based programming interface that abstracts the hardware components of the UPMEM system. Using this key idea, DaPPA transforms a data-parallel pattern-based application code into the appropriate UPMEM-target code, including the required APIs for data management and code partition, which can then be compiled into a UPMEM-based binary transparently from the programmer. While generating UPMEM-target code, DaPPA implements several code optimizations to improve end-to-end performance.
Pour faciliter la programmabilité des architectures PIM (Processing-In-Memory), nous proposons DaPPA (architecture de traitement en mémoire parallèle de données), un cadre qui peut, pour une application donnée, distribuer automatiquement les données d'entrée et rassembler les données de sortie, gérer la mémoire, et paralléliser le travail à travers les unités de traitement de données (DPUs). L'idée principale derrière DaPPA est d'enlever la responsabilité de la gestion des ressources matérielles du programmeur en fournissant une interface de programmation basée sur des modèles parallèles de données intuitifs qui abstraient les composants matériels du système UPMEM. En utilisant cette idée clé, DaPPA transforme un code d'application basé sur des modèles parallèles de données en code cible UPMEM approprié, y compris les API nécessaires pour la gestion des données et la partition du code, qui peuvent ensuite être compilés en un binaire basé sur UPMEM de manière transparente pour le programmeur. Lors de la génération du code cible UPMEM, DaPPA met en œuvre plusieurs optimisations de code pour améliorer la performance de bout en bout.

Mots clés

Fichier principal
Vignette du fichier
2310.10168.pdf (192.43 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

lirmm-04423308 , version 1 (29-01-2024)

Identifiants

Citer

Geraldo Oliveira, Alain Kohli, David Novo, Juan Gómez-Luna, Onur Mutlu. DaPPA: A Data-Parallel Framework for Processing-in-Memory Architectures. PACT 2023 - 32nd International Conference on Parallel Architectures and Compilation Techniques, Oct 2023, Vienna, Austria. , 2023, ⟨10.48550/arXiv.2310.10168⟩. ⟨lirmm-04423308⟩
3 Consultations
3 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More