コンピュータのプロセッサといえばCPUとGPUが代表的かと思います。
CPUは名前の通りコンピューター全体の制御や演算処理を担い、
GPUは画面への描画処理といった部分を担当するのが一般的です。
複雑かつ連続した命令を処理するのが得意なCPUと、単純かつ数の多い命令を並列処理するのが得意なGPUで役割を分担することでパフォーマンスを向上させています。
GPUはその並列処理性能の高さから、近年では機械学習やHPC、仮想通貨のマイニングといった用途でも用いられるようになってきました。
そんな中、第3のプロセッサとも目されるのがDPU(Data Proccesing Unit)です。
クラウドサービスの普及をはじめネットワークの通信量は大きく増加しているほか、そこに暗号化といったセキュリティ処理などが加わることによって、データ処理に関わるCPUへの負担は増大しています。
CPUは暗号化といった処理を苦手としているため、これらの負担が増すことによって本来必要な処理まで手が回らず、システム全体のパフォーマンスが低下する原因になってしまいます。
GPUが描画処理をCPUから切り離すことを目的とするように、DPUはデータ処理をCPUから切り離すことで、CPUへの負担を軽減することを目的にしています。
以前から同様の目的を持ったSmartNICと呼ばれる製品が存在していましたが、DPUはプログラマブルであり、状況に応じた柔軟な設計が可能になります。
DPUをベースにしたSmartNICも登場しています。
参照:
https://blogs.nvidia.co.jp/2020/07/03/whats-a-dpu-data-processing-unit/