PETSc utilise-t-il jamais les bibliothèques LAPACK pour les mathématiques à matrice clairsemée?


10

La compilation de PETSc avec une bibliothèque BLAS / LAPACK externe affecte-t-elle de manière significative les performances sur des matrices clairsemées, ou utilise-t-elle uniquement ces bibliothèques pour les mathématiques matricielles denses?


Vous pouvez utiliser LU pour le préconditionnement.
stali

Réponses:


10

PETSc utilise BLAS pour quelques primitives vectorielles, mais celles-ci sont généralement limitées par la bande passante mémoire et il n'y a pas beaucoup de variance dans "l'optimisation", donc cela n'a pas tendance à faire beaucoup de différence de performances.

Il utilise également Lapack pour certaines analyses telles que les estimations Lanczos ou Arnoldi des valeurs propres et des valeurs singulières, mais celles-ci ne sont généralement pas sensibles aux performances.

Les opérations denses de "niveau 3" n'apparaissent généralement que dans un contexte sensible aux performances lors de l'utilisation de solveurs directs clairsemés provenant de bibliothèques tierces (par exemple MUMPS, SuperLU, UMFPACK), auquel cas le remplissage entraîne finalement des problèmes denses suffisamment importants pour en bénéficier. appelant BLAS.

Si vous comptez sur ces solveurs directs clairsemés appliqués à de gros problèmes, cela vaut la peine de construire avec une implémentation BLAS réglée, sinon cela ne fait que très peu de différence.


Jed, comment PETSc utilise-t-il LAPACK pour l'estimation des valeurs propres / singulières dans le cas de matrices distribuées? S'agit-il alors d'une routine par blocs ou de ScaLAPACK?
Alexander

L'itération Arnoldi génère une matrice de Hessenberg de dimension égale au nombre d'itérations (disons 30 ou 100). Les valeurs propres ou singulières de la matrice de Hessenberg sont calculées de manière redondante sur chaque processus à l'aide de LAPACK. C'est beaucoup plus rapide que d'essayer de le faire en parallèle car les tailles sont petites et les données sont déjà redondantes. Similaire pour Lanczos.
Jed Brown
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.