なぜLinuxスパコンが流行るのか

年2回恒例のスパコンランキングTop500がつい先日に発表になった。 2年半もの長期にわたりトップの座を守ってきた 「地球シミュレータ」 から首位の座を奪ったのは、IBMの次世代スパコンの試作機 「BlueGene/L」である。 いわゆるPCクラスタではないが、Linux OSが採用されているときく。 なぜ、スパコンにLinuxなのだろうか?

トップ10の6台を占めるLinux

まずは下表を見て頂きたい。 2004年11月に発表されたスパコンランキングTop500のトップ10である。 上位10台のうち6台のスパコンがLinuxであり、上位5台ではなんと4台がLinuxベースである。 Top500のうち約300台がPCサーバを多数接続したPCクラスタ構成であり、 その多くはLinuxベースであるという。

サイト TFlops OS
1 IBM – BlueGene/L Beta-System 70.72 Linux 米国 2004
2 NASA/Ames Research Center – Columbia 51.87 Linux 米国 2004
3 地球シミュレータ 35.86 Super-UX 日本 2002
4 Barcelona Supercomputer Center – MareNostrum 20.53 Linux スペイン 2003
5 Lawrence Livermore National Laboratory – Thunder 19.94 Linux 米国 2003
6 Los Alamos National Laboratory – ASIC Q 13.88 Unknown 米国 2002
7 Virginia Tech – System X 12.25 MacOS 米国 2004
8 IBM Rochester – BlueGene/L Prototype 11.68 Linux 米国 2004
9 Naval Oceanographic Office – eServer pSeries 10.31 AIX? 米国 2004
10 NCSA – Tungsten 9.82 Linux 米国 2003

2年前程からLinuxベースのPCクラスタはTop500リストに急速に増え始めたが、 トップ10の壁は厚かった。 しかし、昨年10TFlopsの壁を超え、今年ついに地球シミュレータもしのぐ、 世界最高速のマシンにも搭載されるようになった。 地球シミュレータを始めとする、 かつてスパコンの主流であったベクトル型の中心であったクレイ社も 現在は多数のプロセッサを接続するスカラ型に重心を置いている。 このためTop500の主流がPCクラスタの時代はしばらく続くであろう。

安価なLinux PCクラスタ

インテルのPentiumやAMDのOpteron等の量産マイクロプロセッサを利用したPCクラスタは、 数千〜1万プロセッサを集めてもベクトル型スパコンよりははるかに安価である。 しかも、マイクロプロセッサの性能向上は著しく、 演算速度が至上命題のスパコンでもその恩恵は最大限受けることができる。 これがPCクラスタ全盛時代の最大の理由であることは確かだ。

Linuxが数多く使われているのは、オープンソースのクラスタソフトウェア 「ベオウルフ(Beowulf)」 の存在も大きい。 先日10周年を祝った Beowulf はオープンソースコミュニティに支持され、 多くの研究者によって改良が行われた。 このため100台規模であれば大学でも比較的容易にPCクラスターを組み上げることができる。

ただし、トップ10に入るような超高速機は単純にLinux PCサーバを接続したものではない。 プロセッサをつなぐネットワークは超高速広帯域であり、 数十台を単位として共有メモリをもったり、物理的にも稠密に配置したりしている。 プロセッサが量産品というだけで、 PCクラスタという名前はこのクラスのシステムには当てはまらないと考えた方がよさそうである。 それでもベクトル型に比べれば安いことは間違いない。

オープンソースでインフラ化するユーティリティ・コンピューティングに向けて

しかし、なぜLinuxとオープンソースがスパコンにこれほどまでに浸透してきたか、 の答えとしては充分ではないだろう。 それはコンピュータ業界が描く将来構想に関係があると考える。

コンピューティングの系譜を辿ると、 1970年代から単体で動くメインフレームが普及し、 1990年代にはUNIXとPC端末をネットワークで接続したサーバ/クライアントの時代になった。 1995年以降はインターネットやLAN上のWebベースコンピューティングが主流になってきた。 現在、それらを相互に連携させるWebサービスが普及しようとしている。

では、10年後はどうなるのであろうか。 IBMやHP、サンが目指すのは、 電気や水道のように使いたいとき使いたいだけ使える 「ユーティリティ・コンピューティング」である。 それは高速ネットワークで接続されたプロセッサやストレージがインフラ化した世界である。 ユーザは物理的なコンピュータを意識することなく、 サービスとしてコンピュータを利用できるようになる。

多数のコンピュータが1つのサービスとして見えるので、 これをコンピュータの仮想化ともいう。 ただ、SETI@Homeのように低スペックのPCを100万台つないでも、 信頼性のあるインフラにはならない。 原子力発電所のように、巨大なコンピュータを何十台も配置する方が効率的である。 スパコン競争は科学技術計算のためだけにあるのではない。

そして、このようなインフラは1社が独占的に握るのは困難であるから、 ソフトウェアはオープンソースで皆が共有し、 サービスやハードウェアで勝負した方が都合がよい。 だから、Linuxやオープンソースのクラスタソフトが好まれるのである。