Während die als „Multicore Challenge“ betitelte Herausforderungen an die Softwareindustrie in den USA ausgehend von Berkeley (UPC – Unified Parallel C) zur Entwicklung neuer Programmiersprachen geführt haben, wurde am Fraunhofer ITWM in Kaiserslautern ein PGAS-API entwickelt und zur Anwendungsreife gebracht.
Der PGAS (Partitioned Global Address Space) Ansatz bietet dem Entwickler dabei einen abstrakten gemeinsamen Adressraum, der die Programmierung erleichtert. Gleichzeitig bietet dieser Ansatz Datenlokalität, ein Thread-basiertes Programmiermodell und ein asynchrones Kommunikationsmodell.
Das PGAS-API des ITWM Fraunhofer (Fraunhofer Virtual Machine, FVM) wird seit 2005 entwickelt. Seit 2007 werden die HPC-Industrieprojekte vom ITWM ausschließlich mit dem kommerziellen Produkt realisiert; das PGAS-API hat dort MPI weitestgehend verdrängt. Diese API bietet MPI-Entwicklern einen leichten Umstieg auf ein auf Effizienz und Skalierbarkeit ausgerichtetes Programmiermodell, welches alle oben genannten Anforderungen erfüllt.
GPI ist eine PGAS Schnittstelle für C, C + + und Fortran, die skalierbare parallele Anwendungen unterstützt. Zusammen mit MCTP (ein optimiertes Threading-Paket) ermöglicht GPI die volle Verwertung von hoch-parallelen Clustern von Multicore-Systemen.
GPI Homepage: http://www.gpi-site.com
