Stream processing: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
FIX vari
 
(3 versioni intermedie di 3 utenti non mostrate)
Riga 1:
{{S|informaticaprogrammazione}}
Lo '''stream processing''' è un paradigma di [[programmazione parallela]] di tipo [[Single instruction multiple data|SIMD]] che permette ad alcune applicazioni di sfruttare semplicemente una forma limitata di elaborazione parallela. Le applicazioni utilizzano delle unità funzionali come [[Unità di calcolo in virgola mobile|FPU]] o [[Graphics Processing Unit|GPU]] senza doversi preoccupare di gestirne la sincronizzazione o la comunicazione tra le unità funzionali, sgravando il programmatore da uno dei principali problemi della programmazione parallela.
 
Riga 9:
Il paradigma del stream processing parte dal presupposto di avere un'elevata mole di dati da elaborare con operazioni regolari e quindi ben si adatta alle applicazioni che normalmente vengono svolte dalle [[Graphics Processing Unit|GPU]] o dai [[DSP]]. Applicazioni più generiche o che accedono in modo disorganizzato ai dati (come per esempio i database) mal si adatterebbero a questo paradigma di programmazione. In sostanza viene sacrificata la flessibilità di elaborazione per la velocità dell'elaborazione.
 
Lo stream processing mostra le migliori prestazioni con applicazioni che mostrano lle seguenti caratteristiche:
*'''elevata richiesta computazionale''': le operazioni aritmetico/logiche devono essere preponderanti rispetto alle operazioni di I/O dalla memoria;
*'''parallelismo dei dati''': i dati devono poter essere elaborati in parallelo senza aver problemi di sincronizzazione o di dipendenza tra i dati;
Riga 17:
 
[[Categoria:Architettura dei calcolatori]]
[[Categoria:Teorie della programmazione]]