DBPの基本構成
DBPの基本構成
[画像のクリックで拡大表示]
完全一致の例
完全一致の例
[画像のクリックで拡大表示]
文献検索の例
文献検索の例
[画像のクリックで拡大表示]
SOPとDBPの違い
SOPとDBPの違い
[画像のクリックで拡大表示]
SOPによる顔認識のデモ
SOPによる顔認識のデモ
[画像のクリックで拡大表示]

 一般的なCPUとメモリーを組み合わせた情報処理システムに比べて、データ検索やデータマイニングなどの処理速度を従来比100万倍など、桁違いに高速化できるメモリー型コンピューティング技術を、ベンチャー企業のエイ・オー・テクノロジーズが開発している。インメモリー・データベースやビッグデータ解析、DNA解析などへの応用を目指す。

 開発したのは、データベース検索チップ「Data Base Processor(DBP)」。この1月にFPGA版の試作品が完成する。共同開発者の電気通信大学 大学院 情報理工学研究科 先進理工学専攻 准教授の範公可氏が、技術の詳細を2014年2月14日に開催される科学技術振興機構(JST)主催の「分野別 ビッグデータ 新技術説明会」で発表する(関連ページ)。

 これまでのCPUとメモリーを組み合わせた情報処理システムでは、データ検索などを行う際に、データを探しやすくするためのインデックスを作成したり、データを並び替えたりする前処理が必要であり、高速化が難しかった。エイ・オー・テクノロジーズが開発中の技術では、演算器を搭載したメモリー内で簡単な処理を行うことで、インデックスなどを作成せずに目的のデータを素早く見つけ出すことができるという。

 これまでのメモリーはワード幅が32~64ビットと少なかったが、今回のメモリーはワード幅が例えば100万(1M)ビットと多いのが特徴。さらに、100万本の各ビット線の末端に「1ビット演算器」をそれぞれ接続した形態を採る。1ビット演算器はフリップフロップを内蔵した数十ゲート規模の回路であり、ANDやOR、NOT、EXORといった基本的なビット演算が可能である。

 ビット線方向のデータ列を「レコード」と定義し、レコード内のビット情報を、1ビット演算器に代入したり、フリップフロップで保持した過去のビット情報と演算したりすることで、目的のデータと一致したレコードを見つけ出す。この時、メモリー内では100万個のレコードを並列に処理できるため、膨大な情報の中から目的のレコードを瞬時に見つけられるという。

 また、CPUが情報を探す複雑な処理から解放されるため、システム全体の制御は例えばARMコアのような低消費電力CPUで実現できるという。メモリー自体の種類としてはSRAMやDRAM、フラッシュメモリーなど、さまざまな技術に利用でき、将来的には不揮発性のMRAM(磁気メモリ)に適用することも狙っている。