Mitglied : Anmelden |Anmeldung |Wissen hochladen
Suchen
Stream-Verarbeitung [Änderung ]
Die Stream-Verarbeitung ist ein Programmierparadigma, das der Datenflussprogrammierung, der Ereignisstromverarbeitung und der reaktiven Programmierung entspricht und es einigen Anwendungen ermöglicht, eine begrenzte Form der Parallelverarbeitung einfacher zu nutzen. Solche Anwendungen können mehrere Recheneinheiten verwenden, wie z. B. die Gleitkommaeinheit auf einer Grafikverarbeitungseinheit oder feldprogrammierbare Gatterarrays (FPGAs), ohne die Zuordnung, Synchronisation oder Kommunikation zwischen diesen Einheiten explizit zu verwalten.
Das Stream-Processing-Paradigma vereinfacht parallele Software und Hardware, indem es die parallele Berechnung beschränkt, die ausgeführt werden kann. Bei einer Sequenz von Daten (einem Strom) wird eine Reihe von Operationen (Kernel-Funktionen) auf jedes Element im Strom angewendet. Die Kernel-Funktionen sind normalerweise pipelined, und es wird versucht, eine optimale Wiederverwendung des lokalen On-Chip-Speichers zu versuchen, um den Bandbreitenverlust zu minimieren, der für die externe Speicherinteraktion akkreditiert ist. Ein einheitliches Streaming, bei dem eine Kernelfunktion auf alle Elemente im Stream angewendet wird, ist typisch. Da die Kernel und Stream-Abstraktionen Datenabhängigkeiten offenlegen, können Compiler-Tools On-Chip-Management-Aufgaben vollständig automatisieren und optimieren. Stream-Processing-Hardware kann z. B. Scorecarding verwenden, um einen direkten Speicherzugriff (DMA) zu initiieren, wenn Abhängigkeiten bekannt werden. Die Eliminierung der manuellen DMA-Verwaltung verringert die Softwarekomplexität, und eine damit verbundene Eliminierung für Hardware-Cached-I / O reduziert die Datenbereichsgröße, die von spezialisierten Computereinheiten wie arithmetischen Logikeinheiten in den Dienst einbezogen werden muss.
Während der 80er Jahre wurde die Stream-Verarbeitung innerhalb der Datenfluss-Programmierung untersucht. Ein Beispiel ist die Sprache SISAL (Streams und Iteration in einer Single Assignment Language).
[Parallele Berechnung][Sisal]
1.Anwendungen
2.Vergleich mit früheren parallelen Paradigmen
2.1.Konventionelles, sequenzielles Paradigma
2.2.Paralleles SIMD-Paradigma, gepackte Register (SWAR)
2.3.Parallel-Stream-Paradigma (SIMD / MIMD)
3.Forschung
3.1.Programmiermodell Notizen
3.2.Berechnungsmodelle für die Stream-Verarbeitung
3.3.Generische Prozessorarchitektur
3.4.Hardware-in-the-Loop-Probleme
4.Beispiele
5.Stream-Programmierbibliotheken und Sprachen
[Laden Mehr Inhalt ]


Urheberrecht @2018 Lxjkh