Dělený globální adresový prostor ( anglicky partitioned global address space , zkr. PGAS ) je jedním ze slibných modelů paralelního programování ( paralelní počítání ), ve kterém je veškerá paměť paralelního výpočetního komplexu (globální paměť) adresovatelná a je rozdělena na logické sekce, z nichž každá je lokální pro nějaký proces nebo vlákno [1] .
Inovace v PGAS spočívá v tom, že sekce sdíleného adresního prostoru mohou být vázány na konkrétní proces nebo vlákno, čímž se využívá princip kompaktních (lokálních) referencí. PGAS je navržen tak, aby kombinoval výhody stylu programování SPMD pro systémy s distribuovanou pamětí (jako je systém používaný v rozhraní MPI ) se sémantikou přístupu do paměti systémů se sdílenou pamětí. Přístup PGAS je realističtější než tradiční model ploché sdílené paměti, protože PGAS může využívat informace o nákladech na přístup k různým částem paměti (lokální části PGAS odpovídají místní paměti uzlu, na kterém proces běží, náklady přístup k němu je minimální).
Model PGAS je základem pro paralelní programovací jazyky Unified Parallel C , Co-array Fortran , Titanium , Fortress , Chapel a X10 , Global Arrays . Dvě knihovny použité při implementaci PGAS jsou GASNet a SHMEM .
Varianta modelu PGAS nazvaná asynchronní rozdělený globální adresní prostor ( APGAS ) přidává možnost vytvářet asynchronní úlohy, a to jak lokálně, tak vzdáleně. [2] Dva jazyky, které implementují APGAS: Chapel a X10.
distribuované a paralelní výpočty | Software pro|
---|---|
Standardy, knihovny | |
Monitorovací software | |
Ovládací software |