Automatikus párhuzamosítás

Automatikus párhuzamosítás  - a program optimalizálása a fordító által , amely abból áll, hogy automatikusan olyan formává alakítja, amely egy párhuzamos számítógépen fut , például egy SMP vagy NUMA gépen. A párhuzamosítás automatizálásának célja, hogy megszabadítsa a programozót a kézi párhuzamosítás időigényes és hibalehető folyamatától. Annak ellenére, hogy az elmúlt években javult az automatikus párhuzamosítás minősége, a szekvenciális programok teljes párhuzamosítása továbbra is túlságosan nehéz feladat, amely a legösszetettebb programelemzést igényli.

Az automatikus párhuzamosító általában olyan vezérlőkonstrukciókra összpontosít, mint például a tömböket feldolgozó hurkok , mivel általában a program végrehajtásának nagy része valamilyen hurkon belül történik. A párhuzamos fordító megpróbálja a ciklust részekre bontani, hogy annak különálló iterációi különböző processzorokon egyidejűleg végrehajthatók legyenek.

Programelemzés

A fordítók a párhuzamosítás előtt elemzik a következő kérdéseket:

Nehézségek

Az automatikus párhuzamosítás a fordítók számára nehézséget okoz a következő okok miatt:

A teljesen automatikus párhuzamosítás bonyolultsága miatt számos megközelítés létezik az egyszerűsítésre:

Korai párhuzamosító fordítók

Sok korai párhuzamosító fordító Fortranban írt programokkal dolgozott , mivel a C- hez képest szigorúbb korlátozások vonatkoztak a mutató- aliasozásra . Emellett számos számítási matematikai programot írnak Fortranban, amelyek munkájukhoz nagy erőforrásokat igényelnek. Példák fordítóprogramra:

Modern fordítók párhuzamosítási támogatással

Lásd még

Jegyzetek

  1. 1 2 3 4 5 6 7 8 Patrick Lam. 12. előadás Ma az automatikus párhuzamosításról lesz szó (hivatkozás nem elérhető) . ECE459: Programozás a teljesítményért (2011. február 10.). Letöltve: 2013. november 17. Az eredetiből archiválva : 2015. május 27.. 
  2. 1 2 Robert van Engelen. Nagy teljesítményű számítástechnika és tudományos számítástechnika . HPC @ Florida State University (2012. október 3.). Letöltve: 2013. november 17. Az eredetiből archiválva : 2015. május 27..

Linkek