Globale Arrays

Globale Arrays (GA)
Paradigma parallel, Einseitige Nachricht, die vorüber ist, Imperativ (prozedural), strukturiert
Erstmals erschienen 1994
Stabile Version
5.5/August 2016
Disziplin tippen statisch, schwach
OS Plattformübergreifend
Webseite HPC.pnl.gov/GlobalArrays/

Globale Arrays, oder Ga, ist die Bibliothek, die von Wissenschaftlern entwickelt wurde Nationales Labor des pazifischen Nordwestens für parallele Computer. GA bietet freundlich API Für gemeinsame Programmierung auf verteilte Memory-Computer für mehrdimensionale Arrays. Die GA -Bibliothek ist ein Vorgänger des Gas (Globaler Adressraum) Sprachen werden derzeit für Hochleistungs-Computing entwickelt.[1][2][3][4]

Das GA-Toolkit verfügt über zusätzliche Bibliotheken, darunter einen Speicher Allocator (MA), die aggregierte Remote-Speicherkopie-Schnittstelle (ARMCI) und die Funktionalität für die Out-of-Core-Speicherung von Arrays (CHEMIO). Obwohl GA ursprünglich für die Ausführung mit TCGMSG entwickelt wurde, wurde eine Nachrichtenbibliothek, die vor dem MPI -Standard kam (Schnittstelle zur Nachrichtenübergabe), es ist jetzt vollständig mit MPI kompatibel. GA enthält einfache Matrixberechnungen (Matrix-Matrix-Multiplikation, LU-Lösung) und funktioniert mit Scalapack. Es sind spärliche Matrizen verfügbar, aber die Implementierung ist noch nicht optimal.

GA wurde von Jarek Nieplocha, Robert Harrison, R. J. Littlefield, Manoj Krishnan und Vinod Tipparaju entwickelt. Die Chemio-Bibliothek für die Lagerung außerhalb des Kerns wurde von Jarek Nieplocha, Robert Harrison und entwickelt Ian Foster.

Die GA -Bibliothek ist in viele Quantenchemie -Pakete integriert, einschließlich Nwchem, Molpro, Utchem, Molcas, und Turbomole. Die GA-Bibliothek ist auch in den Untergrundcode integriert STAMPFEN[5]

Das GA -Toolkit ist gratis Software, lizenziert unter a selbstgemachte Lizenz.

Verweise

  1. ^ Nieplocha, Jarek; Harrison, Robert (1997). "Gemeinsame Speicherprogrammierung in Metacomputing -Umgebungen: Der globale Array -Ansatz". Das Journal of Supercomputing. 11 (2): 119–136. doi:10.1023/a: 1007955822788.
  2. ^ Nieplocha, Jarek (2006). "Fortschritte, Anwendungen und Leistung des Global Arrays Shared Memory Programming Toolkit". Internationales Journal of High Performance Computing -Anwendungen. 20 (2): 203–231. Citeseerx 10.1.1.133.9926. doi:10.1177/1094342006064503.
  3. ^ Nieplocha, Jaroslaw; Harrison, Robert J.; Littlefield, Richard J. (1996). "Globale Arrays: Ein ungleichmäßiges Speicherzugriffs-Programmiermodell für Hochleistungscomputer". Das Journal of Supercomputing. 10 (2): 169–189. Citeseerx 10.1.1.41.5891. doi:10.1007/bf00130708.
  4. ^ Tipparaju, Vinod; Krishnan, Manoj; Palmer, Bruce; Petrini, Fabrizio; Nieplocha, Jarek (2008). "Auf dem Weg zu fehlerfreien globalen Arrays". In Bischof, Christian; Bücker, Martin; Gibbon, Paul; Joubert, Gerhard R.; Lippert, Thomas; Mohr, Bernd; Peters, Frans (Hrsg.). Parallele Computing: Architekturen, Algorithmen und Anwendungen. Fortschritte im parallelen Computer. Vol. 15. Amsterdam: IOS Press. S. 339–345. ISBN 978-1-58603-796-3. ISSN 0927-5452. OCLC 226966397.
  5. ^ "Gordon Bell Finalist bei SC09 - GA überquert die Petaflop -Barriere". Pnnl. 2009.

Siehe auch