Wat is streamverwerking?

Stroomverwerking is een concept voor computerprogrammering en computertechniek dat kan worden gebruikt om toepassingen en hardwaresystemen te ontwerpen. Wanneer stroomverwerking wordt gebruikt, worden gegevens georganiseerd in stromen die vervolgens worden gevoed aan knooppunten of processors die de gegevens in de stroom manipuleren, waarna de gegevens langs het pad verdergaan zodat andere knooppunten ze kunnen manipuleren. Aan het einde van de stream worden de gegevens in het geheugen geplaatst of doorgegeven aan een eindgebruikertoepassing voor gebruik. Een systeem of toepassing die stroomverwerking gebruikt, werkt het meest effectief wanneer de stroominformatie consistent wordt gegenereerd door een of meer bronnen, waardoor het effectief is voor digitale signaalverwerking (DSP), imaging en grafische afbeeldingen of netwerkverkeer met hoge bandbreedte. De meest voorkomende praktische toepassing van stroomverwerking is de productie van grafische computerkaarten, waarbij stroomprocessors in de grafische hardware zijn ingebouwd om meerdere bewerkingen op inkomende grafische gegevens, zoals hoekpuntreeksen, te helpen uitvoeren.

De basis voor stroomverwerking draait om het concept van gegevens als een stroom. In plaats van informatie te trekken uit ongelijksoortige bronnen of berichten te onderscheppen van een onderbrekingsmechanisme, wordt een gegevensstroom gevormd wanneer informatie door een of ander proces wordt samengevoegd tot een enkele lijn die een stroom wordt genoemd. De gegevenselementen kunnen variëren, maar de stroom bestaat meestal uit blokken van hetzelfde type elementen die opeenvolgend kunnen worden verwerkt.

De processors of knooppunten die worden gebruikt bij stroomverwerking accepteren een stroom en voeren een gegeven bewerking uit op de gegevens, waarna de gegevens kunnen worden doorgegeven aan een ander knooppunt voor meer verwerking. Voor maximale efficiëntie zijn de knooppunten kleine functies die rechtstreeks op de centrale verwerkingseenheid (CPU) worden geladen en uitgevoerd, met behulp van registers en directe geheugentoegang (DMA) voor snelheid. Als de informatie in de stream op zichzelf kan staan ​​en niet afhankelijk is van het resultaat van de bewerkingen van een enkel knooppunt, kunnen meerdere bewerkingen tegelijkertijd op de stream worden uitgevoerd, terwijl de programmacompiler ook hints krijgt die zeer effectieve optimalisaties mogelijk maken.

Streamverwerking is over het algemeen een goede oplossing voor situaties waarin gegevens consistent worden gegenereerd en in de stream worden gepusht door een toepassing of apparaat, zoals een camera, externe sensor of netwerkverbinding. Veel grafische kaarten gebruiken stream-processors om gegevens die via een grafische pijplijn binnenkomen snel om te zetten in een gerenderde, gerasterde afbeelding. Bepaalde grafische kaarten hebben meerdere processors of knooppunten ingebouwd in de hardware van de kaart, dus stroomverwerking kan snel en soms gelijktijdig plaatsvinden, zoals vaak wenselijk is wanneer shaders worden gebruikt voor driedimensionale (3D) grafische afbeeldingen.

ANDERE TALEN

heeft dit artikel jou geholpen? bedankt voor de feedback bedankt voor de feedback

Hoe kunnen we helpen? Hoe kunnen we helpen?