Stream processing
Stream Processing (ou Processadores de Fluxo em tradução livre), consistem em um modelo de processamento semelhante a SIMD (single instruction, multiple data), possibilitando que aplicações possam explorar limitadas formas de processamento paralelo. Essas aplicações podem usar múltiplas unidades de processamento, como FPU's (unidade de ponto flutuante) de uma GPU ou Field-programmable gate array, sem gerir explicitamente a alocação, sincronização ou comunicação entre as unidades.[1]
O stream processing simplifica softwares e hardwares paralelos restringindo a computação paralela que pode ser executada. Dado um conjunto de dados (um fluxo ou stream), uma série de operações (funções do kernel) é aplicada a cada elemento na corrente, ou seja, um streaming uniforme, onde uma função de kernel é aplicada a todos os elementos do fluxo.