Profile-Guided Scope-Based Data Allocation Method - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Communication Dans Un Congrès Année : 2018

Profile-Guided Scope-Based Data Allocation Method

Méthode d'allocation de donnée basée sur profilage

Résumé

The complexity of High Performance Computing nodes memory system increases in order to tackle application growing memory usage and increasing gap between computation and memory access speeds. As these technologies are just being introduced in HPC supercomputers no one knows if it is better to manage them with hardware or software solutions. Thus both are being studied in parallel. For both solutions, the problem consists in choosing what data to store on which memory at any time. In this paper we present a linear formulation of the data allocation problem. Moreover, we propose a new profile-guided scope-based approach which reduces the data allocation problem complexity, thus enhancing the precision of state of the art analyzes. Finally we have implemented our method in a framework made of GCC plugins, dynamic libraries and python scripts, allowing to test the method on several benchmarks. We have evaluated our method on an INTEL Knight's Landing processor. To this aim we have run LULESH, HydroMM, two hydrodynamic codes, and MiniFE, a finite element mini application. We have compared our framework performance over these codes to several straightforward solutions: MCDRAM as a cache, in hybrid mode, in flat mode using numactl command and existing AutoHBW dynamic library.
La complexité du système de mémoire des nœuds de calcul haute performance augmente afin de faire face à l'utilisation croissante de la mémoire des applications et à l'écart croissant entre le calcul et les vitesses d'accès à la mémoire. Comme ces technologies viennent d'être introduites dans les supercalculateurs HPC, personne ne sait s'il est préférable de les gérer avec des solutions matérielles ou logicielles. Les deux sont donc étudiés en parallèle. Pour les deux solutions, le problème consiste à choisir à tout moment quelle donnée stocker sur quelle mémoire. Dans cet article, nous présentons une formulation linéaire du problème de l'allocation des données. De plus, nous proposons une nouvelle approche basée sur un profilage hors ligne qui réduit la complexité du problème d'allocation des données, améliorant ainsi la précision des analyses de l'état de l'art. Enfin, nous avons implémenté notre méthode dans une boîte à outils constituée de plugins GCC, de bibliothèques dynamiques et de scripts python, permettant de tester la méthode sur plusieurs benchmarks. Nous avons évalué notre méthode sur un processeur INTEL Knight's Landing. Pour ce faire, nous avons utilisé LULESH, HydroMMM, deux codes hydrodynamiques et MiniFE, une application miniature de méthode des éléments finis. Nous avons comparé le rendement de notre cadre de travail par rapport à ces codes à plusieurs solutions de l'état de l'art : MCDRAM en cache, en mode hybride, en mode plat en utilisant la commande numactl et la bibliothèque dynamique AutoHBW.
Fichier principal
Vignette du fichier
MemSys2018.pdf (923.48 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01897917 , version 1 (17-10-2018)

Identifiants

  • HAL Id : hal-01897917 , version 1

Citer

Hugo Brunie, Julien Jaeger, Patrick Carribault, Denis Barthou. Profile-Guided Scope-Based Data Allocation Method. MEMSYS 2018 - International Symposium on Memory Systems, Oct 2018, Alexandria, United States. ⟨hal-01897917⟩
221 Consultations
290 Téléchargements

Partager

Gmail Facebook X LinkedIn More