大並列MPチップが目指すもの。

最近何度も取り上げているように大並列のマルチプロセッサ・チップに興味があります*1マルチプロセッサの何に興味があるかというと、いろいろな意味でとっぴなアーキテクチャーが続々と現れていることです。
これまでのマルチプロセッサというと、完全な形のコンピュータを複数並べたものでした。典型例がSHARCです。これは単独でワンチップ・マイコンとして働きますが、それらをリンク・ポートで直結することでメッシュ化することができます。メッシュのそれぞれのノードは完全に独立したマイコンであり、独自の命令を持ちます。古い分類に従えばMIMDです。
ところが最近現れつつある方式はこれまでの分類に収まらないものが多いです。例えば

  • DAP/DNAはノイマン型プロセッサが一個制御用にあるだけで、これが演算器アレイを制御します。SIMDかというとそうでもありません。
  • PICOはC言語からハードとソフトを一括生成するのが目的であって、マルチプロセッサアーキテクチャーが表に表れません。路線変更前のIntelは将来はループをハードウェアでスレッドに変更するなどといっていましたが、PICOではループはマルチプロセッサに展開されます。
  • ACMは一見旧来のアーキテクチャーに見えるのですがノードが不均質であること、命令実行というよりモード変更を重ねながらストリームを処理するなど強烈な個性を放っています。そもそもソフトやハードの再利用ができない気がします。

ここに挙げた3つとも、ノード間のデータ・パスによってノイマン型の枠を打ち砕く能力を持っています。その能力が生かされればビデオ帯域での信号処理など赤子の手をひねるようなものになるでしょう。真の意味の個人用スーパーコンピュータになります。
ムーアの法則の落とし子ともいえるこれらのアーキテクチャーがどのように化けるのか今から固唾を呑んで見守っているところです。

*1:何かいい略語ないですかね。Large Scale Chip Muti-Processor でLSCMPとか