O que é processamento de fluxo?
O processamento de fluxo é um conceito de programação de computador e engenharia de computadores que pode ser usado para projetar aplicativos e sistemas de hardware. Quando o processamento do fluxo é usado, os dados são organizados em fluxos que são alimentados a nós ou processadores que manipulam os dados no fluxo, após o que os dados continuam ao longo do caminho para que outros nós possam manipulá -los. No final do fluxo, os dados são colocados na memória ou passados para um aplicativo de usuário final para uso. Um sistema ou aplicativo que está usando o processamento de fluxos funciona de maneira mais eficaz quando as informações do fluxo estão sendo geradas de forma consistente por uma ou mais fontes, tornando-as eficazes para o processamento de sinal digital (DSP), imagens e gráficos ou tráfego de rede de alta largura de banda. A aplicação prática mais difundida do processamento de fluxos está na produção de placas de computação gráfica, na qual os processadores de fluxo são incorporados no hardware gráfico para ajudar a executar várias operações em dados gráficos recebidos, como vérteisMatrizes.
A base para o processamento do fluxo gira em torno do conceito de dados como um fluxo. Em vez de desenhar informações de fontes díspares ou interceptar mensagens de um mecanismo de interrupção, um fluxo de dados é formado quando as informações são agrupadas por algum processo em uma única linha chamada fluxo. Os elementos de dados podem variar, mas o fluxo geralmente consiste em blocos dos mesmos tipos de elementos que podem ser processados sequencialmente.
Os processadores ou nós usados no processamento de fluxos aceitam um fluxo e executam uma determinada operação nos dados, após os quais os dados podem ser transmitidos para outro nó para mais processamento. Para obter a máxima eficiência, os nós devem ser pequenas funções que são carregadas e executadas diretamente na Unidade Central de Processamento (CPU), usando registros e acesso direto à memória (DMA) para velocidade. Se as informações dentro do fluxo puderem ficar sozinhas e não dependerO resultado das operações de um único nó, em seguida, várias operações podem ser executadas no fluxo simultaneamente, além de fornecer ao compilador do programa dicas que podem permitir otimizações muito eficazes.
O processamento de fluxo geralmente é uma boa solução para situações nas quais os dados estão sendo gerados e empurrados constantemente para o fluxo por um aplicativo ou dispositivo, como uma câmera, sensor externo ou conexão de rede. Muitas placas gráficas usam processadores de fluxo para transformar rapidamente os dados que entram em um pipeline gráfico em uma imagem renderizada e rasterizada. Certas placas gráficas têm vários processadores ou nós incorporados no hardware da placa, para que o processamento de fluxos possa ocorrer de forma rápida e às vezes simultaneamente, como costuma ser desejável quando os shaders estão sendo usados para gráficos tridimensionais (3D).