Lineaarisen algebran perusohjelmat

Blaster
Perustieto

Julkaisuvuosi 1979
Nykyinen  versio 3.8.0
(12. marraskuuta 2017)
käyttöjärjestelmä alustan poikki
ohjelmointikieli Fortran
kategoria Lineaarialgebra
www.netlib.org/blas

Lineaarisen algebran perustoiminnot (lyhyt BLAS ) kuvaavat ohjelmakirjastoa, joka tarjoaa lineaarisen algebran alkuoperaatiot , kuten vektori- ja matriisikertomukset . On olemassa useita toteutuksia eri kielillä tai eri arkkitehtuureille ja alustoille. BLAS: n etuna on paitsi ohjelmoijan uudelleenkäytettävyys ja työn helppous, myös laitevalmistajien mahdollisuus tarjota erittäin optimoituja toteutuksia, jotkut kokoonpanijana , näille usein käytetyille aliohjelmille . Siksi BLAS-laitteita käytetään laajalti, erityisesti supertietokoneiden alueella.

BLAS-liitännän määrittely on tosiasiallisesti standardi .

Toiminnallisuus

Seuraavia tietotyyppejä tuetaan: yksi (32-bittinen), kaksinkertainen (64-bittinen), monimutkainen (2 × 32-bittinen), kaksinkertainen (2 × 64-bittinen).

BLAS: n toiminnot on jaettu kolmeen tasoon:

Taso 1

Taso 1 sisältää muodon vektoriaritmeettiset operaatiot

samoin kuin skalaarisen tuloksen ja vektorin normit .

Taso 2

Taso 2 sisältää muodon vektorimatriisiartmeettiset operaatiot

sekä ratkaista lineaariset yhtälöryhmät matriisin sisään kolmiomainen muoto .

Taso 3

Taso 3 sisältää lomakkeen matriisiaritmeettiset operaatiot

sekä ratkaista matriisi on kolmion muodossa, muun muassa . Tämä taso sisältää usein vaaditun matriisikertomuksen.

Toteutukset

refblas
Netlibin virallinen viitetoteutus . C- ja Fortran-77- versiot ovat saatavilla.
ACML
AMD Core Math Library, AMD Athlon- ja Opteron- suorittimille Linux- ja Windows-käyttöjärjestelmissä .
ATLAS
Automaattisesti viritetty Linear Algebra -ohjelmisto , C: n ja Fortran 77: n BLAS- sovellusliittymien avoimen lähdekoodin toteutus .
ESSL
IBM: n Engineering and Scientific -alirutiinikirjasto PowerPC- arkkitehtuurille AIX- ja Linux-käyttöjärjestelmissä.
Mene BLAS
BLAS-toteutus: Kazushige Goto .
OpenBLAS
Goto BLAS: n jatkokehitys nykyaikaisille prosessoreille.
HP MLIB
HP: n Math-kirjasto Itanium- , PA-RISC- , x86- ja Opteron - arkkitehtuureille HP-UX: n ja Linuxin alla.
IMKL
Intel Math Kernel Library (BLAS, LAPACK, ScaLAPACK, Sparse Solvers, FFT, Vector Math), Intel-prosessoreille Linux-, macOS- ja Windows-käyttöjärjestelmissä.
LAMA
Library for Accelerated Math Applications ( LAMA ) on mallikirjasto, joka on kirjoitettu C ++ -sovelluksella numeeristen ratkaisijoiden kirjoittamiseen erilaisille laitteistoille (esim. GPU: t käyttävät CUDA: ta tai OpenCL: ää ) järjestelmissä, joissa on hajautettu muisti - se piilottaa laitteistokohtaisen ohjelmoinnin Sovelluskehittäjä.
MTL4
Matrix Mallikirjasto Versio 4 on yleinen C ++ mallikirjasto heikoille ja täyden BLAS toiminnallisuutta. MTL4 tarjoaa intuitiivisen käyttöliittymän (samanlainen kuin Matlab ) ja yleisen ohjelmoinnin ansiosta laaja sovellettavuus.
uBLAS
Yleinen C ++ -luokan kirjasto, joka tarjoaa BLAS-toiminnot, osa Boost- kirjastoa.
CUBLAS
Nvidia täytäntöönpano Blas varten CUDA teknologia.
clBLAS
BLAS: n toteutus OpenCL: lle .
AmdBLAS
AMD täytäntöönpano Blas varten ATI Stream SDK.
Armadillo
Armadillo-mallikirjasto on kääre C ++: lle.

nettilinkit

Yksittäiset todisteet

  1. BLAS-vertailuarvo elokuussa 2008 . own.tuxfamily.org. 1. elokuuta 2008. Haettu 4. maaliskuuta 2010.
  2. Nopeimman koodin kirjoittaminen käsin, hauskaa varten: Ihmisen tietokone pitää sirut nopeutettuna . New York Times, John Markoff. 28. marraskuuta 2005. Haettu 4. maaliskuuta 2010.
  3. www.libama.org