検索
特集/連載

DPU(Data Processing Unit)とは何か――何ができる? なぜ必要?GPUの次はDPUに注目

専用ハードウェアが復権しつつある。その最たるものが並列演算に特化したGPUだ。そして今、「DPU」が注目されている。DPUはなぜ必要なのか。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 専用ハードウェアは、安価な汎用(はんよう)ハードウェアで実行されるソフトウェアに置き換えられてきた。これに仮想化とコンテナが加わり、ITは多くの点でソフトウェア定義になった。

 だが最近、汎用ハードウェアの限界が目立ってきた。

 仮想アプリケーションであっても、データの保存や取得、タスクの受け取りと結果の出力など、どこかの時点で物理環境に接続する必要がある。ネットワークへの要求も厳しくなり、膨大な演算を必要とする機械学習などを組み込んだアプリケーションが増えるにつれ、汎用ハードウェアは適切ではなくなってきた。

 そこで専用ハードウェアが復権しつつある。最も広く利用されている専用ハードウェアといえばGPUだ。そして最近注目されているものにはDPU(Data Processing Unit)やIPU(Infrastructure Processing Unit)、SPU(Service Processing Unit)などがある。

DPUとは何か


iStock.com/Motion Loop

 DPUという名前はやや混乱を招く。そもそもデータを処理しないコンピュータがあるだろうか。だがBroadcom、Intel、Marvell Technology Group、Nebulon、NVIDIAらは、データの移動と保存に関係する機能を担うデバイスをDPUと称している。DPUはTCPとRDMAによるネットワークアクセラレーション、データ圧縮、ネットワーク仮想化、データ暗号化などを処理する。

 これも珍しいことではないように思える。これらは既に「スマートNIC」が行っており、メインフレームやミニコンピュータはかなり前からI/Oをオフロードするプロセッサを搭載していた。

 スマートNICとの違いは2つある。一つは特定のワークロードだけが対象ではないことだ。もう一つは、DPUはプログラマブルであり、コンピューティング能力とメモリによって高度な構成可能性を実現することだ。

 これらの専用デバイスはいつまで使われるのか。これらの機能は最終的にCPUに統合されるのではないか。既に、AI機能がCPUに組み込まれるのを見ている。

 「Apple M1」のカスタム行列乗算ユニットや「IBM Telum」のオンチップアクセラレーションなどのAI機能は推論が主な目的だ。分析など他の作業にも役立つが、AIモデルを構築してトレーニングする作業には向いていない。

 DPUはプロセッサ要素(通常はArmベース)を含むため、アプリケーションを実行できる。だが、基本的にはネットワークやデータプレーン内あるいはそれらに近い場所に配置する。DPUでファイアウォールを実行する(サーバ間トラフィックが増えているため意義がある)ことは可能だが、データベースやERPを動かすことはできない。

 構成可能性のニーズがなくなることはない。もちろん、全てのユーザーやアプリケーションがGPU、DPU、IPU、SPUを必要とするわけではない。だが、ワークロードの緻密さと複雑さが増すにつれ、ボトルネックやパフォーマンスを向上させる機会がどこにあるかを知ることが重要になる。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る