見出し画像

HDCアクセラレータ「HPU」

井阪 友哉(いさか ゆうや)

 井阪さんは,HDC(Hyperdimensional Computing)のハイパーベクトルを効率的に処理できるHDCアクセラレータ「HPU」をFPGAで開発した.HDCは1990年代に高い次元性とランダム性に依存する認知モデルとして提唱されたが,1950年代に登場した深層学習と比べると比較的新しい概念で歴史が浅い.そのため,HDCはいまだメジャーではなく,実際に高速性と低消費電力が実現できるハードウェアの開発や,世の中のさまざまな分野の開発者がそれぞれの認識問題の課題に対してHDCを活用して解くまでに至っていない.

 HDCは,数千から数万次元のベクトルのHyper Vectors(以下,超次元ベクトル)を用いた計算モデルであり,さまざまな認知タスクに応用可能と言われている.HDCでは超次元ベクトルに対しての独自の演算が定義されており,バイナリの超次元ベクトルとして応用することでコンピュータで扱いやすくなる.

 HDCアクセラレータ「HPU」では,図-1に示すHDC独自の演算である3種の演算(Bind,Bound,Permutation)すべてに対して高速に処理できる演算器を実装したアーキテクチャを設計・開発した.

図-1 HDCアクセラレータ「HPU」のシステム構成図

 図-1の左側で示すように,CPUとHPUが協調動作するアーキテクチャとして開発した.このアーキテクチャによりHDCアクセラレータの応用先が広がる.HDCを応用したエッジサーバのプログラムを簡単に開発できるように,C言語を使って簡単にCPUから実行できるライブラリも開発した.これにより,開発者はライブラリの関数を呼び出すだけで,簡単にCPUからHPUに指示を出すことが可能になっている.

 実際に実用可能性を検証するために,HDCを用いた画像認識・音声認識・言語認識の3つのアプリケーションテストを開発し実行速度を計測した.HPUはFPGAとARM-v7 CortexA9プロセッサをワンチップに搭載したZynq XC7Z020 SoCを搭載したXilinx PYNQ-Z1ボード上に実装し,ホストのCPUであるARM-v7から扱い,1,024次元の超次元ベクトルを処理する.いずれの結果でもM1 Max(3.00GHz),Intel Core i7(1.80GHz),ARM-v7 Cortex-A9(0.666GHz)と比較した場合,大幅な速度改善が確認され,最大で169倍の高速化に成功した.また,電力効率を示す指標の1つであるエネルギー遅延積(ED積)は最大13,469倍も改善した.それぞれの認識タスクにおける各CPUとの速度比較のグラフは図-2の結果となった.

図-2 アプリケーションテストにおける速度比較

 今回の成果を広めることができれば,これまでよりも手軽で高速にHDCを実行できるようになるため,HDCアプリケーションの研究者や開発者は実験や開発に必要な試行錯誤のサイクルを大幅に改善できるようになる.最近,別の応用物理の分野ではRNNの一種であるRC(Reservoir Computing)が注目されており,物性デバイスとの実現性の相性の良さから,ハードウェアの試作やエッジIoTデバイスでの概念実証実験が進みつつある.HDCの研究も今後盛り上がってくれると嬉しい.

 また,今回はFPGAで実装したが,ASIC化,つまりHDCアクセラレータに必要な機能のみを組み合わせてチップを製造することで,チップ単価が安くなり,消費電力も低減し,熱対策の改善などが可能となる.RISC-Vの組み込みも親和性が高い.

 このように高速な計算アーキテクチャを一から検討するという技術的に難易度の高い低レイヤのプロジェクトであったが,DMA転送や並列実行可能性など,ボトルネックを解消できそうな各種ステージを井阪さん自らが見つけて特定し,消費電力当たりで高い計算効率性能を出すことができた.今後,この成果を論文の形できちんとまとめ,HDCを利用するための環境やツールチェーンの基盤を整備することによって,世界中でHDCアルゴリズムの検証やHDCのプロトタイプが作りやすくなり,HDCの普及と発展につながることを期待したい.

(担当PM・執筆:竹迫 良範)

[関連URL]
https://github.com/yuya-isaka/HPU (開発中)

[統括PM追記] HDCは一般のニューラルネットワークよりも単純と言われ,人間の小脳のような情報処理をするらしい.並列の基本演算が3種類しかないので単純で均質な構造で実現できる.だから,省エネなのだろう.応用がある程度限定されるようだが,はまればドツボなのは,井阪さんの実験結果を見ても明らかだ.大昔,ホモジニアスな計算対ヘテロジニアスな計算というパラダイム論争があったが,HDCはホモジニアスのほうだろう.ホモとヘテロが階層的に重なることで,本物のAIができるという話があったことを思い出した.

(2023年7月3日受付)
(2023年9月15日note公開)