NESL




NESL este un limbaj de programare paralel dezvoltat la Carnegie Mellon de The Scandal Project și lansat în 1993.

Integrează diverse idei din algoritmi paraleli, programare funcțională și limbaje de programare.

Cele mai importante idei noi din spatele NESL sunt paralelismul cuibului: această caracteristică oferă beneficiile paralelismului datelor, cod concis care este ușor de înțeles și de depanat, fiind în același timp potrivit pentru algoritmi neregulați, cum ar fi algoritmi pe copaci, grafice sau matrici rare.

Un model de performanță bazat pe limbaj: Acest lucru oferă o modalitate formală de a calcula munca și profunzimea unui program.

Aceste măsuri pot fi legate de timpul de rulare pe mașini paralele.

Principala ghid de proiectare pentru NESL a fost de a face programarea paralelă ușoară și portabilă.

Algoritmii sunt de obicei mai concis în NESL decât în ​​majoritatea altor limbaje de programare paralele, iar codul seamănă îndeaproape cu pseudocodul de nivel înalt.

NESL se ocupă de paralelismul cuibărit de date folosind transformarea de aplatizare pentru a converti paralelismul datelor cuibărit în paralelismul datelor plane.

Acest lucru funcționează prin stocarea vectorilor cuibăriți ca date cuibărite și un descriptor de segment al lungimilor vectoriale, separat.

Totuși, această transformare de aplatizare poate crește munca asimptotică și complexitatea spațială a programului inițial, ceea ce duce la un rezultat mult mai puțin eficient.