Aspects théoriques du calcul réparti

Dans ce cours, on se propose de présenter quelques problèmes théoriques reliés à des problèmes classiques de calcul réparti, puis de les résoudre sur des applications pratiques.

 

Nous étudierons les classes de problèmes ci-dessous :

 

  • Placement de tâches : supposons que l'on dispose d'une architecture répartie, composée de processeurs et de liens de communication entre les processeurs, ainsi que d'un ensemble de tâches (programmes) à exécuter sur cette architecture. Le placement consiste à déterminer une affectation des tâches sur les processeurs, de façon à ce que celles-ci soient efficacement exécutées.
  • Parallélisation automatique : dans ce cas, un programme informatique a été écrit, et l'on désire l'exécuter sur une architecture parallèle donnée. Plutôt que de le paralléliser 'à la main', c'est le compilateur qui est chargé de reconnaître les parties parallèles du programme, ce qui doit permettre de le paralléliser automatiquement. Il s'agit donc de comprendre les règles mises en oeuvre dans le compilateur.
  • Partitionnement et équilibrage : on s'intéresse enfin au problème de la répartition des données, sur une architecture parallèle et/ou distribuée. Pour opérer une affectation convenable, il convient d'étudier a priori les interactions entre les données, ainsi que leur poids respectif. Ensuite, on peut les répartir, en tenant compte de ces deux paramètres

Les applications abordées en TD ou TP auront pour thèmes principaux l'algèbre linéaire et le calcul scientifique. On considérera en particulier la résolution itérative de systèmes linéaires, à l'aide des méthodes de Jacobi et Gauss-Seidel. D'autres méthodes seront proposées au cours I2-a.

 

last update : 11-24 00:00:00-2010 (54)

 
Retour en haut