Stream processing is a computer programming paradigm, related to SIMD, that allows some applications to more easily exploit a limited form of parallel processing. Such applications can use multiple computational units, such as the floating point units on a GPU, without explicitly managing allocation, synchronization, or communication among those units. The stream processing paradigm simplifies parallel software and hardware by restricting the parallel computation that can be performed.

PropertyValue
dbpprop:abstract
  • Stream processing is a computer programming paradigm, related to SIMD, that allows some applications to more easily exploit a limited form of parallel processing. Such applications can use multiple computational units, such as the floating point units on a GPU, without explicitly managing allocation, synchronization, or communication among those units. The stream processing paradigm simplifies parallel software and hardware by restricting the parallel computation that can be performed. Given a set of data (a stream), a series of operations (kernel functions) are applied to each element in the stream. Uniform streaming, where one kernel function is applied to all elements in the stream, is typical. Kernel functions are usually pipelined, and local on-chip memory is reused to minimize external memory bandwidth. Since the kernel and stream abstractions expose data dependencies, compiler tools can fully automate and optimize on-chip management tasks. Stream processing hardware can use scoreboarding, for example, to launch DMAs at runtime, when dependencies become known. The elimination of manual DMA management reduces software complexity, and the elimination of hardware caches reduces the amount of die area not dedicated to computational units such as ALUs. During the 1980s stream processing was explored within dataflow programming. An example is the language SISAL (Streams and Iteration in a Single Assignment Language).
  • Als Streamprozessor wird eine spezielle Art des Koprozessors bezeichnet und gleichzeitig auch eine kleine skalare Recheneinheit, die in solchen Koprozessoren auftreten kann.
  • Lo Stream processing è un paradigma di programmazione parallela di tipo SIMD che permette ad alcune applicazioni di sfruttare semplicemente una forma limitata di elaborazione parallela. Le applicazioni utilizzano delle unità funzionali come FPU o 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. Il paradigma dello stream processing semplifica lo sviluppo dell'hardware e del software limitando le operazioni che possono essere eseguite. Questo paradigma presume di avere i dati di elaborare organizzati in gruppi (stream) e che questi possano essere elaborati applicando ad essi una serie di operazioni. Configurazioni nelle quali una serie di operazioni devono essere applicate a tutti i dati sono comuni. Spesso le operazioni vengono elaborate tramite l'utilizzo di strutture a pipeline al fine di ridurre i tempi di elaborazioni e spesso vengono utilizzate delle cache on-chip al fine di ridurre gli accessi alla memoria centrale. Dato che queste strutture spesso eseguono una serie di operazioni note a priori su estesi insiemi di dati le pipeline e le cache on-chip si possono configurare al fine di ridurre/eliminare le latenze e i blocchi che normalmente si presentano nei microprocessori. Questo permette di realizzare unità con elevate prestazioni ma con delle cache d dimensioni modeste, assegnando la maggior parte dei transistor alle unità di elaborazione, cosa non possibili nei processori tradizionali che dovendo elaborare programmi strutturati in modo arbitrario necessitano di cache di grandi dimensioni e di strutture complesse per seguire il flusso del programma in esecuzione. Durante gli anni 80 lo stream processing è stato estesamente studiato durante lo sviluppo della programmazione dataflow. Un esempio di questi studi è il linguaggio SISAL (Streams and Iteration in a Single Assignment Language).
  • ストリーム・プロセッシング (Stream processing)は、並列処理を実現するプログラミング手法の一つである。ストリームプロセッシングを用いることにより、コンピュータープログラマーはチップ上の多数の'コア'(あるいは、演算の単位)や、それぞれに接続されたバスやメモリ、I/Oなどを別々に管理せずにアクセスできる能力の恩恵を受けることができる。
  • Багатопото́кове обро́блення да́них — "мікропрограма" або спосіб побудови архітектури обладнання, що дають змогу здійснювати одночасне оброблення двох або більше послідовностей даних під керуванням однієї або більше послідовностей команд за допомогою наведених нижче засобів: a) архітектура з одним потоком команд і кількома потоками даних, така як векторний або матричний процесори; b) архітектура з паралельно-централізованим керуванням потоком даних; c) архітектура з множиною потоків даних і множиною потоків команд, уключаючи ті, що тісно зв'язані, близько зв'язані або слабко зв'язані; d) структуровані матриці процесорних елементів, уключаючи систолічні матриці.
dbpprop:hasPhotoCollection
rdfs:comment
  • Stream processing is a computer programming paradigm, related to SIMD, that allows some applications to more easily exploit a limited form of parallel processing. Such applications can use multiple computational units, such as the floating point units on a GPU, without explicitly managing allocation, synchronization, or communication among those units. The stream processing paradigm simplifies parallel software and hardware by restricting the parallel computation that can be performed.
  • Als Streamprozessor wird eine spezielle Art des Koprozessors bezeichnet und gleichzeitig auch eine kleine skalare Recheneinheit, die in solchen Koprozessoren auftreten kann.
  • Lo Stream processing è un paradigma di programmazione parallela di tipo SIMD che permette ad alcune applicazioni di sfruttare semplicemente una forma limitata di elaborazione parallela. Le applicazioni utilizzano delle unità funzionali come FPU o 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.
  • ストリーム・プロセッシング (Stream processing)は、並列処理を実現するプログラミング手法の一つである。ストリームプロセッシングを用いることにより、コンピュータープログラマーはチップ上の多数の'コア'(あるいは、演算の単位)や、それぞれに接続されたバスやメモリ、I/Oなどを別々に管理せずにアクセスできる能力の恩恵を受けることができる。
rdfs:label
  • Stream processing
  • Streamprozessor
  • Stream processing
  • ストリーム・プロセッシング
  • Багатопотокове оброблення даних
owl:sameAs
skos:subject
foaf:page
is dbpprop:redirect of