並列処理こそが生き残る道 - 光で LSI をつなげる巨大仮想回路の研究
最近、私がこのブログで IT に関する記事を書こうとすると、どれも宣伝くさくなってしまうので、申し訳なく思っている。サン・マイクロシステムズは、現在、IT 技術の根幹になる技術と製品を、どの IT 企業よりも幅広く持っているため、どの分野の項目についても、サンの立場が存在するのだ。(いやぁ、それを説明する社員はたいへんなんですけどね)。
特に、半導体の技術の分野に於いて、近年のマルチコア技術の進歩については、このブログでも何回か書いているが、半導体に於ける「ムーアの法則」の限界を 考えるとき、明るい技術的未来だし、サンは需要な役割を果たしていると思う。Intel の Xeon プロセッサ、AMD の Opteron プロセッサ、そして、サン・マイクロシステムズの UltraSPARC プロセッサが代表的な例だ。
繰り返しになるが、マルチコアとは、ひとつの半導体チップ(=ダイと呼ばれる)の上に複数の演算回路(コアと呼ばれる)が乗っているものだ。 Intel や AMD の場合は、現在 4 つのコア、サンの場合は 8 つのコアが最大だ。ひとつのチップの上にCPUが4つや8つ乗っているのと同じになる。
さらに、サンではひとつのコア上に複数のスレッド(演算処理)を搭載している。あるタスクが演算回路を使用していない間(たとえばメモリーにアクセスしに いっているなど)に、他のタスクを実行させ、演算回路を遊ばせておかないのだ。現在、ひとつのコアに8つのスレッドを稼働できる。これをマルチスレッディ ングと呼んでいる。従って、サンのチップでは、最大 8 x 8 = 64 のスレッドが稼働する。すなわち、ひとつの半導体チップに 64 個の CPU が乗っているようなものだ。
「ムーアの法則」の限界とは、ひとつの半導体チップの性能を上げるため、いままでは回路の集積度を上げて来た。クロック数がいまや 2.5 GHz とかいっているが、この数値の事だ。集積度を上げるため、名のテクノロジを利用して、回路のトランジスタを数十ナノメートルにする。しかし、これも限界が ある。現在は、64 nm で製造されているが、これを 32 nm にするとかの研究もされている。しかし、原子のサイズは超えられないのだから、いつかは限界がくる。
いま、コンピュータ自体が、転換期を迎えており、シングルプロセッシングの世界から、マルチプロセッシングの世界へと変貌している。マルチコア技術は、ま さにその技術だ。もうクロック数は限界に来て、これからはクロック数は増加しなくとも、マルチプロセッシングで、スループットの性能を格段に伸ばしていか なければならない。そのとき、一番重要なのは、IT に関わる人たち全員の意識改革である。単にタスクを複数稼働させるだけでなく、一つのプログラムも実行時に分解して、複数のサブタスクを同時稼働させるよ うなことも考えなければならない。
マルチプロセッシングとは、日本語で言うなら「並列処理」だ。あらゆる階層のハードウェア・ソフトウェアが「並列処理」を念頭にシステムを設計しなければならない。いくらチップ上に CPU が 64 個並んでいても、タスクがひとつしか走っていなければ、結果は今までと同じだ。
このシングルプロセッシングの最大の例が「バッチ」である。バッチはひとつのプロセスと大量の I/O の処理だ。マルチコア・サーバがすでに市販されている状況で、いつまでもバッチに頼った運用は、非効率であり、エコロジーに反し、これからのコンピュータ の方向性に真っ向から対立するものである。私は、
「バッチは悪」
と公言したいと思う。私が IT 業界から引退するまでに、バッチの撲滅を目指したい、と真剣に思っている。
さて、このマルチプロセッシングで、またひとつ明るいニュースだ。 サン・マイクロシステムズが米国防省から44億ドルの資金提供を受けて、光配線で演算回 路をつなげるプロジェクト「High Productivity Computing Systems」を開始することになった。
今までコンピュータの回路は、電子が移動していたので、回路が狭くなったり、流れる電子の量が増えれば遅くなる。光はもちろんそんなことはない。半導体 はある特定の大きさ以内に作らないと、歩留まり(イールド)が悪くなる。しかし、複数の半導体チップをこの光回路でつなげれば、あたかも仮想的に大きな半 導体「マクロチップ」にすることが出来る。マルチコア・マルチプロセッシングのチップを複数つなげれば、数千、数万の同時稼働する演算回路が実現出来る。
これは、HPC のみならず、Web 2.0 や SaaS などにも利用していくことができるだろう。そしてさらなる IT の利用技術が生まれてくる。