LAPACK — Wikipédia
Dernière version | 3.12.0 ()[1] |
---|---|
Dépôt | github.com/Reference-LAPACK/lapack |
Écrit en | Fortran |
Type | Bibliothèque logicielle |
Licence | BSD 3-clauses |
Site web | netlib.org/lapack |
LAPACK (pour Linear Algebra Package) est une bibliothèque logicielle écrite en Fortran, dédiée comme son nom l'indique à l'algèbre linéaire numérique. Elle a été développée initialement par l'université du Tennessee, le Courant Institute of Mathematical Sciences, le Numerical Algorithms Group, l'université Rice et les laboratoires d'Argonne et Oak Ridge[2].
Cette bibliothèque fournit notamment des fonctions pour la résolution de systèmes d'équations linéaires, le calcul de valeurs propres et les décompositions de matrices (LU, QR, SVD, Cholesky).
LAPACK dépend de la bibliothèque BLAS (Basic Linear Algebra Subprograms). Elle est disponible sur Netlib.
Objectifs
[modifier | modifier le code]L'objectif premier de LAPACK est de rendre l'EISPACK plus facilement utilisable et ainsi être plus largement utilisée. De plus, elle permet d'utiliser la bibliothèque LINPACK. Elle fonctionne relativement efficacement avec un ordinateur ayant une mémoire partagée et utilisant un processeur vectoriel. Sur certaines machines, LINPACK et EISPACK sont malheureusement inefficaces car leurs accès à la mémoire ne respectent pas la hiérarchie de mémoire des ordinateurs. En effet, les machines prennent trop de temps pour déplacer les données au lieu de faire des calculs en virgule flottante.
Résolution du problème avec les processeurs multi-cœurs
[modifier | modifier le code]LAPACK a résolu le problème des processeurs multi-cœurs en réorganisant les algorithmes à utiliser pour les opérations matricielles par blocs, comme la multiplication. Ces dernières peuvent être optimisées pour chaque architecture afin de tenir compte de la hiérarchie mémoire de chaque machine. Ainsi, elle atteint un rendement élevé sur les machines modernes, la plupart étant justement multi-cœurs.
Notes et références
[modifier | modifier le code]- « Release 3.12.0 », (consulté le )
- E. Anderson et al., LAPACK: a portable linear algebra library for high-performance computers, Proceedings of the 1990 ACM/IEEE conference on Supercomputing (ISBN 0-89791-412-0)
Voir aussi
[modifier | modifier le code]Bibliographie
[modifier | modifier le code]- E. Anderson et al., LAPACK Users' Guide, 3e éd., SIAM, 1999 (ISBN 978-0-898714-47-0)
Liens externes
[modifier | modifier le code]- Site officiel
- PLAPACK
- LAPACK compilée pour Windows sur le site de l'université du Tennessee