ALIs
kommt nochLAPACK: Subroutinen für 'volle' lineare Systeme
Allgemeine Hinweise und Dokumentation zu den LAPACK-Routinen
LAPACK ist eine
Public-Domain Lineare Algebra Bibliothek mit besonders effizienten
Subroutinen für "volle" lineare Systeme ("dense" im Gegensatz zu
"sparse"). Es stellt eine Weiterentwicklung der EISPACK- und
LINPACK-Programmpakete dar, so daß Routinen aus EISPACK oder LINPACK, die
auch in LAPACK enthalten sind, durch die LAPACK-Routine ersetzt werden
sollten.
Die Performanceverbesserung wurde sowohl durch Integration von Level 2
und 3 BLAS-Routinen als auch durch Einsatz modernerer Algorithmen der
linearen Algebra erzielt.
Auf den am LRZ verfügbaren Rechnern sind in der Regel von den jeweiligen
Herstellern für ihre Plattform optimierte Versionen der Version
3 von LAPACK im Einsatz. In dieser Version sind gegenüber der
Vorversion einige Neuerungen insbesondere
bei den Algorithmen für die Singulärwertzerlegung sowie der
Eigenwertprobleme enthalten. Die Neuerungen sind dabei auch unter neuen
Namen anzusprechen und die früher implementierten Algorithmen weiterhin
unter den bisherigen Namen verfügbar.
Ausführlichere Information finden Sie im
(für die ältere Version 2 wird der Users' Guide auch noch vorgehalten).
Neben diesem Users' Guide kann man sich zusätzlich die UNIX manual pages zu LAPACK 3 von netlib herunterladen und lokal auf einer Workstation oder einem Linux-PC installieren.
LAPACK Funktionalität in den NAG Bibliotheken
Die LAPACK Programmier-Schnittstelle wird insbesondere von den
NAG Bibliotheken als Teil deren Funktionalität
bereitgestellt.
Dokumentation findet sich dazu in den
Kapiteln F07 und F08
des NAG-Manuals (siehe entsprechenden Link im NAG
Dokument).
Bei Vorhandensein von speziell für einen Rechnertyp vom Hersteller
erzeugtem und optimiertem LAPACK-Code wird man diesem gegenüber den
NAG-Routinen i.a. hinsichtlich der Effektivität den Vorzug geben,
hinsichtlich des Testens auf richtige Ergebnisse können sie aber nützlich
sein.
LAPACK Testprogramme
Neben der Implementierung der LAPACK Schnittstelle stellt die Firma NAG auch Beispiel-Programme zur Benutzung der Schnittstelle zur Verfügung.
Verwendung von LAPACK-Routinen auf LRZ Systemen
Linux-Cluster (IA32 und EM64T/x86_64)
Generell empfehlen wir die Implementierung von LAPACK, die in der Intel MKL verfügbar ist. Nicht explizit durch das LRZ unterstützte Alternativen:
-
In der ATLAS-Bibliothek sind einige Routinen aus LAPACK verfügbar.
-
Die für AMD Opteron optimierten ACML Bibliotheken sind auf den entsprechenden Systemen installiert und können durch ein entsprechendes Environment Modul zugeschaltet werden.
Itanium-basierte Systeme einschl. sgi Altix
-
Auch hier ist Intel MKL die empfohlene Bibliothek
-
Auf Altix Systemen kann auch SGI's SCSL verwendet werden. Insbesondere im Multi-Thread Modus kann das dort die bessere Wahl sein.