検索
ニュース

組み込みコンピューティングに向けた、ハードウェアアクセラレーションの選択肢SYSTEM DESIGN JOURNAL(2/6 ページ)

組み込みコンピューティングを加速させるハードウェア・アーキテクチャとは何でしょうか。DSP?GPU?それともメニーコアでしょうか。どのアプローチが最も適するのかを考察します。

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

 de Dinechin氏は加えて、単純なCPUコアの利点はGPUにない特徴にある、と説明します。「非決定性は、アウト・オブ・オーダー実行、投機、スレッド間の物理リソース共有など、性能を絞り出すための最近の機能に起因します」。この分類は、アクセラレータアーキテクチャをうまく整理しており、後続の論文の主張と比較する際の一般論として役立ちます。

 もう1つのどちらかといえばクラウド中心の研究は、Microsoftの研究者であるEric Chung氏によるものです。Chung氏は、CPUベースのサーバ環境で畳み込みニューラルネットワーク(CNN)を高速化するさまざまな方法について結果を発表しました。彼のチームは、CPUのみの場合、CPUとGPU、または ASICアクセラレータのリモートプールを組み合わせた場合、GPUまたはASICを各CPUに接続した場合、FPGAを各CPUに接続した場合について検討しました。

 Chung氏はFPGAの場合に焦点を当てながら、付随する制御ロジックをFPGAに実装して、算術論理ユニット(ALU)のシストリックアレイを構築する方法について説明しています。それによれば、このデザインは数値精度、アレイ規模、データアクセスパラメータに合わせてスケール可能ということです。

 最初のテストでは、このFPGAデザインをアルテラのArria 10に実装した場合、ソフトウェア実装した同じCNN評価タスクを8コア Xeonのデュアルプロセッサと比較して7倍高速であり、タスク当たりの消費電力は40分の1となりました。

 しかし、高度にチューニングしたバージョンのワークロードを NVIDIA「Titan X」GPUボード上で実行した場合と比較すると、速度は10分の1、エネルギー効率は半分にとどまりました。彼のチームは、FPGAデザインを最適化し、チップ全体を使ってスケールアップすれば、性能はTitan Xの5分の1程度まで、ピークGOPS/ジュールは50%近くまで改善するものと予想しています。

 CNNの実行はGPUのアーキテクチャに理想的なタスクであることが証明されたと、Chung氏は結論付けています。しかし、FPGAの方がエネルギー効率に優れていることに加え、リコンフィギュレーションによって他のタスクを扱うことが可能です。FPGAによるBing検索エンジンの高速化や、サーバボード上のネットワークオフロードアダプターとしての FPGAの使用は、既にMicrosoftによって実証されています。

 この2つの論文は、現在の半導体およびパッケージングプロセスで実現可能な一連のアクセラレータアーキテクチャを分類する際のインデックスとなりましたが、さらに特定の選択肢について詳しく検討している論文もありました。まず、恐らく最も古くからあるアイデアであるDSPについて見てみましょう。

生き続けるDSP

 DSPチップは、もはやビジネスとしての面白みはないかもしれませんが、いまでも多くの特定用途向けSoCで重要な役割を担っています。モデムやオーディオプロセッサのような機能ブロックには、小型のDSPコアがほとんど目に付かないように組み込まれています。その一方で、高性能CPUの技術を取り入れることにより、DSPコアは画像処理やマシンビジョンなどの高負荷なタスクに欠かせないものに存在となっています。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る