On Exploiting Sparsity of Multiple Right-Hand Sides in Sparse Direct Solvers
Exploitation de seconds-membres creux et multiples dans les solveurs creux directs
Résumé
Le coût des résolutions triangulaires des solveurs creux directs est parfois critique.
Ce coût peut dépasser celui de la factorisation dans les applications qui nécessitent la résolution de plusieurs milliers de seconds membres. Cette étude se concentre sur les cas où les seconds membres sont multiples, creux et n’ont pas tous la même structure.
Étant donnée la factorisation A = LU d’une matrice creuse A, l’étude met surtout l’accent sur la
résolution du premier système triangulaire LY = B, où L est triangulaire inférieure. Dans ce type
de problèmes, le creux dans la matrice B peut être exploité de deux manières. Premièrement, on
évite le calcul de certaines lignes, ce qui correspond à élaguer certains noeuds de l’arbre d’élimination
(qui représente les dépendances entre les calculs de la résolution). Deuxièmement, on réduit, pour
chaque noeud, le calcul sur des sous-ensembles de colonnes de B plutôt que sur la matrice complète.
Dans ce cas, un problème combinatoire doit être résolu afin de trouver une permutation des colonnes
de B.
S’appuyant d’abord sur l’algorithme de dissection emboitée appliqué à un domaine régulier, un premier
algorithme est proposé pour contruire une permutation des colonnes de B. Puis une nouvelle
approche permet de poursuivre la réduction du nombre d’opérations grâce à la création de blocs.
Pour préserver la flexibilité de l’implémentation ainsi que l’efficacité des opérations de type BLAS
3, un nombre minimal de groupe est créé. Inspirés d’abord par des observations géométriques,
ces nouveaux algorithmes ont été étendus algébriquement pour n’utiliser que des informations
provenant de la structure des seconds membres et des arbres d’élimination. Ils permettent ainsi
une convergence rapide vers le nombre minimal d’opérations. Les résultats expérimentaux démontrent
le gain obtenu par rapport à d’autres approches classiques. Enfin, les applications et
extensions possibles de ce travail sont présentées.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...