Formation en Algèbre Linéaire Creuse Parallèle - Bordeaux, novembre 2011

 

 

Objectifs

 

La solution de grands systèmes linéaires creux reste au coeur du calcul intensif. La taille croissante des systèmes rencontrés, et la nécessaire adaptation des méthodes aux évolutions architecturales des super-ordinateurs conduit au développement de méthodes de plus en plus sophistiquées, dont l'utilisation optimale (même à travers des bibliothèques spécialisées) requiert une bonne compréhension des techniques mises en oeuvre.

 

L'objectif de cette formation est de présenter les bases des méthodes mises en place dans les bibliothèques numériques parallèles. Cette première partie se concentrera sur les méthodes de base. Une seconde partie, prévue au printemps 2012, explorera les méthodes plus avancées.

 

La formation combinera la présentation théorique des méthodes avec des travaux pratiques sur un calculateur parallèle de la plateforme PlaFRIM pour mettre en évidence le comportement des méthodes sur des exemples typiques.

 

Prérequis

  • Connaissance en algèbre linéaire, algorithmique parallèle ;
  • Connaissance d'un langage de programmation (Fortran, C, C++) ;
  • Utilisation courante de Linux (Unix).

 

Contenu

 

Solveurs directs : E. Agullo, A. Guermouche, P. Ramet, J. Roman

 

  • Matrices denses (rappels) :
    • factorisation et descente/remontée, noyaux de calcul, formulations scalaires et par blocs ;
    • versions parallèles en dense, distribution 1D et 2D.
  • Matrices creuses :
    • modèle de graphe, renumérotation, arbre d'élimination, factorisation symbolique ;
    • versions parallèles : distribution de données et ordonnancement des calculs et des communications ;
    • aspects numériques : pivotage, prétraitement.
  • Etude de cas sur un solveur multifrontal (MUMPS) et un solveur supernodal (PaStiX).
  • Travaux pratiques :
    • installation et prise en main d'une bibliothèque solveur creux direct parallèle ;
    • utilisation de MUMPS et PaStiX.

Solveurs itératifs : L. Giraud, M. Kern, X. Vasseur

 

  • Algèbre linéaire et méthodes itératives classiques (rappels)
  • Méthodes de Krylov (symétrique et non-symétrique) : 
    • préconditionnement classique algébrique ;
    • mise en oeuvre parallèle (distribution des données, produit matricevecteur, produit scalaire, préconditionnement).
  • Méthodes avancées (introduction) :
    • décomposition de domaines ;
    • multi-grille (algébrique) ;
    • déflation, méthodes par blocs.
  • Présentation des deux principaux packages du domaine public : PETSc, Trilinos.
  • Travaux pratiques : utilisation de PETSc et Trilinos.

Les travaux pratiques illustreront l'utilisation des méthodes vues lors des séances de cours sur un ensemble de problèmes tests.

Dans les deux cas, ils permettront une étude de la sensibilité numérique aux différents paramètres de ces méthodes et de la scalabilité parallèle associée.

 

Informations pratiques

 

  • Les cours auront lieu du lundi au vendredi de 9 heures à 17 heures
  • Localisation : INRIA Bordeaux Sud-Ouest
  • Les cours seront en français, les supports de cours seront en anglais
  • Les TP seront au choix en français ou en anglais
  • Il est demandé à chaque participant de venir avec son propre ordinateur, si possible sous Linux (en cas d’impossibilité, merci de nous contacter)
  • Les repas du midi sont pris en compte
  • Inscription limitée à 30 personnes - Date limite d'inscription le 10 novembre 2011.

 

Frais d'inscription

  • Etudiants                      : 100 Euro
  • Etablissements publics   : 300 Euro
  • Autres                           : 600 Euro