体験を伝える―『ガジェット通信』の考え方

面白いものを探しにいこう 本物を体験し体感しよう 会いたい人に会いに行こう 見たことのないものを見に行こう そしてそれをやわらかくみんなに伝えよう [→ガジェ通についてもっと詳しく] [→ガジェット通信フロアについて]

スーパーコンピュータと核兵器と私

supcom

スーパーコンピュータは現在、どのように使われていて、この先どうなっていくのでしょう。今回は藤沢数希さんのブログ『金融日記』からご寄稿いただきました。

スーパーコンピュータと核兵器と私
民主党の事業仕分けによって、理研と富士通の共同開発による世界一速いスーパーコンピュータ(スパコン)を作る国家プロジェクトが中止に追い込まれそうで、方々で話題になっているようです。

その議論は「日本は資源のない国だから科学技術に投資をしなくてどうするのか」といったものから「これは一種の公共事業で競争力のない特定の業界や特殊法人との癒着による談合だ」といったものまでいろいろあるようです。しかし、こういう議論をしている評論家も民主党の議員や急にいろんなことをいいだした大物学者もスパコンを実際に使ったことがある人はいないのではないでしょうか。

ということで、だいぶ昔に基礎科学の研究をしていたころ僕はスパコンを毎日のように使っていたのですが、なんとか昔の記憶を思い出してスパコンというものを解説してみたいと思います。

1.スパコンはどうやって使うのか?
おそらく科学者がなんか複雑な計算をスパコンで実行して難しい問題の答えをだすみたいなことをみなさん想像しているかもしれませんが、ここでちょっと具体的に書いてみましょう。

スパコンの仕組みは簡単にいうと普通のパソコンと似たようなCPUをめちゃくちゃたくさん並列につないだだけです。だから一人の研究者が一つのスパコンを使うのではなくて、必ず複数のプロジェクトが同時に走っています。一人で独占的に使うのは、最初にスパコンの性能をはかるタイムアタックのときだけでしょう。

スパコンで計算するものは流体力学とか電子工学とか核融合とか膨大な計算が必要なシミュレーションで、それぞれの分野でだいたい世界標準的なプログラムがあります。たとえば流体力学の研究ではそういったすでにあるプログラムを使ってシミュレーションします。いろいろと条件を与えてスパコンに夕方ぐらいにほうりこんでおくと次の日に結果がでているというわけです。このようにスパコンにインストールされているプログラムを使っていろいろな実験をするのです。

最近では、スパコン用のプログラムを作る人と、そういったプログラムを使って数値実験する人は分かれています。あまりにも専門的になりすぎているので、両方を同時にこなすのはかなり大変だからです。ちなみに日本はスパコン用のソフトウェア開発では世界に遅れており、代表的なプログラムの多くが海外の研究者によって開発されています。

スパコンのリソースは学識経験者による委員会が、応募されてくるさまざまな研究プロポーザルを評価して、優先順位の高いものから順番に振り分けていきます。民間の研究者がリソースを買うこともあります。このリソースは(CPUの数)×(時間)ではかられます。スパコンのユーザーはこの割り当てられたリソースをお金を使うかのごとくちみちみ使っていくのです。

たとえば一つの計算を100個のCPUで5時間実行すると100×5=500のリソースがなくなるわけです。実績を上げている優秀な研究者は一ヶ月に100万CPU時間とか割り当てられます。こういった計算単位をジョブといって、たとえば「120個のCPUで10時間計算しなさい」と指示して登録しておくと、順番が来ると計算をはじめてくれます。大型のスパコンだとこういったジョブが何10個かは必ず同時に走っています。

まあ、要するに何が言いたかったかというと、ユーザーからみれば一人で一つのスパコンを独占するというようなことはありえないので、そのスパコンが世界一速いかどうかは実はどうでもいいといえばどうでもいいということです。単純にユーザーの視点でみれば、世界一のスパコンを一台1000億円かけてつくるより、コストパフォーマンスのいい10億円のスパコンを競争入札で100台買った方がはるかにいいでしょう。

2.おもにどういったものを計算するのか?
自動車のエンジンの燃焼などのシミュレーションや半導体デバイスのさまざまな設計、飛行機の流体力学的な最適化、製薬のための高分子のシミュレーションなどなど、わりといろんなことに使われています。金融工学とか計量経済学でもティック・データ(市場における約定と気配に関する情報)の解析などでたまに使っていたりします。しかし、なんといっても世界最速のスパコンが活躍している分野は一にも二にも核兵器の開発です。

たまにスパコンは核兵器のような軍事目的にも使われることもあるなどと紹介されたりしますがこれは大きな間違いで、スパコンは最新鋭の核兵器を外国よりも優位に開発するために進化してきたのです。自動車のエンジンも半導体デバイスも飛行機も製薬も実際につくってみて試行錯誤すればいいのであって、スパコンのシミュレーションが絶対に必要なのかといったらそうでもありません。こういった分野ではシミュレーションは開発過程のなかで脇役(わきやく)に過ぎません。ところが核兵器は簡単に実験できないからシミュレーションが主役になるのです。そのうえ核兵器の開発競争で悪の枢軸国に敗れたら大変だなどといえば、政治家も国民もみんなお金を出さざるをえないので、アメリカでは核関連の研究費は湯水のようにつきます。スパコンは核兵器のために発展してきたのです。ランキングで上位にはいるようなおニューのスパコンはだいたいこのような核兵器に強い研究所が使っています。

最近は平和団体や環境団体などがうるさいので実験できませんが、昔は太平洋の島とか砂漠で本当の核爆弾の実験をしたりしていました。アレは実はコンピュータ・シミュレーションのためのさまざまなパラメータを決めることが大きな目的だったのです。

要するに何がいいたかったかというと、核兵器開発に熱心ではない日本が、アメリカとスパコンの開発競争をするのは税金を投入するというモチベーション的にはかなりきついんではないかということです。

あとスパコンの事業仕分けとはぜんぜん関係ない話なんですけど、日本はせっかくアメリカの核の傘に入れてもらって仲良くやっているのに、民主党はアメリカとの核密約を追求してアメリカに核を日本に持ち込ませないように約束させようとしています。もうバカかアホかと……。

3.スパコンのタイプと開発競争の歴史
スパコンというのは昔はふたつのタイプがあってお互いに性能を競い合っていました。スカラー型とベクトル型です。

スカラー型のCPUは一回の動作で最低限の基本的な演算を一回すばやく実行します。AとBを加算してCに代入せよというような演算を一回するのです。CPUは極力単純に設計されていて、複雑な計算はソフトウェアの方で対応するという考え方です。みんなが使っているパソコンのCPUはスカラー型です。

1 2次のページ
  • 誤字を発見した方はこちらからご連絡ください。
  • ガジェット通信編集部への情報提供はこちらから
  • 記事内の筆者見解は明示のない限りガジェット通信を代表するものではありません。