Claudio Brotto

Dryad, concorrenza e rielaborazione

Visto l'effetto delle traduzioni, non mi cimento e mi limito al copia e incolla.

Dryad is a general-purpose distributed execution engine for
coarse-grain data-parallel applications.

A Dryad application combines computational “vertices” with communication “channels” to form a dataflow graph.

Dryad runs the application by executing the vertices of this graph on a set of available computers, communicating as appropriate through files, TCP pipes, and shared-memory FIFOs.

The vertices provided by the application developer are quite simple and are usually written as sequential programs with no thread creation or locking.

Concurrency arises from Dryad scheduling vertices to run simultaneously on multiple computers, or on multiple CPU cores within a computer.

The application can discover the size and placement of data at run time, and modify the graph as the computation progresses to make efficient use of the available resources.

Potete leggere di più (non molto a dire il vero) sul sito di MSR qui.

Non è certo una scoperta che l'investimento (ricerca, studio, progettazione) sulla programmazione concorrente sia *la* direzione corrente e futura (prossima e forse non tanto prossima).

Quello che è interessante, a mio parere, è il fatto che (almeno dal punto di vista teorico) gli studi e gli esempi di architettura parallela applicata alle tecniche di programmazione datino, a volte, indietro di qualche decade.

Però sfruttare i principi e le idee di tecnologie o soluzioni precedenti non significa non poterle (o doverle ?) rielaborare sulla base dell'avanzamento tecnologico attuale.

E sennò da dove saltava fuori DryadLINQ :-P

Posted: Jun 12 2008, 09:01 PM by devlizard | with 1 comment(s)
Filed under: ,

Comments

nailstk said:

Leg doch auf, wenn die Malbox rangeht. Außerdem hilft dir dabei die 60/90 Taktung.

# May 31, 2012 6:31 PM