Basic Linear Algebra Subprograms

Un article de Wikipédia, l'encyclopédie libre.

Basic Linear Algebra Subprograms (BLAS) sont un ensemble de fonctions standardisée (interface de programmation) réalisant des opérations de base de l'algèbre linéaire comme des multiplications de vecteurs ou de matrices. Ces fonction ont d'abord été publiées en 1979 et sont utilisée dans des bibliothèques plus développées comme LAPACK. Largement utilisées pour le calcul haute performance, ces fonctions ont été implementées de manière très optimisé par des constructeurs de calculateurs comme Intel ou encore par d'autres auteurs ( par exemple, ATLAS est une implémentation portable de BLAS). Les tests de performance LINPACK utilisent massivement la fonction multiplication de matrices générales (DGEMM) de BLAS.

Sommaire

[modifier] Fonctionnalités

Les fonctionnalités de BLAS sont réparties en 3 niveaux : 1, 2 et 3.

[modifier] Niveau 1

Ce niveau contient les opérations sur les vecteurs de la forme

\boldsymbol{y} \leftarrow \alpha \boldsymbol{x} + \boldsymbol{y} \!

ainsi que les opérations produit scalaire et norme, parmi tant d'autres.

[modifier] Niveau 2

Ce niveau contient entre autres les opérations de type matrice-vecteur de la forme

\boldsymbol{y} \leftarrow \alpha A \boldsymbol{x} + \beta \boldsymbol{y} \!

ainsi que la résolution de T \boldsymbol{x} = \boldsymbol{y} pour x, T étant une matrice triangulaire.

[modifier] Niveau 3

Ce niveau contient entre autres les opérations de type matrice-matrice de la forme

C \leftarrow \alpha A B + \beta C \!

ainsi que la résolution de B \leftarrow \alpha T^{-1} B pour des matrices triangulaires T.

Le niveau 3 contient notamment la très usitée opération de multiplication de matrices générales (DGEMM).

[modifier] Voir aussi

[modifier] Liens externes