Menu:

Info:

The MOAIS Project is part of the LIG together with the MESCAL Project.

Institutions:

LIG
CNRS
Grenoble INP
INRIA
UJF
UPMF

Programmation parallèle des algorithmes adaptatifs et contrôle du grain

Description du sujet

La programmation des architectures multi-cœurs est complexe. D'une part le programmeur doit connaitre finement l'architecture afin d'exploiter la performance du matériel. D'autre part, le programmeur doit prendre des décisions importantes concernant le "grain" du calcul parallèle qui ne permettent pas forcément d'assurer la portabilité d'une solution sur différentes architectures. Typiquement, un grain de calcul trop petit peu ne pas être suffisant pour exploiter efficacement les capacités de calcul matériel ; inversement, un grain trop important réduit le parallélisme exploitable.

Dans ce contexte, le projet MOAIS a développé une manière originale de programmer les applications parallèles en leur permettant de décrire la manière d'extraire le parallélisme en fonction de l'inactivité des ressources. Cette approche a été validée de manière ad hoc sur l'ensemble des algorithmes de la STL.

Objectif du stage

Le stage consistera à étendre les travaux du projet MOAIS sur les deux directions suivantes :

Les résultats obtenus auront pour objectif à être intégré dans la chaine de compilation développé par MOAIS pour programmer des algorithmes parallèles.

Résultats attendus

Une étude bibliographique. Réalisation d'un prototype et son évaluation sur différentes machines multi-cœurs. Des preuves théoriques de garantie de contrôle du surcoût et une mesure de la pertinence des preuves par l'expérimentation.

Compétences

Très bonne connaissance de la programmation C ou C++. Connaissances en algorithmique parallèle et programmation parallèle. Connaissances des structures de données concurrentes appréciées mais non requises. Connaissances en compilation appréciées mais non requises.

Back to job offers