DESCRIPTION :
The particular issue that this PhD shall tackle is to provide a model to composose code develop accordingly to various HPC programming paradigms. Software composition is an old [NATO] but still key technique [SZY] to develop complex applications by being able to divde them into manageable code. Though it is common in traditionnal sequential programming, composition parallel codes is still challenging. Previous work demonstrated that composition within a parallel programming is possible and do not impact performance [CCA, HLCM, Comet]. However, we are lacking a model to compose distinct paradigms without mentioning the specific problem of runtime cohabitation in an HPC context.
A particular target of this work could be the Multi-Level Intermediate Representation (MLIR) framework [MLIR], aiming to harness MLIR not only as a unifying compilation target for heterogeneous input Domain Specific Languages (DSLs) but also as a semantic backbone for expressing data flow, and reasoning about scheduling.
Bibliography:
* [NATO] Mcllroy, M.D., Mass Produced Software Components. Proceedings of NATO Software Engineering Conference, Garmisch, Germany, October 1968, 138-155.
* [SZY] Clemens Szyperski. Component Software : Beyond Object-Oriented Programming. Addison-Wesley Longman Publishing Co., Inc., 2002.
* [CCA] B. A. Allan, R. Armstrong, D. E. Bernholdt, and al. A component architecture for high-performance scientific computing. International Journal of High PerformanceComputing Applications, 20(2) :163-202, 2006.
* [HLCM] Julien Bigot. Du support générique d'opérateurs de composition dans les modèles de composants logiciels, application au calcul scientifique. PhD thesis, INSA de Rennes (France), 2010.
* [COMET] Jérôme Richard. Conception d'un modèle de composants logiciels avec ordonnancement de tâches pour les architectures parallèles multi-coeurs, application au code Gysela. PhD Thesis, Université de Lyon, December 2017.
* [MLIR] C. Lattner et al., "MLIR: Scaling Compiler Infrastructure for Domain Specific Computation," 2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO), Seoul, Korea (South), 2021, pp. 2-14, doi: 10.1109/CGO51591.2021.9370308.
Principales activités
* Study the state-of-the-art of parallel paradigms, parallel programming models, and composition models
* Analyse challenges for incomming parallel applications
* Propose a model that supports composition of of selected programming principles
* Implement a proof of concept (POC)
* Conduct evaluation of POC on selected use cases
Code d'emploi : Thésard (h/f)
Temps partiel / Temps plein : Plein temps
Type de contrat : Contrat à durée indéterminée (CDI)
Compétences : C ++ (Langage de Programmation), Génération de Code, Programmation Informatique, Développement Logiciel Orienté Objet, Informatique Scientifique, Conception et Développement de Logiciel, Flux de Données, Comet Programming, Axé sur le Succès, Architecture, Organisation d'Événements, Gestion des Infrastructures, Paradigmes, Analyse des Besoins, Sémantique, Gestion de Planning, Publication / Edition, Preuve du Concept
Courriel :
christian.perez@inria.fr
Téléphone :
0139635511
Type d'annonceur : Employeur direct