Poslední verze | 3.9.1 (1 st 04. 2021) |
---|---|
Napsáno | Fortran |
Typ | Softwarová knihovna |
Licence | 3-věty BSD ( d ) |
webová stránka | www.netlib.org/lapack |
LAPACK (pro L inear lgebra aktualizaci Pack věku ) je softwarová knihovna napsaná v jazyce Fortran , která se věnuje jak již název napovídá, aby digitální lineární algebry . To bylo původně vyvinuto University of Tennessee , Courant Institute of Mathematical Sciences , Numerical Algorithms Group , Rice University, and the Argonne and Oak Ridge Laboratories .
Tato knihovna poskytuje zejména funkce pro rozlišení systémů lineárních rovnic , výpočet vlastních čísel a rozkladů matic ( LU , QR , SVD , Cholesky ).
LAPACK závisí na knihovně BLAS (základní podprogramy lineární algebry). Je k dispozici na Netlib .
Primárním cílem LAPACKu je zajistit, aby byl EISPACK snadněji použitelný, a proto byl více používán. Kromě toho umožňuje použití knihovny LINPACK . Funguje relativně efektivně s počítačem, který má sdílenou paměť a používá vektorový procesor . Na některých počítačích LINPACK a EISPACK bohužel neúčinné, protože jejich přístupů do paměti nerespektují hierarchii paměti z počítače . Je to proto, že namísto výpočtů s plovoucí desetinnou čárkou trvá přesunům dat příliš dlouho .
LAPACK vyřešil problém vícejádrových procesorů reorganizací algoritmů, které se mají použít pro operace s blokovými maticemi, jako je například násobení . Ty lze optimalizovat pro každou architekturu, aby bylo možné zohlednit hierarchii paměti každého stroje. Dosahuje tedy vysoké účinnosti na moderních strojích, z nichž většina je přesně vícejádrových.