雑種路線でいこう

ぼちぼち再開しようか

どっこい超並列処理は進化してまっせ

電脳進化論―ギガ・テラ・ペタ』は僕も中学の頃に読んだ.Connection Machineとは懐かしいな.あーゆーセクシーなスパコンがなくなったことは残念でならないって,実物みたことはないんだけどね.弾さんはConnection Machineのようにぶっ飛んだアーキテクチャがなくなって寂しいというけれども,どっこい山ほどありまっせ.
CMのように小型プロセッサを山ほど繋げる系だと,メジャーなところで先日価格が発表されたPlaystation 3のCELLは,1つのPPEと8つのSPEを集積している.リングバスを採用しているので,プロセスをシュリンクすれば設計を大きくいじらずに,もっと多くのSPEを集積できるだろう.もっと過激なところで最近もルネサスISSCC 2006でマトリックス型超並列プロセッサが2048PEを集積して200MHzで40GOPSを達成したと発表しているし,IBMもRapportと提携して1024PEと制御用にPower PCを集積したkilocore1025を発表している.いずれもワンチップだから,これを並べればCMも真っ青な数千万,数億PEのスパコンを簡単につくれる訳だ.ここまで過激じゃないけど富士通BioServerは同社のFR-V VLIWコアを使って1ラックで1920PEを集積している.これらでLinpackベンチが高速動作する訳じゃないから,地球シミュレータIBMのBlueGeneが競い合っていた,所謂Top 500ランキングとかには登場しないだろうけど.
最近もっと面白いのはFPGAとかリコンフィギュアブルプロセッサの動きだ.FPGAというと昔はVHDLとかの論理回路記述言語で設計するんでソフトウェアのコーディングと勝手が違っていたのであるが,最近はC言語のサブセットを使って論理回路を設計するのが流行っている.といっても論理回路で表現できる範囲には限りがある訳だが,IPFlexのDAP-DNAみたいに,再構成可能な論理回路と汎用MPUを1チップに集積して,プログラムはCで記述して論理回路で構成できない部分は汎用プロセッサで実行するといった実装もある.DAP-DNAは汎用性と低消費電力が買われて,SONYシリコンオーディオプレーヤに採用された.*1
論理回路に落とせる部分は論理回路に落とそうぜというのは流行りで,最近はCRAY XD-1のようなスパコンでも,FPGAアクセラレータがオプションとして設定されているし,いまはFPGAMPUとはバス経由の接続で遅延が大きいのだが,次のOpteronからはHyper Transport直結になるから,これまで以上に高速化が期待できる.『電脳進化論―ギガ・テラ・ペタ』でも取り上げられていた天文専用計算機のGRAPEも,GRAPE-7からはFPGA化されてPCI-X経由で普通のパソコンに刺さるようになった.もともと天文シミュレーション向けの重力多体問題を解くアクセラレータだが,プラズマや流体のシミュレーションに使おうという動きもある.開発中のGRAPE-DRではさらに汎用化が進み,用途が広がるだろう.
という訳で確かにThinking Machinesは破産したけれども,この手のアーキテクチャはワンチップ化されて開発競争も過熱しており,組込用途に使えるほど身近になっている.ただ,これらは何れもSingle System Imageではないので,CM同様OSよりもプログラミングモデル,コンパイラ最適化,データフロー最適化,スケジューリングなどが肝となる.
問題は,立花隆とか田原総一朗*2とか,広い視野を持っていい文章を書くひとがコンピュータに注目しなくなってしまったことにあるのではないか.あまりに情報が増えすぎて見通しが悪くなったというか,業界全体が蛸壺化しつつあることも憂慮すべき流れだ.

そう。すべての画素にprocessorを一つあてて、それらが同時処理するため、loopが消滅してしまうのだ。
これはプログラムの考え方を根底から変える。当然それにあった環境が必要で、connection machineにもC*という言語が用意されていたようにおぼろげに記憶している。電脳進化論のすごかったのはそこで、このことをきちんと立花隆は見抜いていた。

*1:id:tkyksgwrさんのコメントによるとSONYの独自開発でDAP-DNAは使っていないとのこと.ただIPFlexが一時期のSONYシリコンオーディオプレーヤに使われていたという話はどこかで聞いているので,ソースを調査中

*2:日本コンピュータの黎明―富士通・池田敏雄の生と死 (文春文庫)』は名著.あとTHE COMPUTER誌に「田原総一郎のコンピュータルポ」という連載を持っていた