LAMA – Entwicklung schneller und skalierbarer Software

Vorteile:

  • Framework zur Entwicklung Hardware-unabhängiger Codes auf heterogenen Rechenclustern
  • Verkürzt Time-to-Market für neue Software
  • Berücksichtigt neueste Hardware-Entwicklungen

Hochleistungs-Framework LAMA

Mit LAMA lassen sich Algorithmen zu numerisch-mathematische Problemstellungen auf der Basis dünnbesetzter Matrizen leicht implementieren.

 

Beschreibung#

LAMA ist ein Framework für die Entwicklung Hardware-unabhängiger, leistungsstarker Codes für heterogene Rechnersysteme. Es ermöglicht die Entwicklung schneller und skalierbarer Software, die auf nahezu allen Rechnersystemen eingesetzt werden kann, von eingebetteten Geräten bis hin zu hochparallelen Supercomputern mit einer einzigen Codebasis.
Durch die Verwendung von LAMA für ihre Anwendung profitieren Software-Entwickler von einer höheren Produktivität in der Implementierungsphase und bleiben mit den neuesten Hardware-Innovationen auf dem Laufenden, was zu einer Verkürzung der Time-to-Market führt.

Das Framework unterstützt mehrere Zielplattformen innerhalb einer verteilten heterogenen Umgebung. Es bietet optimierten Geräte-Code auf der Back-End-Seite und hohe Skalierbarkeit durch Latency Hiding und asynchrone Ausführung über mehrere Knoten. Das modulare und erweiterbare Software-Design von LAMA unterstützt den Entwickler auf mehreren Ebenen. Unabhängig davon, ob er seinen eigenen portablen Code mit dem Heterogeneous Computing Development Kit oder mit vorbereiteter Funktionalität aus dem Linear Algebra Package schreibt, erhält der Anwender immer eine hohe Produktivität und maximale Leistung.

Die Integration von LAMA in andere Software-Produkte ist aufgrund des dualen Lizenz-Modells einfach und branchenfreundlich: Sowohl eine Open-Source-AGPL als auch eine kommerzielle Lizenz werden angeboten.

Verkapselte Module ermöglichen eine saubere Software-Entwicklung#

Basis-Modul

Math Kernel Extension

Distributed Extension

Lineare Algebra Paket

Performance#

Produktivität wird mit Leistung in der Ausführung kombiniert - was sich nicht gegenseitig ausschließt. Das flexible Software-Design von LAMA führt nur einen minimalen Overhead ein und bewahrt die volle Performance der zugrunde liegenden BLAS-Implementierungen von Hardware-Anbietern und hoch optimierten Kernel-Backends. Ein Leistungsvergleich mit anderen Software-Bibliotheken im Bereich der linearen Algebra zeigt vergleichbare Ergebnisse für Einzelknotenimplementierungen.

Bei verteilten Systemen garantiert das asynchrone Ausführungsmodell eine effiziente Überlappung von Berechnung, Speicherübertragung und Kommunikation, die eine lineare Skalierung auf GPUs erreicht.