Memorism Processor

技術解説書

メモリズムプロセッサの技術について詳しく解説します。

目次

  1. イントロダクション
  2. 半導体産業の動向とコンピュータの課題
    1. 半導体業界やコンピュータの研究期間の動向
    2. ノイマン型コンピュータの課題
    3. 前処理や複雑なアルゴリズム
  3. メモリズムプロセッサによるコンピュータの課題の解決
    1. 今後の情報処理社会とメモリズムプロセッサ
    2. DBPプロセッサ
    3. XOPプロセッサ
    4. SOPプロセッサ
    5. 情報処理の最適化
    6. 情報処理の分業化
  4. メモリズムプロセッサによる課題の解決成果
    1. プログラムの平易化
    2. 情報処理の近代化へのパラダイムシフト
    3. ノイマン型コンピュータのリニューアル
    4. これまでの理論検証に関して

1. イントロダクション

情報処理の処理速度を上げるにはサーバを多用すればよい、性能を上げるために電力消費が大きくなっても止むを得ない、検索など情報を探す処理はインデックスを頼りにすればよい、画像の認識は機械学習に任せればよい、本格的ビッグデータ社会、IoT社会、AI社会を迎えるに当たって、以上のような情報処理の常識や価値観(パラダイム)を見直す必要がある。

メモリズムプロセッサは今後の本格的ビッグデータ社会、IoT社会 、AI社会を見据えて開発されたプロセッサである。特にデータ検出処理が「超高速」である事と「超省電力」である事は「情報処理上のあらゆる課題を解決」するといっても過言ではないほど重要な意味を持っている。然しながら、「メモリズムプロセッサを正しく理解するのは難しい、馴染みにくい」と感じる方や、誤解をしている方も大勢いる。本技術解説書は、以上のような背景からメモリズムプロセッサの要点を易しく解説する。

2. 半導体産業の動向とコンピュータの課題

2-1. 半導体業界やコンピュータの研究機関の動向

半導体の微細化技術が限界に近づきCPUやGPUの性能向上が期待出来なくなった今、世界中で量子コンピュータなどの新しいコンピュータの研究が加速している。量子コンピュータの場合、実現出来る処理が組み合わせ問題の解決などに限定されている事や、小型化を含め汎用品として商品化するまでの時間が問題である。このような背景から、メモリと演算機能を一体化したIMC(インメモリコンピューティング)≒NMC(ニアメモリコンピューティング)≒PIM(プロセスインメモリ)や、更にはヘテロジニアスコンピューティング(Heterogeneous Computing)の研究が活発化している。
残念ながら日本でのこれらの研究は皆無に近い状況である。

2-2. ノイマン型コンピュータの課題

現在我々が日常使っているコンピュータはノイマン型コンピュータである。ノイマン型コンピュータは算術演算を機械化する事を目的として誕生した。このコンピュ―タは汎用性があるので様々な分野で利用され、今日の情報化社会を築き上げた事は紛れもない事実である。然しながら苦手な処理(効率が悪く時間のかかる仕事)も少なくない。

苦手な処理の代表的な処理は、「膨大な情報(データ)の中から意図するデータの検出を伴う情報処理」である。「データの検出を伴う情報処理」の一例をあげれば、「検索・照合・認識・認証・クラス分け・並べ替え」などである。ノイマン型コンピュータは、算術演算などの情報処理に都合の良い構成であるが、演算機能とメモリが物理的に分離されている構成(アーキテクチャ)であるのでバスボトルネック問題が生じ、「データの検出を伴う情報処理」はバスボトルネックの影響を真面に受ける事になる。

2-3. 前処理や複雑なアルゴリズム

従って「検索・照合・認識・認証・クラス分け・並べ替え」などの処理を高速に行うためには、事前にインデックスを作成する事や複雑なアルゴリズムを用いて情報処理をする事で対処する以外ない。然しながらこれらのインデックスやアルゴリズムは、前処理や更新処理が必要であるので、リアルタイム性が犠牲になるばかりでなくシステム全体のパフォーマンスや電力性能を劣化させる結果となり、専門性も高くなるので恒久的な解決策とは言い難い。先に説明したバスボトルネックの問題は、現在のコンピュータの誕生間もなくの頃から問題視されてきたが、これまで有効な解決策もなく放置されてきた。いわば急場凌ぎのようなコンピュータの利用方法となっている事に留意する必要がある。

3. メモリズムプロセッサによるコンピュータの課題の解決

3-1. 今後の情報処理社会とメモリズムプロセッサ

「検索・照合・認識・認証・クラス分け・並べ替え」などの「データの検出を伴う情報処理」は、ビッグデータ、IoT、AIなど今後の情報処理社会に深く関わるので、性能や機能の向上が不可欠である。然しながらムーアの法則で知られる半導体の微細化技術が限界に近づき、従来型プロセッサ(古典的プロセッサ)であるCPUやGPUの継続的な性能向上が期待出来ず、新しい考え方の情報処理プロセッサが必要になる。「データの検出を伴う情報処理」に適した構成(アーキテクチャ)にするためには、メモリと演算機能を一体にする以外方法はない。メモリズムプロセッサは、以上のような問題を解決するために発明されたメモリと演算機能が一体となったプロセッサである。

CPUやGPUは、算術演算と論理演算が可能なALU(Arithmetic and Logic Unit)や、浮動小数点演算が可能なFPU(Floating Point Unit)の2種類の演算機能で構成されている。これらの演算機能はトランジスタ数が多く、高コストで消費電力も大きいので、1つのチップにCPUの場合数十個、GPUの場合数千個の実装が限界となる。このように、高コストで消費電力の大きな演算機能に「検索・照合・認識・認証・クラス分け・並べ替え」などの単純処理の繰り返しは、CPUやGPUに勿体ない処理をさせている事に留意する必要がある。

一方メモリズムプロセッサの演算機能は「検索・照合・認識・認証・クラス分け・並べ替え」に特化し、トランジスタ数が少なく、省スペース・低コスト・省電力であるので、1つのチップで百万個を超える超並列処理も可能となり、「検索・照合・認識・認証・クラス分け・並べ替え」に向いた構成となっている。
メモリズムプロセッサは、今後の情報処理の進化に不可欠な情報処理である「検索・照合・認識・認証・クラス分け・並べ替え」などの処理を効率的に実現出来るよう構成されたコプロセッサやアクセラレータと考えればよい。従来型プロセッサであるCPUは、「OS処理、制御処理、通信処理」が得意、GPUは「算術演算」が得意であるのでこれらの処理を行い、「検索・照合・認識・認証・クラス分け・並べ替え」などの苦手な情報処理は、コプロセッサやアクセラレータであるメモリズムプロセッサに肩代わりさせる事が可能になる。

メモリズムプロセッサは、現在のコンピュータの苦手な処理の代表格である「データ検出を伴う情報処理」を肩代わりする事を目的とし、情報処理の目的と情報(データ)の違いにより体系化された、3タイプ6種類のプロセッサによるコンピューティング技術である。
このようなコンピューティング技術は全世界で弊社以外なく、体系化する事で、演算性能の著しい進化を得るばかりでなく、情報処理の近代化(用語解説参照)と呼ぶに相応しいコンピュータのリニューアル(用語解説参照)が可能になる。

また、メモリズムプロセッサは現在の半導体生産ラインで直ぐに生産出来るので、半導体メーカにとって設備投資の負担が無い事も大きな魅力であり、メモリズムプロセッサは安価に市場に供給する事が可能になる。

3-2. DBPプロセッサ

DBPは汎用データの検索や照合を高速化する事を目的としたプロセッサである。従来のCPUとメモリによるデータの検索や照合は、CPUによるメモリのスキャンが必要になる。

例えばメモリに記憶されたデータの中から、「オール0」のデータを検出する事を考えてみよう。CPUにより「オール0」のデータを検出するためのスキャンは、処理の大半(例えば99%)が意図するデータではない、言い換えれば99%が無駄な仕事になっている。この問題を解決するためには、インデックスを事前に用意するなどの前処理が必要になり、真の意味のリアルタイム性が失われる事になる。さらにこのインデックスは、基データが変化する度に更新をする必要がある。この更新処理は大きな負荷となるので、更新処理を高速化する場合には高性能な(電力消費の大きな)CPUを使用する必要がある。従って検索システムは大型化し、消費電力が大きく、専門性も高くなるので、高価で開発期間も長期間になる。

DBPは以上のような情報処理上の問題を根元から解決するプロセッサである。DBPはメモリ上のデータの行列配列を反転する考え方で、データの列幅を大幅に拡大する事と超省スペース(超低コスト)の演算器をメモリチップ上に搭載させる構成のプロセッサである。この構成とする事により、インデックスが不要になり、電力が削減され、超高速にデータの検索や照合が可能になる。またDBPを必要個数分並列接続して利用する事で任意のデータサイズにスケールアップ可能である。DBP自身が検索・照合を自己完結型で処理するので、DBPの数が増えても(データ容量が増えても)一定の時間で処理が可能になる。従ってDBPを使用した検索システムは小型軽量、省電力化されて専門性も低くなるので、低コスト、短期間でシステムを構築する事が可能になる。

DBPをDRAMメモリに実装した場合の一例を示す

  1.  任意のサイズのデータテーブルをDBPに記憶するだけ。NOインデックス・NOチューニング・1CPUで640億件の検索が100m秒以内(*単純に早くするだけであれば幾らでも速く出来る)
  2.  汎用DRAMの企画(JEDEC)に準拠、DBPの超並列演算機能を搭載、汎用メモリとしても利用可能、信頼性が高く温度特性や演算精度が保証される
  3.  通常のDRAMチップの2倍程度(最大)の電力で、然もCPUの数を大幅に削減できるのでシステム全体の発熱が少なく電力性能に優れる
  4.  検索や照合のための前処理(インデックス作成)やチューニングが不要になるのでリアルタイム性が高く、インデックスの更新処理の必要がない(データの書き換えのみ)
  5.  前処理やチューニングが不要になるのでデータベースの専門家以外のエンジニア(プログラマ)でもデータベースの構築が可能になる
  6.  CPUとの親和性が高く、サーバからPCまで幅広く利用できるので、多くの需要が期待される。

DBPはビッグデータの検索や照合に適した標準型DBP(SーDBP)とビットマップ演算に適したビットマップ型DBP(B-DBP)の2種類のDBPを利用する事が出来る。

3-3. XOPプロセッサ

XOPは2組のデータ群を効率的に(超並列で)比較し、一致もしくは類似するデータを検出する事を目的としたプロセッサである。CPUによるn個のデータとm個のデータ群の比較演算は、(n×m)/2回の演算が必要になり、nならびにmが大きくなるとCPUの負担は膨大になる。XOPはこのようなCPUによる比較演算の問題を解消するためのプロセッサである。

チップ内には、XデータならびにYデータを記憶する2組のメモリ部と、2組のメモリからのデータ線の交点にデータを比較演算する演算器が大量に組み込まれている構成である。一例としてビットシリアル比較演算の結果、XYがそれぞれ1Kであれば、1M(100万)個のビットシリアルの比較演算器が組み込まれる事になる。そして、XならびにYのデータが一致もしくは類似(マッチ)している場合に、そのアドレスを外部に出力する構成である。XYを繰り返しバッジ処理する事により、1K×1Kの演算のみならず、1億×1億などのデータ比較を可能にし、1M個の演算器が並列に比較演算を行うので、CPUによる逐次比較を根元的に進化させる事が可能になる。XOPの2組のデータのうち1組を既知のデータとする事により、ヒストグラムの作成、ソーティングの実行、相関の検証、クラス分けなど、CPUの負担の大きな処理を肩代わりする事が可能になる。

3-4. SOPプロセッサ

SOPはパターン認識技術の標準化や汎用化を目指したプロセッサである。パターン認識技術は、知識処理の原典とも呼ぶべき技術であると広く理解されているものの、CPUやGPUはパターン認識が苦手である。その原因の一つとして、パターン認識技術の基本的な手段はパターンマッチングであるが、CPUやGPUによるパターンマッチングは効率が悪く利用する事が出来ないからである。

パターンには文字列や時系列データなど1次元配列からN次元配列までの配列がある。これまでこれらの配列データに対するパターンマッチングの利用について、1次元配列である文字列は正規化表現で知られるパターンマッチングが広く利用されている。正規化表現は文字列のみでなくDNAの塩基配列の解析などにも利用されている。然しながら、2次元配列である画像のパターンマッチングは古くから利用されてきたが、現在はテンプレートパターンが得やすい物体の位置決めや外観検査などの分野に利用されるのみとなっている。その原因は、画像データのパターンマッチングを行うためのテンプレートパターンの作成が複雑で最適なパターンが求めにくい事、そして致命的な原因は、CPUやGPUによるパターンマッチング処理は時間がかかり過ぎる事である。

従って、顔の検出にはHaarアルゴリズム、人体検出にはHOGアルゴリズム、汎用検出にはSIFTなどの複雑なアルゴリズムを駆使するか、深層学習のような機械学習に頼らざるを得ない状況となっている。然しながら「検出や認識の対象物」そして「検出や認識の目的」に適したアルゴリズムや機械学習を選択して利用する必要があり専門性が高く、開発期間、開発コストに課題がある。

SOPは以上のような問題を解決するために、これまで困難とされていたパターンマッチングをハードウェアで実現し、パターン認識技術の根元的な進化と標準化を目的としたプロセッサである。SOPは1次元からN次元のパターンマッチングが可能であるが、ニーズの多い2次元配列の画像のパターンマッチングについて説明をする。

SOPは従来の集合演算(ブール演算)を「位置を加えた集合演算」に拡張して集合演算を実現するものである。位置を含めた集合演算とする事により、画像上のエッジ、コーナー、領域、パターンなどの検出=広義のパターンマッチングが可能になる。つまり画像上の様々な物体そのものや特徴を、複雑なアルゴリズムを利用する事や学習をさせる事なく超高速に検出する事が可能になる。

SOPをASICで実現した場合、試作レベルのASICでもノートパソコンのCPU(TDP15W程度)に比較して1万倍以上高速にパターンマッチングが実現出来る事が確認されている。

従って1回の集合演算(広義のパターンマッチング)は数μ秒程度となり、しかも集合演算時の電力は1W程度、非演算時の電力はほぼ0Wとなる。今後ASICの製品化を目指す事により100万倍もの電力性能が期待される。

超高速で広義のパターンマッチングが可能であるので、画像認識分野で従来から問題とされているテンプレートパターンの最適化問題や画像の回転やスケーリングに伴う問題をクリアする事が可能になる。
標準化されたテンプレートパターンを利用する事により、ソフト開発が容易でリアルタイム性の高い画像認識が可能になる。

2次元(画像)のSOPの主な応用例を以下に示す

  1.  特定のエッジ、コーナー、領域、パターン等による画像の特徴抽出や画像フィルター
  2.  FA分野での外観検査や欠陥検出、異常検知
  3.  物体のトラッキングやステレオマッチング
  4.  類似(違法)画像検索、類似(違法)動画フレーム検索、画像データベース
  5.  文字認識、文字読み取り
  6.  顔の検出(認識)等の特定物体認識
  7.  エッジ、コーナー、領域、パターンなどの網羅的パターンマッチングによる一体物体認識

超高速でしかも超省電力であるので、従来の機械学習や深層学習では実現困難な新しい認識手法を提供するとともに、従来の機械学習や深層学習と組み合せる事により、より高速で高度なAI処理の実現も期待される。
監視カメラや車載機器などの専門機器はもちろん、一般カメラやビデオ機器、PCやスマホまで幅広い分野への応用が可能になる。

1次元のSOPは正規化表現による文字列データやDNAの塩基配列のパターンマッチングによる高速な検出(認識)や解析、3次元のSOPは立体空間、例えば分子構造や日常空間のパターンマッチングによる高速な検出(認識)や解析に利用する事が可能である。

SOPは、1次元、2次元、N次元配列のデータのパターンマッチング(認識)に対しての3種類のプロセッサを利用する事が出来る。

3-5. 情報処理の最適化

アムダールの法則が示唆する通り、情報処理システムの一部が並列化によって高速化されても情報処理システム全体の性能向上はあまり期待出来ない。システム全体の多くの部分が並列化され効率化・高速化される事により、情報処理システムの性能は大幅に向上する事になる。
しかしながら、苦手な処理(効率の悪い処理)を並列化しても大幅な性能の向上は得られない事に留意する必要がある。
情報処理の目的と情報の種類に応じて、並列化効率の高いプロセッシングデバイスを利用する事が最も重要である。
以上のような情報処理の原理原則から、メモリズムプロセッサは情報処理の目的毎に3タイプ、情報の種類毎に6種類のプロセッサが用意され、6種のプロセッサを適材適所で利用する事により最大効率のコンピューティングが実現出来るよう体系化されている。
このように体系化されたHyper Heterogeneousコンピューティング技術は弊社独自のものである。

3-6. 情報処理の分業化

従来のコンピューティングがマルチコアやクラウドなどに象徴される分散処理(手分け処理)であったのに対し、メモリズムプロセッサを利用するコンピューティングは、専門のプロセッサが得意な処理を実施する分業型(専業型)コンピューティングで、情報処理の大きな進化を意味する。
従来型プロセッサとメモリズムプロセッサがコンビネーションしたコンピューティングにより、これまでの情報処理に比較して様々なメリットを提供する事が可能になる。

4. メモリズムプロセッサによる課題の解決成果

4-1. プログラムの平易化

SQLやOracleなどのデータベースの開発は、データベースの専門家、専門企業に頼らずシステムを開発する事は困難である。その一番大きな要因は、繰り返し説明の通り、検索のインデックスなどの前処理とそのチューニング(最適化)が必要で、データベースの専門家でなければ最適化に多大な時間が必要になり、データベースの経験のないエンジニア(プログラマ)では事実上データベースシステムを構築する事は困難とされている。
プログラムの平易化(もっと易しく)については、数値化して証明する事が困難である。DBPを使用したデータベースのプログラム作成に関して以下のような実証試験を行った。
データベースの経験のないエンジニア(プログラマ)に以下の2つの手段による検索システムの開発を依頼した。
・MySQL(オープンソースデータベースソフト)を用いたデータベースの検索システム
・DBP(使用方法のマニュアル完備)を用いたデータベースの検索システム
その結果、MySQLのプログラムを組む事は出来たが、チューニング(最適化)が困難で専門のアドバイスを受けながら最適化する以外なかったため大幅な開発期間が必要であった。
一方DBPを用いた検索システムの場合、マニュアル通りプログラムを組むだけで、インデックスなどの前処理とそのチューニング(最適化)が不要であるので、極めて短時間でシステムを構築する事が出来た。
以上は、DBPの例であるが、SOPやXOPも複雑な前処理やチューニングが不要になるので、プログラムの平易化(簡素化)が可能になる。

4-2. 情報処理の近代化へのパラダイムシフト

現在のコンピュータのソフトウェア体系は欧米のIT企業の技術によるものであり、当然の事ながら、メモリズムプロセッサが無い事を前提に作られている。
従って、情報検出処理には、インデックスやメタデータなどの複雑なアルゴリズムによる前処理やチューニングが不可欠であるので専門家以外システムを構築する事は困難である。
従って、ソフトウェア開発者はデータベースの専門家、画像や音声認識の専門家、IoTの専門家、など多岐に分業化されている。
然しながら、「プログラムの平易化」に示した通り、メモリズム技術を利用する事により、インデックスやメタデータの呪縛から解放されるので専門家以外のソフトウェアプログラマでもデータベースシステムや画像認識システムを構築する事が出来る事を証明済みである。
従って、これまで頼りにしていたソフトウェア(そのほとんどが欧米のIT技術)に頼る必要がなくなり、開発費や開発期間が圧縮され経済性や即応性(納期)に優れた情報処理が可能になる。
この事は情報処理の極めて大きなパラダイムシフト(常識の大転換)であり、情報処理の近代化と呼ぶに相応しいメモリズム技術の大きな特徴である。

4-3. ノイマン型コンピュータのリニューアル

現在のコンピュータ(ノイマン型)は、1946年のENIAC誕生以来CPUやメモリ、周辺機器の大幅な性能の向上はあったものの、システム構成の進化は全くなかった。 今後本格的なポストムーア社会、ビッグデータ社会・AI社会・IoT社会を迎えるにあたり、時代に相応しいシステム構成のリニューアルが必要である。

メモリズムによるノイマン型コンピュータの情報検出問題解決(リニューアル)のまとめ

  • もっと速くしたい…ASIC化により数千倍以上もの高速性が実現
  • もっと省エネにしたい…数W/チップ程度で動作可能、冷却が不要もしくは最小限になる
  • もっと大量にデータを処理したい…高速であるので大容量に耐えられる
  • もっとプログラムを易しくしたい…複雑なアルゴリズムが不要に
  • IoTニーズ(エッジ性能を高めたい)…高速でしかも低電力なエッジデバイスの提供
  • AIニーズ(もっと賢く省エネに)…新しい低電力AIデバイスの提供
  • 経済性…ソフトやハードが簡素化(平易化)されるので安く開発できる
  • 即応性…ソフトやハードが簡素化(平易化)されるので速く開発できる

以上の様な情報処理上の様々なメリットにより情報処理(ソフトウェア)の標準化が図られ、ソフトウェアが人に優しく(易しく)、地球にも易しくなり情報処理の進化が加速する。
これが情報処理の近代化と呼ぶに相応しいノイマン型コンピュータのリニューアルの姿である。

4-4. これまでの理論検証に関して

DBP、XOP、SOPの特許理論はFPGAにより検証済みである。
画像認識用2次元SOP(2D-SOP)はASICのRTLやGDSなどのIPが完成済みである。
DRAMタイプのDBPはDRAM開発企業とのフィージビリティスタディ(実現の可能性)の結果、640億件のデータ(4TB)をNOインデックス・NOチューニング、約100m秒以内/1CPUで検索出来る事を検証済みである。
メモリズムプロセッサによるソフトウェアの平易化(簡素化)に関しての実証試験済みである。

TOP