Polytechnique > Recherche > Répertoire > Un professeur ou chercheur

Répertoire des expertises

Photo de 
          Michel R.
         Dagenais

Michel R. Dagenais

Professeur titulaire
Département de génie informatique et génie logiciel

Recherche

Intérêts de recherche

  • Systèmes répartis, multi-coeurs, hétérogènes
  • Infonuagique et virtualisation
  • Outils pour l'analyse de performance
  • Traçage
  • Linux
  • Logiciels libres
Le principal objectif de recherche de notre groupe est d'aider les concepteurs et opérateurs de systèmes informatiques à mieux comprendre le comportement et la performance de leurs applications qui fonctionnent sur des systèmes parallèles et répartis. Par exemple, une requête effectuée sur un ordinateur pour obtenir une information (e.g. météo, compte bancaire, vidéo, réseaux sociaux) utilise votre ordinateur portatif, différents réseaux et commutateurs, et plusieurs serveurs chez celui qui fournira l'information. Plus encore, la même requête effectuée quelques instants plus tard pourrait passer par d'autres commutateurs de réseau et d'autres serveurs. Si la performance obtenue n'est pas celle attendue, comment comprendre le comportement et diagnostiquer le problème?
 
En raison du faible coût des composants électroniques, les systèmes actuels contiennent un très grand nombre d'unités de calcul qui opèrent en parallèle. Ceux-ci sont regroupés dans de grands parcs d'ordinateurs qui agissent comme serveurs pour plusieurs entreprises. Chaque service d'une entreprise peut s'exécuter en parallèle sur plusieurs ordinateurs, lorsque la demande le justifie. A l'inverse, chaque ordinateur peut exécuter des tâches pour plusieurs entreprises différentes, si la demande est moins forte. Ce flou, à savoir sur quel ordinateur un service s'exécute, a inspiré le terme infonuagique (Cloud). Sur chaque ordinateur, on retrouve typiquement de 4 à 64 processeurs (coeurs), dans l'unité centrale de traitement, qui peuvent fonctionner en parallèle. De plus, un co-processeur spécialisé pour le graphisme mais pouvant effectuer d'autres calculs, le GPU, est souvent disponible et peut contenir jusqu'à 4096 unités de calcul qui fonctionnent en parallèle. Comprendre la performance d'une application dans un tel contexte devient donc particulièrement difficile.
 
A cette fin, nous développons, en collaboration avec des partenaires industriels, des outils en logiciel libre pour le traçage, le profilage et le déboguage des applications. Ces outils recueillent des informations sur les principaux événements qui surviennent pendant l'exécution de requêtes. Ces informations sont ensuite analysées afin de montrer comment se répartit le temps d'exécution entre les différentes fonctions du logiciel et les différentes unités de calcul, de présenter des histogrammes pour comparer les différentes requêtes, de calculer le chemin critique, et d'identifier les goulots d'étranglement.

Unité(s) de recherche

Sujets CRSNG

  • 2720 Logiciel de systèmes informatiques
  • 2705 Logiciels et développement
  • 2704 Traitement réparti et simultané
  • 2701 Matériel informatique
  • 2713 Algorithmes
  • 2719 Architecture d'ordinateur et conception

 

© École Polytechnique de Montréal
Bottin | Plan du site | Recherche | Conditions