ATLAS BLAS (Linux)

Um optimale Performance zu erreichen, ist es erforderlich, auf eine für den speziellen Prozessor optimierte Bibliothek zuzugreifen. Da im Forschungszentrum immer mehr Linux-Systeme basierend auf Standard-PCs eingesetzt werden, ist es wichtig, auf diesen Plattformen effiziente mathematische Software anzubieten. Essentielle Bausteine für Software aus dem Bereich der Linearen Algebra sind die Basic Linear Algebra Subroutines (BLAS). Die frei verfügbaren  ATLAS BLAS (Automatically Tuned Linear Algebra Software) wurden im ZAM für die Standard-PC-Konfigurationen des FZJ bereitgestellt. Bei der Implementierung werden die Hardware-Gegebenheiten wie Prozessortyp und Cache-Größe erkannt und für die Erzeugung eines performanten Codes genutzt. Es stehen Schnittstellen für Fortran und C zur Verfügung. Hier im Forschungszentrum wurde jeweils eine Library erstellt für

- Intel Pentium III Prozessor, 16K L1 cache, 512K L2 cache (SuSE 7.x)
- AMD Athlon Prozessor, 64K L1 cache, 256K L2 cache (SuSE 7.x)
- Intel Pentium III Prozessor, 16K L1 cache, 512K L2 cache, mit SSE1 (SuSE 8.0)
- Intel Pentium III Prozessor, 16K L1 cache, 256K L2 cache, mit SSE1 (SuSE 8.0)
- Intel Pentium 4 Prozessor, 8K L1 cache, 512K L2 cache, mit SSE2 (SuSE 8.0)
- AMD Athlon Prozessor, 64K L1 cache, 256K L2 cache, mit SSE1 (SuSE 8.0)

Für weitere Prozessoren stehen  compilierte Versionen bereit. Ausserdem hat man Zugriff auf den  source, um für einen anders konfigurierten Linux PC, z.B. für SMP-Systeme, selbst eine Bibliothek zu erzeugen.

ATLAS BLAS werden auch in integrierten Systemen wie Maple, Matlab, Scilab und zukünftig Mathematica eingesetzt. Die Algorithmen zur Linearen Algebra in mathematischen Bibliotheken, z.B. NAG, werden durch die Nutzung der ATLAS BLAS ebenfalls effizienter.


last change 24.02.2011 | Math Admin | Print