Vektorové a maticové operace
BLAS
Zkratkou BLAS (Basic Linear Algebra Subroutines) je dnes označována třída numerických algoritmů pro matice a vektory, ale zároveň i jejich referenční volně dostupná implementace ve Fortranu. Pravdou je, že tato implementace často neposkytuje optimálních výkon, zejména ve srovnání s implementacemi dodanými výrobcem počítače / procesoru. Například pro platformu Intel lze přímo ze stránek výrobce získat optimalizovanou MKL knihovnu, poskytující stejnou funkčnost, ale odladěnou na míru procesorům Intel. Podobně firma AMD nabízí ke stažení svou AMD Core Math Library (ACML) knihovnu.
ATLAS
ATLAS (Automatically Tuned Linear Algebra Software) je knihovna napsaná v jazyce C, která poskytuje efektivní implementaci všech 3 úrovní BLAS a části knihovny LAPACK. Velice úspěšně soutěží s implementacemi BLAS dodávanými výrobci procesorů. Jeho typickým znakem je poměrně dlouhá kompilace, během které si ATLAS doslova osahá počítač, na který bude nainstalován, a přizpůsobí mu své parametry (velikost bloků pro blokové verze algoritmů). Řada komerčních produktů jako Matlab či Mathematica jej využívají.
uBLAS
je velice živý projekt, jehož cílem je vytvoření čistě objektové implementace BLAS algoritmů v C++. Využívá se přitom těch nejmodernějších technik z objektového a generického programování, jako jsou šablony výrazů, iterátory, kontejnery, a podobně. Knihovna je součástí velkého projektu BOOST a má ambice stát se standardizovanou C++ knihovnou, něco ve smyslu STL.
