38 results on '"Raymond Namyst"'
Search Results
2. Peachy Parallel Assignments (EduPar 2022).
- Author
-
H. Martin Bücker, Henri Casanova, Rafael Ferreira da Silva, Alice Lasserre, Derrick Luyen, Raymond Namyst, Johannes Schoder, Pierre-André Wacrenier, and David P. Bunde
- Published
- 2022
- Full Text
- View/download PDF
3. Programming Heterogeneous Architectures Using Hierarchical Tasks.
- Author
-
Mathieu Faverge, Nathalie Furmento, Abdou Guermouche, Gwenolé Lucas, Raymond Namyst, Samuel Thibault, and Pierre-André Wacrenier
- Published
- 2022
- Full Text
- View/download PDF
4. Exploring Scheduling Algorithms for Parallel Task Graphs: A Modern Game Engine Case Study.
- Author
-
Mustapha Regragui, Baptiste Coye, Laércio Lima Pilla, Raymond Namyst, and Denis Barthou
- Published
- 2022
- Full Text
- View/download PDF
5. Programming heterogeneous architectures using hierarchical tasks.
- Author
-
Mathieu Faverge, Nathalie Furmento, Abdou Guermouche, Gwenolé Lucas, Raymond Namyst, Samuel Thibault, and Pierre-André Wacrenier
- Published
- 2023
- Full Text
- View/download PDF
6. TEXTAROSSA: Towards EXtreme scale Technologies and Accelerators for euROhpc hw/Sw Supercomputing Applications for exascale.
- Author
-
Giovanni Agosta, Daniele Cattaneo 0002, William Fornaciari, Andrea Galimberti, Giuseppe Massari, Federico Reghenzani, Federico Terraneo, Davide Zoni, Carlo Brandolese, Massimo Celino, Francesco Iannone, Paolo Palazzari, Giuseppe Zummo, Massimo Bernaschi, Pasqua D'Ambra, Sergio Saponara, Marco Danelutto, Massimo Torquati, Marco Aldinucci, Yasir Arfat, Barbara Cantalupo, Iacopo Colonnelli, Roberto Esposito, Alberto Riccardo Martinelli, Gianluca Mittone, Olivier Beaumont, Bérenger Bramas, Lionel Eyraud-Dubois, Brice Goglin, Abdou Guermouche, Raymond Namyst, Samuel Thibault, Antonio Filgueras, Miquel Vidal, Carlos álvarez 0001, Xavier Martorell, Ariel Oleksiak, Michal Kulczewski, Alessandro Lonardo, Piero Vicini, Francesca Lo Cicero, Francesco Simula, Andrea Biagioni, Paolo Cretaro, Ottorino Frezza, Pier Stanislao Paolucci, Matteo Turisini, Francesco Giacomini, Tommaso Boccali, Simone Montangero, and Roberto Ammendola
- Published
- 2021
- Full Text
- View/download PDF
7. EASYPAP: a Framework for Learning Parallel Programming.
- Author
-
Alice Lasserre, Raymond Namyst, and Pierre-André Wacrenier
- Published
- 2020
- Full Text
- View/download PDF
8. SPAWN: An Iterative, Potentials-Based, Dynamic Scheduling and Partitioning Tool.
- Author
-
Jean-Charles Papin, Christophe Denoual, Laurent Colombet, and Raymond Namyst
- Published
- 2021
- Full Text
- View/download PDF
9. EasyPAP: A framework for learning parallel programming.
- Author
-
Alice Lasserre, Raymond Namyst, and Pierre-André Wacrenier
- Published
- 2021
- Full Text
- View/download PDF
10. EXA2PRO programming environment: architecture and applications.
- Author
-
Dimitrios Soudris, Lazaros Papadopoulos, Christoph W. Kessler, Dionysios D. Kehagias, Athanasios I. Papadopoulos, Panos Seferlis, Alexander Chatzigeorgiou, Apostolos Ampatzoglou, Samuel Thibault, Raymond Namyst, Dirk Pleiter, Georgi Gaydadjiev, Tobias Becker, and Matthieu Haefele
- Published
- 2018
- Full Text
- View/download PDF
11. Combining Task-based Parallelism and Adaptive Mesh Refinement Techniques in Molecular Dynamics Simulations.
- Author
-
Raphaël Prat, Laurent Colombet, and Raymond Namyst
- Published
- 2018
- Full Text
- View/download PDF
12. Resource aggregation for task-based Cholesky Factorization on top of modern architectures.
- Author
-
Terry Cojean, Abdou Guermouche, Andra Hugo, Raymond Namyst, and Pierre-André Wacrenier
- Published
- 2019
- Full Text
- View/download PDF
13. SimSGamE : Scheduling simulator for modern game engines.
- Author
-
Mustapha Regragui, Baptiste Coye, Laércio Lima Pilla, Raymond Namyst, and Denis Barthou
- Published
- 2022
- Full Text
- View/download PDF
14. Towards EXtreme scale technologies and accelerators for euROhpc hw/Sw supercomputing applications for exascale: The TEXTAROSSA approach.
- Author
-
Giovanni Agosta, Marco Aldinucci, Carlos álvarez 0001, Roberto Ammendola, Yasir Arfat, Olivier Beaumont, Massimo Bernaschi, Andrea Biagioni, Tommaso Boccali, Bérenger Bramas, Carlo Brandolese, Barbara Cantalupo, Mauro Carrozzo, Daniele Cattaneo 0002, Alessandro Celestini, Massimo Celino, Iacopo Colonnelli, Paolo Cretaro, Pasqua D'Ambra, Marco Danelutto, Roberto Esposito, Lionel Eyraud-Dubois, Antonio Filgueras, William Fornaciari, Ottorino Frezza, Andrea Galimberti, Francesco Giacomini, Brice Goglin, Daniele Gregori, Abdou Guermouche, Francesco Iannone, Michal Kulczewski, Francesca Lo Cicero, Alessandro Lonardo, Alberto Riccardo Martinelli, Michele Martinelli, Xavier Martorell, Giuseppe Massari, Simone Montangero, Gianluca Mittone, Raymond Namyst, Ariel Oleksiak, Paolo Palazzari, Pier Stanislao Paolucci, Federico Reghenzani, Cristian Rossi, Sergio Saponara, Francesco Simula, Federico Terraneo, Samuel Thibault, Massimo Torquati, Matteo Turisini, Piero Vicini, Miquel Vidal, Davide Zoni, and Giuseppe Zummo
- Published
- 2022
- Full Text
- View/download PDF
15. Resource-Management Study in HPC Runtime-Stacking Context.
- Author
-
Arthur Loussert, Benoit Welterlen, Patrick Carribault, Julien Jaeger, Marc Pérache, and Raymond Namyst
- Published
- 2017
- Full Text
- View/download PDF
16. Resource Aggregation for Task-Based Cholesky Factorization on Top of Heterogeneous Machines.
- Author
-
Terry Cojean, Abdou Guermouche, Andra Hugo, Raymond Namyst, and Pierre-André Wacrenier
- Published
- 2016
- Full Text
- View/download PDF
17. Automatic OpenCL Code Generation for Multi-device Heterogeneous Architectures.
- Author
-
Pei Li 0003, Elisabeth Brunet, François Trahay, Christian Parrot, Gaël Thomas 0001, and Raymond Namyst
- Published
- 2015
- Full Text
- View/download PDF
18. AMR-based molecular dynamics for non-uniform, highly dynamic particle simulations.
- Author
-
Raphaël Prat, Thierry Carrard, Laurent Soulard, Olivier Durand, Raymond Namyst, and Laurent Colombet
- Published
- 2020
- Full Text
- View/download PDF
19. TEXTAROSSA: Towards EXtreme scale Technologies and Accelerators for euROhpc hw/Sw Supercomputing Applications for exascale
- Author
-
Ottorino Frezza, Olivier Beaumont, Simone Montangero, Francesco Simula, Marco Aldinucci, Francesca Lo Cicero, Tommaso Boccali, Raymond Namyst, Piero Vicini, Brice Goglin, Pasqua D'Ambra, Federico Terraneo, Davide Zoni, Massimo Bernaschi, Massimo Torquati, Alessandro Lonardo, Gianluca Mittone, Alberto Riccardo Martinelli, Andrea Galimberti, Roberto Esposito, Daniele Cattaneo, Paolo Cretaro, Massimo Celino, Carlos Alvarez, Pierluigi Paolucci, F. Iannone, Xavier Martorell, Iacopo Colonnelli, Federico Reghenzani, Bérenger Bramas, Giuseppe Massari, William Fornaciari, Antonio Filgueras, Giovanni Agosta, Yasir Arfat, Michal Kulczewski, Sergio Saponara, Andrea Biagioni, Matteo Turisini, Samuel Thibault, Roberto Ammendola, Giuseppe Zummo, Barbara Cantalupo, Francesco Giacomini, Ariel Oleksiak, Marco Danelutto, Miquel Vidal, Lionel Eyraud-Dubois, Paolo Palazzari, Carlo Brandolese, Abdou Guermouche, Dipartimento di Elettronica, Informazione e Bioingegneria (DEIB), Politecnico di Milano [Milan] (POLIMI), Agenzia Nazionale per le nuove Tecnologie, l’energia e lo sviluppo economico sostenibile = Italian National Agency for New Technologies, Energy and Sustainable Economic Development (ENEA), Istituto per le Applicazioni del Calcolo 'Mauro Picone' (IAC), National Research Council of Italy | Consiglio Nazionale delle Ricerche (CNR), University of Pisa - Università di Pisa, Università degli studi di Torino = University of Turin (UNITO), High-End Parallel Algorithms for Challenging Numerical Simulations (HiePACS), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Compilation pour les Architectures MUlti-coeurS (CAMUS), Inria Nancy - Grand Est, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie (ICube), École Nationale du Génie de l'Eau et de l'Environnement de Strasbourg (ENGEES)-Université de Strasbourg (UNISTRA)-Institut National des Sciences Appliquées - Strasbourg (INSA Strasbourg), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Institut National de Recherche en Informatique et en Automatique (Inria)-Les Hôpitaux Universitaires de Strasbourg (HUS)-Centre National de la Recherche Scientifique (CNRS)-Matériaux et Nanosciences Grand-Est (MNGE), Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Institut National de la Santé et de la Recherche Médicale (INSERM)-Institut de Chimie du CNRS (INC)-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Institut National de la Santé et de la Recherche Médicale (INSERM)-Institut de Chimie du CNRS (INC)-Centre National de la Recherche Scientifique (CNRS)-Réseau nanophotonique et optique, Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Centre National de la Recherche Scientifique (CNRS)-École Nationale du Génie de l'Eau et de l'Environnement de Strasbourg (ENGEES)-Université de Strasbourg (UNISTRA)-Institut National des Sciences Appliquées - Strasbourg (INSA Strasbourg), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Les Hôpitaux Universitaires de Strasbourg (HUS)-Centre National de la Recherche Scientifique (CNRS)-Matériaux et Nanosciences Grand-Est (MNGE), Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Centre National de la Recherche Scientifique (CNRS), Topology-Aware System-Scale Data Management for High-Performance Computing (TADAAM), Université de Bordeaux (UB), STatic Optimizations, Runtime Methods (STORM), Barcelona Supercomputing Center - Centro Nacional de Supercomputacion (BSC - CNS), Poznan Supercomputing and Networking Center (PSNC), Istituto Nazionale di Fisica Nucleare [Sezione di Roma 1] (INFN), Istituto Nazionale di Fisica Nucleare, Istituto Nazionale di Fisica Nucleare (INFN), Istituto Nazionale di Fisica Nucleare [Pisa] (INFN), Istituto Nazionale di Fisica Nucleare, Sezione di Padova (INFN, Sezione di Padova), Istituto Nazionale di Fisica Nucleare, Sezione di Roma Tor Vergata (INFN, Sezione di Roma Tor Vergata), This work is supported by the TEXTAROSSA project G.A. n° 956831, as part of the EuroHPC initiative., European Project: 956831,TEXTAROSSA(2021), Goglin, Brice, Towards EXtreme scale Technologies and Accelerators for euROhpc hw/Sw Supercomputing Applications for exascale - TEXTAROSSA - 2021-01-01 - 2024-01-01 - 956831 - VALID, Consiglio Nazionale delle Ricerche [Roma] (CNR), Italian National Agency for New Technologies, Energy and Sustainable Economic Development (ENEA), Università degli studi di Torino (UNITO), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Institut National des Sciences Appliquées - Strasbourg (INSA Strasbourg), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Strasbourg (UNISTRA)-Centre National de la Recherche Scientifique (CNRS)-École Nationale du Génie de l'Eau et de l'Environnement de Strasbourg (ENGEES)-Réseau nanophotonique et optique, Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Matériaux et nanosciences d'Alsace (FMNGE), Institut de Chimie du CNRS (INC)-Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Institut National de la Santé et de la Recherche Médicale (INSERM)-Centre National de la Recherche Scientifique (CNRS)-Institut de Chimie du CNRS (INC)-Université de Strasbourg (UNISTRA)-Institut National de la Santé et de la Recherche Médicale (INSERM)-Centre National de la Recherche Scientifique (CNRS)-Institut National des Sciences Appliquées - Strasbourg (INSA Strasbourg), Institut de Chimie du CNRS (INC)-Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Institut National de la Santé et de la Recherche Médicale (INSERM)-Centre National de la Recherche Scientifique (CNRS)-Institut de Chimie du CNRS (INC)-Université de Strasbourg (UNISTRA)-Institut National de la Santé et de la Recherche Médicale (INSERM)-Centre National de la Recherche Scientifique (CNRS), Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors, Barcelona Supercomputing Center, Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions, and Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie (ICube)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,[INFO.INFO-AR] Computer Science [cs]/Hardware Architecture [cs.AR] ,European Projects ,Power aware computing ,Computer science ,high Performance Computing, Exascale computing, European Projects, Thermal and power management, run-time management ,Tools ,Parallel Computing ,Reconfigurable architectures ,Exascale computing ,Superordinadors -- Consum d'energia ,run-time management ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,high Performance Computing ,Informàtica::Arquitectura de computadors [Àrees temàtiques de la UPC] ,Thermal and power management ,European research ,Computational modeling ,Supercomputer ,Software algorithms ,Thermal control ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,High performance computing -- Energy consumption ,Europe ,Computer architecture ,[INFO.INFO-OS] Computer Science [cs]/Operating Systems [cs.OS] ,Extreme scale ,HPC ,Programming paradigm ,Key (cryptography) ,[INFO.INFO-MO] Computer Science [cs]/Modeling and Simulation ,[INFO.INFO-OS]Computer Science [cs]/Operating Systems [cs.OS] ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Digital systems ,Programming parallel machines ,Efficient energy use - Abstract
To achieve high performance and high energy efficiency on near-future exascale computing systems, three key technology gaps needs to be bridged. These gaps include: energy efficiency and thermal control; extreme computation efficiency via HW acceleration and new arithmetics; methods and tools for seamless integration of reconfigurable accelerators in heterogeneous HPC multi-node platforms. TEXTAROSSA aims at tackling this gap through a co-design approach to heterogeneous HPC solutions, supported by the integration and extension of HW and SW IPs, programming models and tools derived from European research. This work is supported by the TEXTAROSSA project G.A. n.956831, as part of the EuroHPC initiative. Peer Reviewed Article signat per 51 autors/es: Giovanni Agosta, Daniele Cattaneo, William Fornaciari, Andrea Galimberti, Giuseppe Massari, Federico Reghenzani, Federico Terraneo, Davide Zoni, Carlo Brandolese (DEIB – Politecnico di Milano, Italy, name.surname@polimi.it) | Massimo Celino, Francesco Iannone, Paolo Palazzari, Giuseppe Zummo (ENEA, Italy, name.surname@enea.it) | Massimo Bernaschi, Pasqua D’Ambra (Istituto per le Applicazioni del Calcolo (IAC) - CNR, Italy, name.surname@cnr.it) | Sergio Saponara, Marco Danelutto, Massimo Torquati (University of Pisa, Italy, name.surname@unipi.it) | Marco Aldinucci, Yasir Arfat, Barbara Cantalupo, Iacopo Colonnelli, Roberto Esposito, Alberto R. Martinelli, Gianluca Mittone (University of Torino, Italy, name.surname@unito.it) | Olivier Beaumont, Berenger Bramas, Lionel Eyraud-Dubois, Brice Goglin, Abdou Guermouche, Raymond Namyst, Samuel Thibault (Inria - France, name.surname@inria.fr) | Antonio Filgueras, Miquel Vidal, Carlos Alvarez, Xavier Martorell (BSC - Spain, name.surname@bsc.es) | Ariel Oleksiak, Michal Kulczewski (PSNC, Poland, ariel@man.poznan.pl, kulka@man.poznan.pl) | Alessandro Lonardo, Piero Vicini, Francesca Lo Cicero, Francesco Simula, Andrea Biagioni, Paolo Cretaro, Ottorino Frezza, Pier Stanislao Paolucci, Matteo Turisini (INFN Sezione di Roma - Italy, name.surname@roma1.infn.it) | Francesco Giacomini (INFN CNAF - Italy, name.surname@cnaf.infn.it) | Tommaso Boccali (INFN Sezione di Pisa - Italy, name.surname@pi.infn.it) | Simone Montangero (University of Padova and INFN Sezione di Padova - Italy, name.surname@pd.infn.it) | Roberto Ammendola (INFN Sezione di Roma Tor Vergata - Italy, name.surname@roma2.infn.it)
- Published
- 2021
20. AMR-based molecular dynamics for non-uniform, highly dynamic particle simulations
- Author
-
Olivier Durand, Raphaël Prat, Laurent Soulard, Raymond Namyst, Laurent Colombet, Thierry Carrard, Commissariat à l'énergie atomique et aux énergies alternatives (CEA), DAM Île-de-France (DAM/DIF), Direction des Applications Militaires (DAM), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA), STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), This work was funded by the French Programme d’Investissements d’Avenir (PIA) project SMICE, and Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest
- Subjects
Adaptive mesh refinement ,Computer science ,business.industry ,Computation ,General Physics and Astronomy ,Cloud computing ,Data structure ,01 natural sciences ,Atomic units ,010305 fluids & plasmas ,Computational science ,Molecular dynamics ,Hardware and Architecture ,0103 physical sciences ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,010306 general physics ,business ,Massively parallel ,Xeon Phi - Abstract
International audience; Accurate simulations of metal under heavy shocks, leading to fragmentation and ejection of particles, cannot be achieved by simply hydrodynamic models and require to be performed at atomic scale using molecular dynamics methods. In order to cope with billions of particles exposed to short range interactions, such molecular dynamics methods need to be highly optimized over massively parallel supercomputers. In this paper, we propose to leverage Adaptive Mesh Refinement techniques to improve efficiency of molecular dynamics code on highly heterogeneous particle configurations. We introduce a series of techniques that optimize the force computation loop using multi-threading and vectorization-friendly data structures. Our design is guided by the need for load balancing and adaptivity raised by highly dynamic particle sets. We analyze performance results on several simulation scenarios, such as the production of an ejecta cloud from shock-loaded metallic surfaces, using a large number of nodes equipped by Intel Xeon Phi Knights Landing processors. Performance obtained with our new Molecular Dynamics code achieves speedups greater than 1.38 against the state-of-the-art LAMMPS implementation.
- Published
- 2020
- Full Text
- View/download PDF
21. EASYPAP: a Framework for Learning Parallel Programming
- Author
-
Raymond Namyst, Alice Lasserre, Pierre-André Wacrenier, Université de Bordeaux (UB), STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université Sciences et Technologies - Bordeaux 1-Université Bordeaux Segalen - Bordeaux 2, Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université Sciences et Technologies - Bordeaux 1-Université Bordeaux Segalen - Bordeaux 2-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université Sciences et Technologies - Bordeaux 1-Université Bordeaux Segalen - Bordeaux 2-Inria Bordeaux - Sud-Ouest, Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Wacrenier, Pierre André, and Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)
- Subjects
Monitoring ,Computer Networks and Communications ,Computer science ,Computation ,Parallel programming ,02 engineering and technology ,Thread (computing) ,Parallel computing ,01 natural sciences ,010305 fluids & plasmas ,Theoretical Computer Science ,Scheduling (computing) ,Education ,Artificial Intelligence ,0103 physical sciences ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,0202 electrical engineering, electronic engineering, information engineering ,Code (cryptography) ,010306 general physics ,Visualization ,020203 distributed computing ,POSIX Threads ,OpenCL ,020207 software engineering ,OpenMP ,Hardware and Architecture ,Trace visualization ,MPI ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Software ,Range (computer programming) - Abstract
International audience; This paper presents EASYPAP, an easy-to-use programming environment designed to help students to learn parallel programming. EASYPAP features a wide range of 2D computation kernels that the students are invited to parallelize using Pthreads, OpenMP, OpenCL or MPI. Execution of kernels can be interactively visualized, and powerful monitoring tools allow students to observe both the scheduling of computations and the assignment of 2D tiles to threads/processes. By focusing on algorithms and data distribution, students can experiment with diverse code variants and tune multiple parameters, resulting in richer problem exploration and faster progress towards efficient solutions. We present selected lab assignments which illustrate how EASYPAP improves the way students explore parallel programming.
- Published
- 2020
- Full Text
- View/download PDF
22. Combining Task-based Parallelism and Adaptive Mesh Refinement Techniques in Molecular Dynamics Simulations
- Author
-
Raymond Namyst, Raphaël Prat, Laurent Colombet, Commissariat à l'énergie atomique et aux énergies alternatives (CEA), DAM Île-de-France (DAM/DIF), Direction des Applications Militaires (DAM), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), STatic Optimizations, Runtime Methods (STORM), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS), and Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest
- Subjects
Xeon ,Adaptive mesh refinement ,Computer science ,Computation ,Task parallelism ,Parallel computing ,Load balancing (computing) ,Adaptive Mesh Refinement ,Data structure ,Molecular Dynamics ,01 natural sciences ,010305 fluids & plasmas ,0103 physical sciences ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,010306 general physics ,Massively parallel ,Xeon Phi ,Task Parallelism - Abstract
International audience; Modern parallel architectures require applications to generate massive parallelism so as to feed their large number of cores and their wide vector units. We revisit the extensively studied classical Molecular Dynamics N-body problem in the light of these hardware constraints. We use Adaptive Mesh Refinement techniques to store particles in memory, and to optimize the force computation loop using multi-threading and vectorization-friendly data structures. Our design is guided by the need for load balancing and adaptivity raised by highly dynamic particle sets, as typically observed in simulations of strong shocks resulting in material micro-jetting. We analyze performance results on several simulation scenarios, over nodes equipped by Intel Xeon Phi Knights Landing (KNL) or Intel Xeon Skylake (SKL) processors. Performance obtained with our OpenMP implementation outperforms state-of-the-art implementations (LAMMPS) on both steady and micro-jetting particles simulations. In the latter case, our implementation is 4.7 times faster on KNL, and 2 times faster on SKL.
- Published
- 2018
- Full Text
- View/download PDF
23. Resource-Management Study in HPC Runtime-Stacking Context
- Author
-
Raymond Namyst, Marc Pérache, Arthur Loussert, Julien Jaeger, Patrick Carribault, Benoit Welterlen, DAM Île-de-France (DAM/DIF), Direction des Applications Militaires (DAM), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS), Bull atos technologies, and Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)
- Subjects
Multi-core processor ,Side effect (computer science) ,Resource (project management) ,Exploit ,Computer science ,Distributed computing ,Memory footprint ,Overhead (computing) ,Context (language use) ,Parallel computing ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Resource management (computing) - Abstract
International audience; With the advent of multicore and manycore processors as building blocks of HPC supercomputers, many applications shift from relying solely on a distributed programming model (e.g., MPI) to mixing distributed and shared-memory models (e.g., MPI+OpenMP), to better exploit shared-memory communications and reduce the overall memory footprint. One side effect of this programming approach is runtime stacking: mixing multiple models involve various runtime libraries to be alive at the same time and to share the underlying computing resources. This paper explores different configurations where this stacking may appear and introduces algorithms to detect the misuse of compute resources when running a hybrid parallel application. We have implemented our algorithms inside a dynamic tool that monitors applications and outputs resource usage to the user. We validated this tool on applications from CORAL benchmarks. This leads to relevant information which can be used to improve runtime placement, and to an average overhead lower than 1% of total execution time.
- Published
- 2017
- Full Text
- View/download PDF
24. Peppher: Performance Portability and Programmability for Heterogeneous Many-Core Architectures
- Author
-
Christoph Keler, Raymond Namyst, Jesper Larsson Träff, Herbert Cornelius, Cdric Augonnet, George Russell, Philippas Tsigas, Peter Sanders, Siegfried Benkner, Sabri Pllana, David Moloney, Andrew Richards, and Samuel Thibault
- Subjects
Software portability ,Multi-core processor ,Many core ,Computer architecture ,Computer science ,Code (cryptography) ,Data structure ,Extensibility - Abstract
© 2017 by John Wiley & Sons, Inc. All rights reserved. PEPPHER takes a pluralistic and parallelization agnostic approach to programmability and performance portability for heterogeneous many-core architectures. The PEPPHER framework is in principle language independent but focuses on supporting C++ code with PEPPHER-specific annotations as pragmas or external annotations. The framework is open and extensible; the PEPPHER methodology details how new architectures are incorporated. The PEPPHER methodology consists of rules for how to extend the framework for new architectures. This mainly concerns adaptivity and autotuning for algorithm libraries, the necessary hooks and extensions for the run-time system and any supporting algorithms and data structures that this relies on. Offloading is a specific technique for programming heterogeneous platforms that can sometimes be applied with high efficiency. Offload as developed by the PEPPHER partner Codeplay is a particular, nonintrusive C++ extension allowing portable C++ code to support diverse heterogeneous multicore architectures in a single code base.
- Published
- 2017
- Full Text
- View/download PDF
25. Resource aggregation for task-based Cholesky Factorization on top of modern architectures
- Author
-
Andra Hugo, Pierre-André Wacrenier, Terry Cojean, Raymond Namyst, Abdou Guermouche, STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Université de Bordeaux (UB), High-End Parallel Algorithms for Challenging Numerical Simulations (HiePACS), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS), Uppsala University, ANR Solhar, INRIA, PLAFRIM, ANR-13-MONU-0007,SOLHAR,Solveurs pour architectures hétérogènes utilisant des supports d'exécution(2013), Wacrenier, Pierre André, Modèles Numériques - Solveurs pour architectures hétérogènes utilisant des supports d'exécution - - SOLHAR2013 - ANR-13-MONU-0007 - MN - VALID, Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Uppsala Universitet [Uppsala], and Cojean, Terry
- Subjects
Intel Xeon-Phi KNL ,accelerator ,Computer Networks and Communications ,Computer science ,GPU ,Task parallelism ,Symmetric multiprocessor system ,010103 numerical & computational mathematics ,Parallel computing ,[INFO] Computer Science [cs] ,01 natural sciences ,Theoretical Computer Science ,Runtime system ,Artificial Intelligence ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,[INFO]Computer Science [cs] ,0101 mathematics ,dense linear algebra ,Multi-core processor ,Load balancing (computing) ,runtime system ,Computer Graphics and Computer-Aided Design ,heterogeneous computing ,010101 applied mathematics ,Hardware and Architecture ,Multicore ,Graph (abstract data type) ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Software ,Xeon Phi ,task DAG ,Cholesky decomposition ,Cholesky factorization - Abstract
This paper is submitted for review to the Parallel Computing special issue for HCW and HeteroPar 16 workshops; International audience; Hybrid computing platforms are now commonplace, featuring a large number of CPU cores and accelerators. This trend makes balancing computations between these heterogeneous resources performance critical. In this paper we propose ag-gregating several CPU cores in order to execute larger parallel tasks and improve load balancing between CPUs and accelerators. Additionally, we present our approach to exploit internal parallelism within tasks, by combining two runtime system schedulers: a global runtime system to schedule the main task graph and a local one one to cope with internal task parallelism. We demonstrate the relevance of our approach in the context of the dense Cholesky factorization kernel implemented on top of the StarPU task-based runtime system. We present experimental results showing that our solution outperforms state of the art implementations on two architectures: a modern heterogeneous machine and the Intel Xeon Phi Knights Landing.
- Published
- 2016
26. SPAWN: An Iterative, Potentials-Based, Dynamic Scheduling and Partitioning Tool
- Author
-
Laurent Colombet, Christophe Denoual, Raymond Namyst, Jean-Charles Papin, Centre de Mathématiques et de Leurs Applications (CMLA), École normale supérieure - Cachan (ENS Cachan)-Centre National de la Recherche Scientifique (CNRS), DAM Île-de-France (DAM/DIF), Direction des Applications Militaires (DAM), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA), STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Université de Bordeaux (UB), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, and Papin, Jean-Charles
- Subjects
graph partitioning ,Computer science ,[INFO.INFO-DS]Computer Science [cs]/Data Structures and Algorithms [cs.DS] ,pair potential ,[INFO.INFO-DS] Computer Science [cs]/Data Structures and Algorithms [cs.DS] ,02 engineering and technology ,Dynamic priority scheduling ,Parallel computing ,01 natural sciences ,Theoretical Computer Science ,Scheduling (computing) ,dynamic load-balancing ,0103 physical sciences ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,0202 electrical engineering, electronic engineering, information engineering ,Polygon mesh ,tasks ,010302 applied physics ,Graph partition ,many- core ,Domain decomposition methods ,020202 computer hardware & architecture ,Many-core ,Scalability ,Theory of computation ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Voronoi diagram ,Software ,Simulation ,Information Systems - Abstract
International audience; Many applications of physics modeling use regular meshes on which computations of highly variable cost can occur. Distributing the underlying cells over manycore architec-tures is a critical load balancing step that should increase the period until another step is required. Graph partitioning tools are known to be very effective for such problems, but they exhibit scalability problems as the number of cores and the number of cells increases. We introduce a dynamic task scheduling approach inspired by physical particles interactions. Our method allows cores to virtually move over a 2D/3D mesh of tasks and uses a Voronoi domain decomposition to balance workload among cores. Displacements of cores are the result of force computations using a carefully chosen pair potential. We evaluate our method against graph partitioning tools and existing task schedulers with a representative physical application, and demonstrate the relevance of our approach.
- Published
- 2015
- Full Text
- View/download PDF
27. Automatic OpenCL code generation for multi-device heterogeneous architectures
- Author
-
Raymond Namyst, Christian Parrot, Gaël Thomas, Pei Li, Elisabeth Brunet, Francois Trahay, Département Informatique (INF), Institut Mines-Télécom [Paris] (IMT)-Télécom SudParis (TSP), Services répartis, Architectures, MOdélisation, Validation, Administration des Réseaux (SAMOVAR), Centre National de la Recherche Scientifique (CNRS), Algorithmes, Composants, Modèles Et Services pour l'informatique répartie (ACMES-SAMOVAR), Institut Mines-Télécom [Paris] (IMT)-Télécom SudParis (TSP)-Institut Mines-Télécom [Paris] (IMT)-Télécom SudParis (TSP), STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Département Informatique (TSP - INF), and Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest
- Subjects
020203 distributed computing ,Domain-specific language ,Source lines of code ,Xeon ,OpenCL ,Computer science ,Heterogeneous architectures ,Domain decomposition methods ,02 engineering and technology ,Parallel computing ,Kernel (image processing) ,Multi device ,0202 electrical engineering, electronic engineering, information engineering ,020201 artificial intelligence & image processing ,Code generation ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Xeon Phi ,Accelerators - Abstract
International audience; Using multiple accelerators, such as GPUs or Xeon Phis, is attractive to improve the performance of large data parallel applications and to increase the size of their workloads. However, writing an application for multiple accelerators remains today challenging because going from a single accelerator to multiple ones indeed requires to deal with potentially non-uniform domain decomposition, inter-accelerator data movements, and dynamic load balancing. Writing such code manually is time consuming and error-prone. In this paper, we propose a new programming tool called STEPOCL along with a new domain specific language designed to simplify the development of an application for multiple accelerators. We evaluate both the performance and the usefulness of STEPOCL with three applications and show that: (i) the performance of an application written with STEPOCL scales linearly with the number of accelerators, (ii) the performance of an application written using STEPOCL competes with a handwritten version, (iii) larger workloads run on multiple devices that do not fit in the memory of a single device, (iv) thanks to STEPOCL, the number of lines of code required to write an application for multiple accelerators is roughly divided by ten
- Published
- 2015
- Full Text
- View/download PDF
28. Décomposition de domaines et ordonnancement de tâches pour la simulation en mécanique des fluides
- Author
-
Lasserre, Alice, STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Collège sciences et technologies - Université de Bordeaux, Raymond Namyst(raymond.namyst@labri.fr), Abdou Guermouche(abdou.guermouche@labri.fr), and Jean-Marie Couteyen-Carpaye(jean-marie.couteyen-carpaye@airbus.com)
- Subjects
distribué ,hpc ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,maillage ,cfd ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,équilibrage - Abstract
International audience; Les simulations numériques constituent un moyen précieux pour étudier la mécanique des fluides en modélisant des phénomènes complexes avec une grande précision. Nous nous intéressons aux solveurs explicites « volumes finis » sur des maillages non structurés. Les implémentations parallèles de ces solveurs reposent de plus en plus sur des modèles à base de tâches afin de maximiser l'asynchronisme à l'intérieur des nœuds de calcul et faciliter l'équilibrage de charge. Toutefois, l'exécution parfaitement équilibrée de tels codes reste un défi sur les cas industriels de production. Dans ce mémoire, nous analysons l'origine de périodes d'inactivités observées lors de l'analyse de traces d'exécution et proposons une nouvelle stratégie de partitionnement de maillage dirigée par la classe temporelle des mailles, menant à la génération de graphes de tâches propices à une exécution équilibrée entre les noeuds.
- Published
- 2022
29. Understanding and Guiding the Computing Resource Management in a Runtime Stacking Context
- Author
-
Loussert, Arthur, Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Université de Bordeaux, Raymond Namyst, Marc Pérache, and STAR, ABES
- Subjects
Gestion des Ressources ,Allocation des Ressources ,OpenMP ,Runtime Stacking ,Runtime Mixing ,Resource Allocation ,Parallel Programming ,High-Performance Computing ,Calcul Haute Performance ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Resource Management ,MPI ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Mélange de Modèles de Programmation ,Programmation Parallèle - Abstract
With the advent of multicore and manycore processors as building blocks of HPC supercomputers, many applications shift from relying solely on a distributed programming model (e.g., MPI) to mixing distributed and shared memory models (e.g., MPI+OpenMP). This leads to a better exploitation of shared-memory communications and reduces the overall memory footprint. However, this evolution has a large impact on the software stack as applications’ developers do typically mix several programming models to scale over a large number of multicore nodes while coping with their hierarchical depth. One side effect of this programming approach is runtime stacking: mixing multiple models involve various runtime libraries to be alive at the same time. Dealing with different runtime systems may lead to a large number of execution flows that may not efficiently exploit the underlying resources.We first present a study of runtime stacking. It introduces stacking configurations and categories to describe how stacking can appear in applications. We explore runtime-stacking configurations (spatial and temporal) focusing on thread/process placement on hardware resources from different runtime libraries. We build this taxonomy based on the analysis of state-of-the-art runtime stacking and programming models.We then propose algorithms to detect the misuse of compute resources when running a hybrid parallel application. We have implemented these algorithms inside a dynamic tool, called the Overseer. This tool monitors applications, and outputs resource usage to the user with respect to the application timeline, focusing on overloading and underloading of compute resources.Finally, we propose a second external tool called Overmind, that monitors the thread/process management and (re)maps them to the underlying cores taking into account the hardware topology and the application behavior. By capturing a global view of resource usage the Overmind adapts the process/thread placement, and aims at taking the best decision to enhance the use of each compute node inside a supercomputer. We demonstrate the relevance of our approach and show that our low-overhead implementation is able to achieve good performance even when running with configurations that would have ended up with bad resource usage., Avec l’avènement des processeurs multi-coeur et many-coeur comme bloc de base des supercalculateurs, beaucoup d’applications évoluent. Au lieu de n’utiliser qu’un seul modèle de programmation parallèle à mémoire distribuée (comme MPI), elles se doivent d’ajouter des modèles à mémoire partagée (comme OpenMp). Ces deux types de modèles se retrouvent en cohabitation au sein de l’application. Cela conduit à une meilleure exploitation des communications en mémoire partagée, tout en réduisant l’empreinte mémoire globale des applications. Cependant, cette évolution a un large impact sur la pile logicielle car les développeurs mélangent généralement plusieurs modèles de programmation pour passer à l’échelle sur un grand nombre de nœuds de calcul. Un effet de bord de cette approche de la programmation est l’empilement de modèles (‘runtime stacking’) : mélanger plusieurs modèles implique que plusieurs bibliothèques fonctionnent en même temps. Gérer plusieurs bibliothèques peut mener à un grand nombre de fils d’exécution utilisant les ressources sous-jacentes de manière non optimale.Nous présentons tout d’abord une étude du mélange de modèles de programmation. Elle introduit des configurations et catégories qui décrivent comment le mélange peut apparaitre dans les applications. Nous explorons les configurations spatiales et temporelles de mélange en nous concentrant sur le placement des fils d’exécution, provenant de plusieurs bibliothèques, sur les ressources matérielles. Nous construisons cette taxonomie en nous basant sur l’analyse de l’état de l’art des modèles de programmation et de leurs mélanges.Nous proposons ensuite des algorithmes pour détecter les mauvaises utilisations des ressources de calcul lors de l’exécution d’une application mélangeant plusieurs modèles de programmation. Nous avons implémenté ces algorithmes dans un outil dynamique appelé ‘Overseer’. Cet outil surveille l’application, et produit un rapport présentant l’utilisation des ressources tout au long de l’exécution. Le but de cette analyse est de mettre en lumière la sur- ou sous-utilisation des ressources de calcul.Enfin, nous proposons un second outil appelé ‘Overmind’, dont le but est de surveiller et de gérer le placement des fils d’exécution à la volée. La topologie des ressources des calculs ainsi que le comportement de l’application sont pris en compte pour utiliser au mieux toutes les ressources à disposition. En capturant une vue globale de l’utilisation des ressources, l’Overmind adapte le placement des fils d’exécution, et vise à prendre la meilleure décision pour améliorer l’utilisation des ressources de calcul de chaque nœud du supercalculateur.Nous démontrons la pertinence de notre approche et montrons qu’avec son faible surcout, notre implémentation est capable d’améliorer les performances d’applications, même si celles-ci utilisaient les ressources de calcul de manière non optimale à l’origine.
- Published
- 2019
30. Comprendre et Guider la Gestion des Ressources de Calcul dans un Contexte Multi-Modèles de Programmation
- Author
-
Loussert, Arthur, STatic Optimizations, Runtime Methods (STORM), Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Université de Bordeaux, Raymond Namyst, Marc Pérache [Co-directeur], Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)-Inria Bordeaux - Sud-Ouest, Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), and Marc Pérache
- Subjects
Gestion des Ressources ,Allocation des Ressources ,OpenMP ,Runtime Stacking ,Runtime Mixing ,Resource Allocation ,Parallel Programming ,High-Performance Computing ,Calcul Haute Performance ,Resource Management ,MPI ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Programmation Parallèle ,Mélange de Modèles de Programmation - Abstract
With the advent of multicore and manycore processors as building blocks of HPC supercomputers, many applications shift from relying solely on a distributed programming model (e.g., MPI) to mixing distributed and shared memory models (e.g., MPI+OpenMP). This leads to a better exploitation of shared-memory communications and reduces the overall memory footprint. However, this evolution has a large impact on the software stack as applications’ developers do typically mix several programming models to scale over a large number of multicore nodes while coping with their hierarchical depth. One side effect of this programming approach is runtime stacking: mixing multiple models involve various runtime libraries to be alive at the same time. Dealing with different runtime systems may lead to a large number of execution flows that may not efficiently exploit the underlying resources.We first present a study of runtime stacking. It introduces stacking configurations and categories to describe how stacking can appear in applications. We explore runtime-stacking configurations (spatial and temporal) focusing on thread/process placement on hardware resources from different runtime libraries. We build this taxonomy based on the analysis of state-of-the-art runtime stacking and programming models.We then propose algorithms to detect the misuse of compute resources when running a hybrid parallel application. We have implemented these algorithms inside a dynamic tool, called the Overseer. This tool monitors applications, and outputs resource usage to the user with respect to the application timeline, focusing on overloading and underloading of compute resources.Finally, we propose a second external tool called Overmind, that monitors the thread/process management and (re)maps them to the underlying cores taking into account the hardware topology and the application behavior. By capturing a global view of resource usage the Overmind adapts the process/thread placement, and aims at taking the best decision to enhance the use of each compute node inside a supercomputer. We demonstrate the relevance of our approach and show that our low-overhead implementation is able to achieve good performance even when running with configurations that would have ended up with bad resource usage.; Avec l’avènement des processeurs multi-coeur et many-coeur comme bloc de base des supercalculateurs, beaucoup d’applications évoluent. Au lieu de n’utiliser qu’un seul modèle de programmation parallèle à mémoire distribuée (comme MPI), elles se doivent d’ajouter des modèles à mémoire partagée (comme OpenMp). Ces deux types de modèles se retrouvent en cohabitation au sein de l’application. Cela conduit à une meilleure exploitation des communications en mémoire partagée, tout en réduisant l’empreinte mémoire globale des applications. Cependant, cette évolution a un large impact sur la pile logicielle car les développeurs mélangent généralement plusieurs modèles de programmation pour passer à l’échelle sur un grand nombre de nœuds de calcul. Un effet de bord de cette approche de la programmation est l’empilement de modèles (‘runtime stacking’) : mélanger plusieurs modèles implique que plusieurs bibliothèques fonctionnent en même temps. Gérer plusieurs bibliothèques peut mener à un grand nombre de fils d’exécution utilisant les ressources sous-jacentes de manière non optimale.Nous présentons tout d’abord une étude du mélange de modèles de programmation. Elle introduit des configurations et catégories qui décrivent comment le mélange peut apparaitre dans les applications. Nous explorons les configurations spatiales et temporelles de mélange en nous concentrant sur le placement des fils d’exécution, provenant de plusieurs bibliothèques, sur les ressources matérielles. Nous construisons cette taxonomie en nous basant sur l’analyse de l’état de l’art des modèles de programmation et de leurs mélanges.Nous proposons ensuite des algorithmes pour détecter les mauvaises utilisations des ressources de calcul lors de l’exécution d’une application mélangeant plusieurs modèles de programmation. Nous avons implémenté ces algorithmes dans un outil dynamique appelé ‘Overseer’. Cet outil surveille l’application, et produit un rapport présentant l’utilisation des ressources tout au long de l’exécution. Le but de cette analyse est de mettre en lumière la sur- ou sous-utilisation des ressources de calcul.Enfin, nous proposons un second outil appelé ‘Overmind’, dont le but est de surveiller et de gérer le placement des fils d’exécution à la volée. La topologie des ressources des calculs ainsi que le comportement de l’application sont pris en compte pour utiliser au mieux toutes les ressources à disposition. En capturant une vue globale de l’utilisation des ressources, l’Overmind adapte le placement des fils d’exécution, et vise à prendre la meilleure décision pour améliorer l’utilisation des ressources de calcul de chaque nœud du supercalculateur.Nous démontrons la pertinence de notre approche et montrons qu’avec son faible surcout, notre implémentation est capable d’améliorer les performances d’applications, même si celles-ci utilisaient les ressources de calcul de manière non optimale à l’origine.
- Published
- 2019
31. Équilibrage dynamique de charge sur supercalculateur exaflopique appliqué à la dynamique moléculaire
- Author
-
Prat, Raphaël, Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Université de Bordeaux, and Raymond Namyst
- Subjects
Maillage adaptatif ,ExaStamp ,Hpc ,Graphe de dépendances de tâches ,Amr ,OpenMP ,[INFO.INFO-NA]Computer Science [cs]/Numerical Analysis [cs.NA] ,Task dependency graphe ,Adaptive mesh refinement - Abstract
In the context of classical molecular dynamics applied to condensed matter physics, CEA researchers are studying complex phenomena at the atomic scale. To do this, it is essential to continuously optimize the molecular dynamics codes of recent massively parallel supercomputers to enable physicists to exploit their capacity to numerically reproduce more and more complex physical phenomena. Nevertheless, simulation codes must be adapted to balance the load between the cores of supercomputers.To do this, in this thesis we propose to incorporate the Adaptive Mesh Refinement method into the ExaSTAMP molecular dynamics code. The main objective is to optimize the computation loop performing the calculation of particle interactions using multi-threaded and vectorizable data structures. The structure also reduces the memory footprint of the simulation. The design of the AMR is guided by the need for load balancing and adaptability raised by sets of particles moving dynamically over time.The results of this thesis show that using an AMR structure in ExaSTAMP improves its performance. In particular, the AMR makes it possible to execute 1.31 times faster than before the simulation of a violent shock causing a tin microjet of 1 billion 249 million atoms on 256 KNLs. In addition, simulations that were not conceivable so far can be carried out thanks to AMR, such as the impact of a tin nanodroplet on a solid surface with more than 500 million atoms.; Dans le contexte de la dynamique moléculaire classique appliquée à la physique de la matière condensée, les chercheurs du CEA étudient des phénomènes physiques à une échelle atomique. Pour cela, il est primordial d'optimiser continuellement les codes de dynamique moléculaire sur les dernières architectures de supercalculateurs massivement parallèles pour permettre aux physiciens d'exploiter la puissance de calcul pour reproduire numériquement des phénomènes physiques toujours plus complexes. Cependant, les codes de simulations doivent être adaptés afin d'équilibrer la répartition de la charge de calcul entre les cœurs d'un supercalculateur.Pour ce faire, dans cette thèse nous proposons d'incorporer la méthode de raffinement de maillage adaptatif dans le code de dynamique moléculaire ExaSTAMP. L'objectif est principalement d'optimiser la boucle de calcul effectuant le calcul des interactions entre particules grâce à des structures de données multi-threading et vectorisables. La structure permet également de réduire l'empreinte mémoire de la simulation. La conception de l’AMR est guidée par le besoin d'équilibrage de charge et d'adaptabilité soulevé par des ensembles de particules se déplaçant très rapidement au cours du temps.Les résultats de cette thèse montrent que l'utilisation d'une structure AMR dans ExaSTAMP permet d'améliorer les performances de celui-ci. L'AMR permet notamment de multiplier par 1.31 la vitesse d'exécution de la simulation d'un choc violent entraînant un micro-jet d'étain de 1 milliard 249 millions d'atomes sur 256 KNLs. De plus, l'AMR permet de réaliser des simulations qui jusqu'à présent n'étaient pas concevables comme l'impact d'une nano-goutte d'étain sur une surface solide avec plus 500 millions d'atomes.
- Published
- 2019
32. Dynamic load balancing on exaflop supercomputer applied to molecular dynamics
- Author
-
Prat, Raphaël, STAR, ABES, Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Université de Bordeaux, and Raymond Namyst
- Subjects
Maillage adaptatif ,ExaStamp ,[INFO.INFO-NA] Computer Science [cs]/Numerical Analysis [cs.NA] ,Hpc ,Graphe de dépendances de tâches ,OpenMP ,Amr ,[INFO.INFO-NA]Computer Science [cs]/Numerical Analysis [cs.NA] ,Task dependency graphe ,Adaptive mesh refinement - Abstract
In the context of classical molecular dynamics applied to condensed matter physics, CEA researchers are studying complex phenomena at the atomic scale. To do this, it is essential to continuously optimize the molecular dynamics codes of recent massively parallel supercomputers to enable physicists to exploit their capacity to numerically reproduce more and more complex physical phenomena. Nevertheless, simulation codes must be adapted to balance the load between the cores of supercomputers.To do this, in this thesis we propose to incorporate the Adaptive Mesh Refinement method into the ExaSTAMP molecular dynamics code. The main objective is to optimize the computation loop performing the calculation of particle interactions using multi-threaded and vectorizable data structures. The structure also reduces the memory footprint of the simulation. The design of the AMR is guided by the need for load balancing and adaptability raised by sets of particles moving dynamically over time.The results of this thesis show that using an AMR structure in ExaSTAMP improves its performance. In particular, the AMR makes it possible to execute 1.31 times faster than before the simulation of a violent shock causing a tin microjet of 1 billion 249 million atoms on 256 KNLs. In addition, simulations that were not conceivable so far can be carried out thanks to AMR, such as the impact of a tin nanodroplet on a solid surface with more than 500 million atoms., Dans le contexte de la dynamique moléculaire classique appliquée à la physique de la matière condensée, les chercheurs du CEA étudient des phénomènes physiques à une échelle atomique. Pour cela, il est primordial d'optimiser continuellement les codes de dynamique moléculaire sur les dernières architectures de supercalculateurs massivement parallèles pour permettre aux physiciens d'exploiter la puissance de calcul pour reproduire numériquement des phénomènes physiques toujours plus complexes. Cependant, les codes de simulations doivent être adaptés afin d'équilibrer la répartition de la charge de calcul entre les cœurs d'un supercalculateur.Pour ce faire, dans cette thèse nous proposons d'incorporer la méthode de raffinement de maillage adaptatif dans le code de dynamique moléculaire ExaSTAMP. L'objectif est principalement d'optimiser la boucle de calcul effectuant le calcul des interactions entre particules grâce à des structures de données multi-threading et vectorisables. La structure permet également de réduire l'empreinte mémoire de la simulation. La conception de l’AMR est guidée par le besoin d'équilibrage de charge et d'adaptabilité soulevé par des ensembles de particules se déplaçant très rapidement au cours du temps.Les résultats de cette thèse montrent que l'utilisation d'une structure AMR dans ExaSTAMP permet d'améliorer les performances de celui-ci. L'AMR permet notamment de multiplier par 1.31 la vitesse d'exécution de la simulation d'un choc violent entraînant un micro-jet d'étain de 1 milliard 249 millions d'atomes sur 256 KNLs. De plus, l'AMR permet de réaliser des simulations qui jusqu'à présent n'étaient pas concevables comme l'impact d'une nano-goutte d'étain sur une surface solide avec plus 500 millions d'atomes.
- Published
- 2019
33. Passage à l'echelle d'un support d'exécution à base de tâches pour l'algèbre linéaire dense
- Author
-
Sergent, Marc, Efficient runtime systems for parallel architectures (RUNTIME), Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS), Université de Bordeaux, Raymond Namyst, and David Goudin
- Subjects
Calcul distribué ,Supports d’exécution ,[INFO.INFO-OH]Computer Science [cs]/Other [cs.OH] ,Calcul haute performance ,Run-time systems ,Parallel programming models ,Modèles de programmation parallèle ,High performance computing ,Programmation par tâches ,Distributed computing ,Task-based programming - Abstract
The ever-increasing supercomputer architectural complexity emphasizes the need for high-level parallel programming paradigms to design efficient, scalable and portable scientific applications. Among such paradigms, the task-based programming model abstracts away much of the architecture complexity by representing an application as a Directed Acyclic Graph (DAG) of tasks. Among them, the Sequential-Task-Flow (STF) model decouples the task submission step, sequential, from the parallel task execution step. While this model allows for further optimizations on the DAG of tasks at submission time, there is a key concern about the performance hindrance of sequential task submission when scaling. This thesis’ work focuses on studying the scalability of the STF-based StarPU runtime system (developed at Inria Bordeaux in the STORM team) for large scale 3D simulations of the CEA which uses dense linear algebra solvers. To that end, we collaborated with the HiePACS team of Inria Bordeaux on the Chameleon software, which is a collection of linear algebra solvers on top of task-based runtime systems, to produce an efficient and scalable dense linear algebra solver on top of StarPU up to 3,000 cores and 288 GPUs of CEA-DAM’s TERA-100 cluster.; La complexification des architectures matérielles pousse vers l’utilisation de paradigmes de programmation de haut niveau pour concevoir des applications scientifiques efficaces, portables et qui passent à l’échelle. Parmi ces paradigmes, la programmation par tâches permet d’abstraire la complexité des machines en représentant les applications comme des graphes de tâches orientés acycliques (DAG). En particulier, le modèle de programmation par tâches soumises séquentiellement (STF) permet de découpler la phase de soumission des tâches, séquentielle, de la phase d’exécution parallèle des tâches. Même si ce modèle permet des optimisations supplémentaires sur le graphe de tâches au moment de la soumission, il y a une préoccupation majeure sur la limite que la soumission séquentielle des tâches peut imposer aux performances de l’application lors du passage à l’échelle. Cette thèse se concentre sur l’étude du passage à l’échelle du support d’exécution StarPU (développé à Inria Bordeaux dans l’équipe STORM), qui implémente le modèle STF, dans le but d’optimiser les performances d’un solveur d’algèbre linéaire dense utilisé par le CEA pour faire de grandes simulations 3D. Nous avons collaboré avec l’équipe HiePACS d’Inria Bordeaux sur le logiciel Chameleon, qui est une collection de solveurs d’algèbre linéaire portés sur supports d’exécution à base de tâches, afin de produire un solveur d’algèbre linéaire dense sur StarPU efficace et qui passe à l’échelle jusqu’à 3 000 coeurs de calcul et 288 accélérateurs de type GPU du supercalculateur TERA-100 du CEA-DAM.
- Published
- 2016
34. Scalability of a task-based runtime system for dense linear algebra applications
- Author
-
SERGENT, Marc, Efficient runtime systems for parallel architectures (RUNTIME), Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS), Université de Bordeaux, Raymond Namyst, David Goudin, Namyst, Raymond, Goudin, David, Aumage, Olivier, Latu, Guillaume, Thibault, Samuel, Amestoy, Patrick, Manneback, Pierre, and Méhaut, Jean-François
- Subjects
Calcul distribué ,Supports d’exécution ,[INFO.INFO-OH]Computer Science [cs]/Other [cs.OH] ,Calcul haute performance ,Run-time systems ,Parallel programming models ,Modèles de programmation parallèle ,High performance computing ,Programmation par tâches ,Distributed computing ,Task-based programming - Abstract
The ever-increasing supercomputer architectural complexity emphasizes the need for high-level parallel programming paradigms to design efficient, scalable and portable scientific applications. Among such paradigms, the task-based programming model abstracts away much of the architecture complexity by representing an application as a Directed Acyclic Graph (DAG) of tasks. Among them, the Sequential-Task-Flow (STF) model decouples the task submission step, sequential, from the parallel task execution step. While this model allows for further optimizations on the DAG of tasks at submission time, there is a key concern about the performance hindrance of sequential task submission when scaling. This thesis’ work focuses on studying the scalability of the STF-based StarPU runtime system (developed at Inria Bordeaux in the STORM team) for large scale 3D simulations of the CEA which uses dense linear algebra solvers. To that end, we collaborated with the HiePACS team of Inria Bordeaux on the Chameleon software, which is a collection of linear algebra solvers on top of task-based runtime systems, to produce an efficient and scalable dense linear algebra solver on top of StarPU up to 3,000 cores and 288 GPUs of CEA-DAM’s TERA-100 cluster.; La complexification des architectures matérielles pousse vers l’utilisation de paradigmes de programmation de haut niveau pour concevoir des applications scientifiques efficaces, portables et qui passent à l’échelle. Parmi ces paradigmes, la programmation par tâches permet d’abstraire la complexité des machines en représentant les applications comme des graphes de tâches orientés acycliques (DAG). En particulier, le modèle de programmation par tâches soumises séquentiellement (STF) permet de découpler la phase de soumission des tâches, séquentielle, de la phase d’exécution parallèle des tâches. Même si ce modèle permet des optimisations supplémentaires sur le graphe de tâches au moment de la soumission, il y a une préoccupation majeure sur la limite que la soumission séquentielle des tâches peut imposer aux performances de l’application lors du passage à l’échelle. Cette thèse se concentre sur l’étude du passage à l’échelle du support d’exécution StarPU (développé à Inria Bordeaux dans l’équipe STORM), qui implémente le modèle STF, dans le but d’optimiser les performances d’un solveur d’algèbre linéaire dense utilisé par le CEA pour faire de grandes simulations 3D. Nous avons collaboré avec l’équipe HiePACS d’Inria Bordeaux sur le logiciel Chameleon, qui est une collection de solveurs d’algèbre linéaire portés sur supports d’exécution à base de tâches, afin de produire un solveur d’algèbre linéaire dense sur StarPU efficace et qui passe à l’échelle jusqu’à 3 000 coeurs de calcul et 288 accélérateurs de type GPU du supercalculateur TERA-100 du CEA-DAM.
- Published
- 2016
35. Système unifié de transformation de code et d'éxécution pour un passage aux architectures multi-coeurs hétérogènes
- Author
-
LI, Pei, Efficient runtime systems for parallel architectures (RUNTIME), Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS), Université de Bordeaux, Raymond Namyst, and Elisabeth Brunet
- Subjects
Equilibrage de charge ,High-Performance Computing ,Calcul Haute Performance ,Parallélisme ,OpenCL ,Génération de code ,Heterogeneous Architectures ,[INFO.INFO-OH]Computer Science [cs]/Other [cs.OH] ,Parallelism ,Architectures hétérogènes - Abstract
Heterogeneous architectures have been widely used in the domain of high performance computing. However developing applications on heterogeneous architectures is time consuming and error-prone because going from a single accelerator to multiple ones indeed requires to deal with potentially non-uniform domain decomposition, inter-accelerator data movements, and dynamic load balancing. The aim of this thesis is to propose a solution of parallel programming for novice developers, to ease the complex coding process and guarantee the quality of code. We lighted and analysed the shortcomings of existing solutions and proposed a new programming tool called STEPOCL along with a new domain specific language designed to simplify the development of an application for heterogeneous architectures. We evaluated both the performance and the usefulness of STEPOCL. The result show that: (i) the performance of an application written with STEPOCL scales linearly with the number of accelerators, (ii) the performance of an application written using STEPOCL competes with an handwritten version, (iii) larger workloads run on multiple devices that do not fit in the memory of a single device, (iv) thanks to STEPOCL, the number of lines of code required to write an application for multiple accelerators is roughly divided by ten.; Architectures hétérogènes sont largement utilisées dans le domaine de calcul haute performance. Cependant, le développement d'applications sur des architectures hétérogènes est indéniablement fastidieuse et sujette à erreur pour un programmeur même expérimenté. Pour passer une application aux architectures multi-cœurs hétérogènes, les développeurs doivent décomposer les données de l'entrée, gérer les échanges de valeur intermédiaire au moment d’exécution et garantir l'équilibre de charge de système. L'objectif de cette thèse est de proposer une solution de programmation parallèle pour les programmeurs novices, qui permet de faciliter le processus de codage et garantir la qualité de code. Nous avons comparé et analysé les défauts de solutions existantes, puis nous proposons un nouvel outil de programmation STEPOCL avec un nouveau langage de domaine spécifique qui est conçu pour simplifier la programmation sur les architectures hétérogènes. Nous avons évalué la performance de STEPOCL sur trois cas d'application classiques : un stencil 2D, une multiplication de matrices et un problème à N corps. Le résultat montre que : (i) avec l'aide de STEPOCL, la performance d'application varie linéairement selon le nombre d'accélérateurs, (ii) la performance de code généré par STEPOCL est comparable à celle de la version manuscrite. (iii) les charges de travail, qui sont trop grandes pour la mémoire d'un seul accélérateur, peuvent être exécutées en utilisant plusieurs accélérateurs. (iv) grâce à STEPOCL, le nombre de lignes de code manuscrite est considérablement réduit.
- Published
- 2015
36. Évaluation et optimisation de performance énergétique des centres de calcul
- Author
-
Da Costa, Georges, Système d’exploitation, systèmes répartis, de l’intergiciel à l’architecture (IRIT-SEPIA), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Université Toulouse III - Paul Sabatier (UT3), Université Paul Sabatier (Toulouse 3), and Raymond Namyst
- Subjects
Performance Evaluation ,Large scale distributed systems ,Systèmes distribués à grande échelle ,Energy-aware Scheduling ,Evaluation de Performances ,Cloud computing ,Grid5000 ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] - Abstract
Cette habilitation vise à répondre à la question "Comment gérerefficacement un centre de calcul" en fournissant les outils théoriquesmais aussi pratiques nécessaires. Les centres de calculs sont au coeurde la vie d'une partie croissante de la population sans pour autant êtrevisibles, de par** la prédominance des services en ligne. Leurconsommation électrique est donc un enjeu d'actualité primordial, et lesera encore plus dans le futur prévisible. Gérer efficacement permetdonc d'optimiser la qualité de service tout en réduisant leurconsommation électrique. Ces travaux montrent les différents outilsnécessaires : Ceux liés à la mesure, autant techniquement que de par**la définition des métriques. Ensuite sont explorées les méthodes demodélisation de tels problèmes, ainsi que les techniques de résolutiondirectes ou approchées. L'étape suivante consiste à étudier différentesheuristiques permettant une résolution approchée mais rapide du problèmede la gestion d'un centre de calcul. Diverses validations, autantexpérimentales que basées sur des simulateurs améliorés serviront desupport à ces démonstrations. Une ouverture vers le futur, grâce aux"datacenter in a box" distribués, hétérogènes, coopératifs etmulti-échelles (spatiales et temporelles) conclue ces travaux.
- Published
- 2015
37. Molecular Dynamics for Exascale Supercomputers
- Author
-
Cieren, Emmanuel, STAR, ABES, Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Université de Bordeaux, Raymond Namyst, and Laurent Colombet
- Subjects
Dynamique Moléculaire ,Vectorisation ,Calcul Intensif ,High Performance Computing ,Message Passing Interface ,Threads ,Molecular Dynamics ,Tbb ,Manycore ,Xeon Phi ,Multi-Cœurs ,Vectorization ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Load-Balancing ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Équilibrage de charge ,C++ - Abstract
In the exascale race, supercomputer architectures are evolving towards massively multicore nodes with hierarchical memory structures and equipped with larger vectorization registers. These trends tend to make MPI-only applications less effective, and now require programmers to explicitly manage low-level elements to get decent performance.In the context of Molecular Dynamics (MD) applied to condensed matter physics, the need for a better understanding of materials behaviour under extreme conditions involves simulations of ever larger systems, on tens of thousands of cores. This will put molecular dynamics codes among software that are very likely to meet serious difficulties when it comes to fully exploit the performance of next generation processors.This thesis proposes the design and implementation of a high-performance, flexible and scalable framework dedicated to the simulation of large scale MD systems on future supercomputers. We managed to separate numerical modules from different expressions of parallelism, allowing developers not to care about optimizations and still obtain high levels of performance. Our architecture is organized in three levels of parallelism: domain decomposition using MPI, thread parallelization within each domain, and explicit vectorization. We also included a dynamic load balancing capability in order to equally share the workload among domains.Results on simple tests show excellent sequential performance and a quasi linear speedup on several thousands of cores on various architectures. When applied to production simulations, we report an acceleration up to a factor 30 compared to the code previously used by CEA’s researchers., Dans la course vers l’exascale, les architectures des supercalculateurs évoluent vers des nœuds massivement multicœurs, sur lesquels les accès mémoire sont non-uniformes et les registres de vectorisation toujours plus grands. Ces évolutions entraînent une baisse de l’efficacité des applications homogènes (MPI simple), et imposent aux développeurs l’utilisation de fonctionnalités de bas-niveau afin d’obtenir de bonnes performances.Dans le contexte de la dynamique moléculaire (DM) appliqué à la physique de la matière condensée, les études du comportement des matériaux dans des conditions extrêmes requièrent la simulation de systèmes toujours plus grands avec une physique de plus en plus complexe. L’adaptation des codes de DM aux architectures exaflopiques est donc un enjeu essentiel.Cette thèse propose la conception et l’implémentation d’une plateforme dédiée à la simulation de très grands systèmes de DM sur les futurs supercalculateurs. Notre architecture s’organise autour de trois niveaux de parallélisme: décomposition de domaine avec MPI, du multithreading massif sur chaque domaine et un système de vectorisation explicite. Nous avons également inclus une capacité d’équilibrage dynamique de charge de calcul. La conception orienté objet a été particulièrement étudiée afin de préserver un niveau de programmation utilisable par des physiciens sans altérer les performances.Les premiers résultats montrent d’excellentes performances séquentielles, ainsi qu’une accélération quasi-linéaire sur plusieurs dizaines de milliers de cœurs. En production, nous constatons une accélération jusqu’à un facteur 30 par rapport au code utilisé actuellement par les chercheurs du CEA.
- Published
- 2015
38. Virtualisation in HPC context
- Author
-
Capra, Antoine, STAR, ABES, Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), Université de Bordeaux, and Raymond Namyst
- Subjects
[INFO.INFO-NA] Computer Science [cs]/Numerical Analysis [cs.NA] ,High Performance Computing ,Calcul haute performance ,OpenMP ,MPI ,[INFO.INFO-NA]Computer Science [cs]/Numerical Analysis [cs.NA] ,Virtualisation - Abstract
To meet the growing needs of the digital simulation and remain at the forefront of technology, supercomputers must be constantly improved. These improvements can be hardware or software order. This forces the application to adapt to a new programming environment throughout its development. It then becomes necessary to raise the question of the sustainability of applications and portability from one machine to another. The use of virtual machines may be a first response to this need for sustaining stabilizing programming environments. With virtualization, applications can be developed in a fixed environment, without being directly impacted by the current environment on a physical machine. However, the additional abstraction induced by virtual machines in practice leads to a loss of performance. We propose in this thesis a set of tools and techniques to enable the use of virtual machines in HPC context. First we show that it is possible to optimize the operation of a hypervisor to respond accurately to the constraints of HPC that are : the placement of implementing son and memory data locality. Then, based on this, we have proposed a resource partitioning service from a compute node through virtual machines. Finally, to expand our work to use for MPI applications, we studied the network solutions and performance of a virtual machine., Afin de répondre aux besoins croissants de la simulation numérique et de rester à la pointe de la technologie, les supercalculateurs doivent d’être constamment améliorés. Ces améliorations peuvent être d’ordre matériel ou logiciel. Cela force les applications à s’adapter à un nouvel environnement de programmation au fil de son développement. Il devient alors nécessaire de se poser la question de la pérennité des applications et de leur portabilité d’une machine à une autre. L’utilisation de machines virtuelles peut être une première réponse à ce besoin de pérennisation en stabilisant les environnements de programmation. Grâce à la virtualisation, une application peut être développée au sein d’un environnement figé, sans être directement impactée par l’environnement présent sur une machine physique. Pour autant, l’abstraction supplémentaire induite par les machines virtuelles entraine en pratique une perte de performance. Nous proposons dans cette thèse un ensemble d’outils et de techniques afin de permettre l’utilisation de machines virtuelles en contexte HPC. Tout d’abord nous montrons qu’il est possible d’optimiser le fonctionnement d’un hyperviseur afin de répondre le plus fidèlement aux contraintes du HPC que sont : le placement des fils d’exécution et la localité mémoire des données. Puis en s’appuyant sur ce résultat, nous avons proposé un service de partitionnement des ressources d’un noeud de calcul par le biais des machines virtuelles. Enfin, pour étendre nos travaux à une utilisation pour des applications MPI, nous avons étudié les solutions et performances réseau d’une machine virtuelle.
- Published
- 2015
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.