Définition de modèles d'intégration des plateformes de calcul quantique dans un support d'exécution à base de tâches pour assurer la portabilité des performances d'applications hybrides

Inria Talence

Talence

On-site

EUR 7,800 - 10,000

Part time

23 hours ago
Be an early applicant

A complete application in a minute

Tailored resume and cover letter, ready to send.

Get past ATS filters

Job summary

Inria Talence recherche un stagiaire pour développer et expérimenter des modèles de programmation et d’exécution sur des plateformes HPC hybrides incluant le calcul quantique. Le stage implique la modélisation des performances et des portages entre CPU et accélérateurs, avec des validations sur simulateur et plateformes réelles.

Compétences en C sous Unix, programmation parallèle et expérience avec des accélérateurs (GPU) sont requises. Communication et travail en équipe attendues.

Qualifications

  • Maîtrise du développement en langage C sur Unix.
  • Programmation parallèle et utilisation d'accélérateurs (GPU).
  • Notions d'ordonnancement et d'évaluation de performances.

Responsibilities

  • Définition et implémentation de modèles de programmation et d'exécution pour plateformes Calcul Intensif + Quantique.
  • Définition de stratégies d'ordonnancements hybrides.
  • Expérimentations et analyse en simulation.
  • Modélisation des performances et portabilité des performances.

Skills

C programming
Unix
Programmation parallèle
GPU
Calcul intensif

Tools

StarPU

Job description

Context
Contexte

Ce stage s'inscrit dans le cadre d'une collaboration naissante et appelée à se renforcer entre Inria et l'École de Technologie Supérieure du Québec (ÉTS), à Montréal (Canada). Des ordinateurs quantiques commencent, depuis quelques années, à être mis à la disposition de la communauté informatique, notamment via leur installation dans des centres de calcul scientifique à proximité de plateformes de calcul intensif. Cette proximité offre l'opportunité d'intégrer l'utilisation d'ordinateurs quantiques dans des applications. En effet, les unités de calcul quantique (Quantum Processing Units / QPU) ne sont pas des ordinateurs polyvalents : elles ne peuvent effectuer que certains types de calculs et ne sont efficaces que pour un sous-ensemble de ceux-ci. Par conséquent, elles sont plutôt considérées comme des accélérateurs spécialisés: une application utilisatrice potentielle suivrait un flot d'exécution classique et déléguerait sélectivement certains traitements au QPU lorsque cela s'avèrerait bénéfique. Si les besoins paraissent similaires à la problématique rencontrée précédemment par l'adoption des processeurs graphiques (GPUs) pour le calcul généraliste, les spécificités des unités quantiques ne permettent pas de calquer simplement les approches adoptées pour les GPUs. Le temps de latence pour un traitement délocalisé sur QPU est très largement plus élevé que sur un accélérateur classique ou que pour une communication entre CPUs. Par ailleurs, cette latence est potentiellement variable en raison des erreurs inhérentes aux technologies de calcul quantique contemporaines. Enfin, les QPUs sont actuellement des plateformes distinctes et autonomes, avec un gestionnaire de jobs distinct de celui des plateformes de calcul classiques. Le modèle d'utilisation de ces QPUs est donc faiblement couplé et fortement asynchrone, ce qui rend leur intégration dans des applications difficile. Il est donc nécessaire de construire les modèles de programmation et d'exécution adaptés, permettant d'exprimer les traitements potentiellement délocalisables sur QPUs, d'estimer à l'exécution le bénéfice du déport d'un calcul sur une unité quantique par rapport à une alternative classique, et ainsi d'ordonnancer dynamiquement l'application sur une plateforme hybride classique+QPU, tout en absorbant les conséquences du fort découplage et en recouvrant de manière automatisée la latence élevée des QPUs par des traitements classiques. La finalité du stage est de définir, expérimenter et valider une première esquisses de ces modèles de programmation et d'exécution. Un déplacement à l'ÉTS est envisagé durant le stage, dans le cadre de cette collaboration.

Assignment
Mission

Le support d'exécution à base de tâches StarPU possède la capacité d'effectuer l'ordonnancement de tâches issues d'applications de calcul intensif sur des unités de calcul hétérogènes: CPUs, FPGAs, GPUs. Les services qu'il propose permettent de modéliser les performances de tâches sur ces unités variées et ensuite de les ordonnancer sur les unités les plus appropriées, tout en assurant les transferts de données nécessaires de façon transparente. L'objectif du stage est d'utiliser StarPU comme fondation pour développer un modèle de programmation et un modèle d'exécution adaptés à l'intégration d'unités de type QPU parmi les ressources de calcul hétérogènes mises à disposition des applications de calcul intensif. Le défi sera la prise en compte efficace des spécificités des architectures quantiques dans cette entreprise, de manière à offrir une puissance de calcul agrégée accrue aux applications. Au-delà de l'efficacité, le défi est renforcé par la grande diversité des technologies de calcul intensif concurrentes. Cette diversité représente un risque pour les applications: optimiser une application pour un type de technologie représente un investissement de développement significatif, dont le fruit peut être perdu lors du passage à une technologie différente. L'enjeu sera donc de concevoir les modèles de programmation et d'exécution de façon à offrir la portabilité des performances aux applications cibles, c'est-à-dire leur permettre de fonctionner efficacement sur un assortiment de technologies quantiques, avec peu ou pas de modifications du code applicatif. Les modèles proposés seront testés tout d'abord en simulation, en s'appuyant sur les travaux de l'ÉTS basés sur le logiciel SimGrid, puis en expérimentés et validés en situation réelle sur des plateformes telles que celles proposées par Calcul Québec au Canada et GENCI en France.

Main activities
Principales activités
  • Définition et implémentation de modèles de programmation et d'exécution pour plateformes Calcul Intensif + Quantique.
  • Définition de stratégies d'ordonnancements hybrides.
  • Expérimentations et analyse en simulation.
  • Modélisation des performances et mise en œuvre de la portabilité des performances.
  • Expérimentations et analyse sur plateformes hybrides réelles.
Activités complémentaires
  • Participation active à une collaboration internationale
  • Communication scientifique et présentations des travaux et résultats
  • Coopération et intégration avec les travaux des autres participants au projet.
Skills
Compétences techniques et niveau requis
  • Maîtrise du developpement en langage C, en environnement Unix.
  • Maîtrise de la programmation parallèle et distribuée.
  • Notions d'optimisation, ordonnancement, et d'évaluation de performances.
  • Expérience pratique de l'utilisation de plateformes de calcul intensif.
  • Expérience pratique en programmation d'accélérateurs / GPU.
Langues

Anglais courant, écrit et oral

Compétences relationnelles
  • Capacité de travail en équipe
  • Capacité de prise en compte et de proposition de suggestions
  • Ponctualité
Compétences additionnelles appréciées

Notions de programmation et d'utilisation de plateformes de calcul quantiques.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Stage: Modèles d'exécution hybrides CPU/QPU
Stage: Modèles d'exécution hybrides CPU/QPU

Inria Talence • Talence

On-site
EUR 7,800 - 10,000
Ingénieur(e) Quantique - R&D & HPC
Ingénieur(e) Quantique - R&D & HPC

Groupe EOLEN • Paris

On-site
EUR 70,000 - 110,000
Ingénieur de recherche, HPC et programmation GPU pour la bibliothèque CGAL
Ingénieur de recherche, HPC et programmation GPU pour la bibliothèque CGAL

Inria Sophia Antipolis • Valbonne

On-site
EUR 42,000 - 54,000
Collaboration TITANE
Équipe internationale
Stage - Analyse comparative de la mesure énergétique inband vs out-of-band R&D
Stage - Analyse comparative de la mesure énergétique inband vs out-of-band R&D

Atos SE • Échirolles

On-site
EUR 7,800 - 13,000
Stage - Approches déclaratives et GitOps pour l'administration d'infrastructures HPC et IA R&D (H/F)
Stage - Approches déclaratives et GitOps pour l'administration d'infrastructures HPC et IA R&D (H/F)

Atos SE • Les Clayes-sous-Bois

On-site
EUR 8,900 - 13,000
STAGE - Interconnexions 3D pour le design et la fabrication de processeurs quantiques H/F
STAGE - Interconnexions 3D pour le design et la fabrication de processeurs quantiques H/F

CEA • Grenoble

On-site
EUR 8,900 - 11,000
Restaurant d'entreprise
Remboursement transports ~85%
Environnement de recherche de pointe
+2
Framework C++17 de génération de microstructures et IHM Python de test pour la construction de datasets
Framework C++17 de génération de microstructures et IHM Python de test pour la construction de datasets

IFP Energies Nouvelles Group • Rueil-Malmaison

On-site
EUR 12,000 - 18,000
Stage en environnement de recherche
Encadrement technique
Formation et documentation
Stage - Simulation de BMC et cluster pour l'administration d'infrastructures HPC et IA R&D (H/F)
Stage - Simulation de BMC et cluster pour l'administration d'infrastructures HPC et IA R&D (H/F)

Atos • Échirolles

On-site
EUR 10,000 - 15,000
Calibration Workflow Engineer
Calibration Workflow Engineer

Les Colettes • Les Ulis

On-site
EUR 90,000 - 130,000
Participation au capital via un plan BS
Primes liées à la propriété intellectuelle
Politique de télétravail flexible
+7
Stage - Analyse comparative de la mesure énergétique inband vs out-of-band R&D
Stage - Analyse comparative de la mesure énergétique inband vs out-of-band R&D

Atos • Échirolles

On-site
EUR 10,000 - 12,000