- PGAS
-
Dieser Artikel wurde aufgrund von inhaltlichen Mängeln auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen und beteilige dich an der Diskussion! (+)
PGAS (partitioned global address space) ist ein Programmiermodell im Hochleistungsrechnen (High Performance Computing). Hier wird ein globaler Adressbereich logisch unterteilt und jeder Einzelbereich den einzelnen Prozessoren zugeordnet. Trotzdem können alle Prozessoren auf jede Speicherzelle zugreifen (der Eignerprozessor mit höchster, alle anderen ggf mit geringerer Geschwindigkeit). Ein wichtiger Vorteil der PGAS-Sprachen ist die einfach formulierbare Möglichkeit, große Datenmengen, die von einem einzelnen Prozessor nicht mehr gespeichert werden können, in den verteilten Speichern vieler Prozessoren unterzubringen, ohne dass die einheitliche Datenbeschreibung verloren geht.
Der Programmierer steht vor der Aufgabe, maximale Leistung des Programms durch geeignete Definition und Zuordnung der Programmvariablen zu erzielen. Dabei ist insbesondere eine gleichmäßige Lastverteilung auf alle beteiligten Prozessoren zu achten. Ein nur mit PGAS-Mitteln geschriebenes Programm ist manchmal sehr schwer zu überschauen, da die Zuordnung der Variablen im Programm nicht explizit auftaucht, sondern nur implizit nach festgelegten Regeln erfolgt. Deshalb gibt es in PGAS-Sprachen zusätzliche Möglichkeiten der Synchronisierung der Prozesse.
Die Prozessoren führen normale Threads aus. Die Synchronisierung beim Variablenzugriff erfolgt implizit; explizite Synchronisierung durch den Programmierer ist möglich. PGAS-Sprachen sind Unified Parallel C (UPC), Co-array Fortran (CAF; inzwischen in Fortran 2008 enthalten), Titanium, Fortress, Chapel und X10.
Weblinks
- PGAS Webseite
- Programming in the Partitioned Global Address Space Model (2003; PDF-Datei; 964 kB)
- Performance and Productivity Opportunities using Global Address Space Programming Models (2006; PDF-Datei; 518 kB)
- GASNet Communication System - provides a software infrastructure for PGAS languages over high-performance networks
- Unified Parallel C
- Titanium
- Co-array Fortran
- Sun's project page on Fortress
- Chapel Programming Language Homepage
- X10 Website
Wikimedia Foundation.