Skip to main content

ストリーム処理とは何ですか?

streamストリーム処理は、アプリケーションとハードウェアシステムの設計に使用できるコンピュータープログラミングとコンピューターエンジニアリングの概念です。ストリーム処理を使用すると、データはストリームに編成され、その後、ストリーム内のデータを操作するノードまたはプロセッサに供給され、その後、他のノードがそれらを操作できるようにデータがパスに沿って続きます。ストリームの最後に、データはメモリに配置されるか、使用のためにエンドユーザーアプリケーションに渡されます。ストリーム処理を使用しているシステムまたはアプリケーションは、ストリーム情報が1つ以上のソースによって一貫して生成されている場合に最も効果的に機能し、デジタル信号処理(DSP)、イメージングとグラフィックス、または高帯域幅ネットワークトラフィックに効果的になります。ストリーム処理の最も広く実用的なアプリケーションは、コンピューターグラフィックスカードの生産にあります。このカードでは、ストリームプロセッサがグラフィックスハードウェアに組み込まれており、頂点アレイなどの着信グラフィックデータの複数の操作を実行するのに役立ちます。ストリームとしてのデータの概念。異なるソースから情報を描画したり、割り込みメカニズムからメッセージを傍受するのではなく、情報が何らかのプロセスによって照合されたときに、ストリームと呼ばれる単一の行に情報が形成されます。データ要素は異なる場合がありますが、ストリームは一般に順次処理できるのと同じタイプの要素のブロックで構成されています。より多くの処理のために、データを別のノードに渡すことができます。最大効率のために、ノードは、速度のためにレジスタとダイレクトメモリアクセス(DMA)を使用して、中央処理装置(CPU)に直接ロードおよび実行される小さな関数であることを目的としています。ストリーム内の情報が単独で耐えられ、単一のノードの操作の結果に依存していない場合、複数の操作を同時に実行でき、同時に非常に効果的な最適化を可能にするヒントをプログラムコンパイラに提供することもできます。

一般的に、ストリーム処理は、データが一貫して生成され、カメラ、外部センサー、ネットワーク接続などのアプリケーションまたはデバイスによってストリームに押し込まれている状況に適したソリューションです。多くのグラフィックスカードは、ストリームプロセッサを使用して、グラフィックパイプラインを介してレンダリングされたラスター化画像に迅速にデータを変えます。特定のグラフィックカードには、カードのハードウェアに複数のプロセッサまたはノードが組み込まれているため、3次元(3D)グラフィックスにシェーダーが使用されている場合、ストリーム処理が迅速かつ同時に同時に使用される可能性があります。