Ir al contenido

Basic Linear Algebra Subprograms

De Wikipedia, la enciclopedia libre

Esta es una versión antigua de esta página, editada a las 15:41 26 may 2017 por Thorm-bjkp55 (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.

Basic Linear Algebra Subprograms (BLAS) es una especificación que define un conjunto de rutinas de bajo nivel para realizar operaciones comunes de álgebra lineal tales como la suma de vectores, multiplicación escalar, producto escalar combinaciones lineales y multiplicación de matrices. Aunque la especificación de BLAS es general, las implementaciones particulares están a menudo optimizadas para conseguir mayor aceleración en una máquina o arquitectura particular, de forma que su uso puede conllevar un incremento sustancial del rendimiento. Las implementaciones de BLAS se pueden aprovechar de la existencia de hardware especial de punto flotante, tales como registros vectoriales o instrucciones SIMD.

Funcionalidad

La funcionalidad de BLAS se categoriza en tres conjuntos de rutinas llamados "niveles", que corresponden tanto al orden cronológico de definición y publicación, como al grado del polinomio en las complejidades de los algoritmos; las operaciones BLAS de nivel 1 (Level 1) typically take linear time, O(n), Level 2 operations quadratic time and Level 3 operations cubic time.[1]​ Modern BLAS implementations typically provide all three levels.

Referencias

  1. Error en la cita: Etiqueta <ref> no válida; no se ha definido el contenido de las referencias llamadas level3
  • BLAST Forum (21 August 2001), Basic Linear Algebra Subprograms Technical (BLAST) Forum Standard, Knoxville, TN: University of Tennessee .
  • Dodson, D. S.; Grimes, R. G. (1982), «Remark on algorithm 539: Basic Linear Algebra Subprograms for Fortran usage», ACM Trans. Math. Softw. 8: 403–404, doi:10.1145/356012.356020 .
  • Dodson, D. S. (1983), «Corrigendum: Remark on "Algorithm 539: Basic Linear Algebra Subroutines for FORTRAN usage"», ACM Trans. Math. Softw. 9: 140, doi:10.1145/356022.356032 .
  • J. J. Dongarra, J. Du Croz, S. Hammarling, and R. J. Hanson, Algorithm 656: An extended set of FORTRAN Basic Linear Algebra Subprograms, ACM Trans. Math. Softw., 14 (1988), pp. 18–32.
  • J. J. Dongarra, J. Du Croz, I. S. Duff, and S. Hammarling, A set of Level 3 Basic Linear Algebra Subprograms, ACM Trans. Math. Softw., 16 (1990), pp. 1–17.
  • J. J. Dongarra, J. Du Croz, I. S. Duff, and S. Hammarling, Algorithm 679: A set of Level 3 Basic Linear Algebra Subprograms, ACM Trans. Math. Softw., 16 (1990), pp. 18–28.
New BLAS
  • L. S. Blackford, J. Demmel, J. Dongarra, I. Duff, S. Hammarling, G. Henry, M. Heroux, L. Kaufman, A. Lumsdaine, A. Petitet, R. Pozo, K. Remington, R. C. Whaley, An Updated Set of Basic Linear Algebra Subprograms (BLAS), ACM Trans. Math. Softw., 28-2 (2002), pp. 135–151.
  • J. Dongarra, Basic Linear Algebra Subprograms Technical Forum Standard, International Journal of High Performance Applications and Supercomputing, 16(1) (2002), pp. 1–111, and International Journal of High Performance Applications and Supercomputing, 16(2) (2002), pp. 115–199.