同志社大学工学部知識工学科/
Innovative Computing Laboratory,
University of Tennessee
廣安 知之
8月の終わりから新学期がスタートです.高校を卒業して大学生の生活を始める人,インターンシップで働きに行っていた人,郷里で休んでいた人などなどが,どっと大学に戻ってきて,キャンパスは急に活気づきます.人と車が溢れています.
メインの通りのCumberland/Kingston Pikeは休みとは打って変わってフルタイムでサービスを行います.いやあ やはりキャンパスライフは9月からだなあと実感させられます.
University of Tennessee (UT) の生活で1年を通じて,最も重要なイベントの一つにCollege Footballがあるでしょう.アメリカンフットボールです.日本ではスポーツといえばまず,プロ野球とかJリーグ,相撲といったようなプロスポーツが想い浮かべることが多いと思いますが,広いアメリカ,プロスポーツのチームがある都市は全体としてはそれほどなく,大学のフットボールなりバスケットのチームがそれぞれの街での重要なエンターテーメントとなっているところも少なくないでしょう.
ここKnoxville, TNもそのような街の代表です.KnoxviileのあるEast TNにはプロスポーツがないためか,はたまた,UTのフットボールチームがあるためにプロスポーツがないのかわかりませんが,大学のフットボールに対しては多くの人が熱狂的です.
まず,驚くのは大学の中に,104,079人の収容能力を誇るNeyland Stadium (Football 専用)があります.10万人ですよ.10万人.これが,試合のある日にはいっぱいになるのです.Knoxvilleの人口は約20万人なので,Knoxvilleだけでなくて,East TNの各地から多くの人が訪れてくるわけです.なので,ホームゲームのある週には,Knoxvilleの宿はほとんどどこもいっぱいです.
10万人の人の流れは圧巻です.UTのスクールカラーはBig Orangeと呼ばれるオレンジ色なのですが,文字通り老若男女が思い思いのオレンジ色を見にまといNeyland Stadiumにやってきます.小さな子供をつれてきていたり,おばさん連中が多数参加したりするのを見ると,日本ではイベントというと若者中心なので,こういう文化はうらやましくなります.彼らはただ,試合の応援に来るだけでなく,早くから集まってバーベキューなどをしてパーティーして騒いでいます.
このように試合のある土曜日は勝っても負けても大騒ぎで,その騒ぎは深夜まで続きます.なので,Footballに興味の無い人は,試合のある日には,大学に近寄らないのが得策です.
図1:Nyeland Stadium
さて,本題から大きく外れてしまいましたが,今日はこのサイトでも話題のグリッドのお話です.
グリッドの定義なかなか難しいのですが,「広域に配置された複数の計算資源を結びつけて分散 / 並列 / 協調処理を行うための環境」とでも言うのでしょうか.
このサイトでもIn-depthの記事としてグリッドコンピューティングやグリッドコンピューティングの展開が取り上げられています.
私が始めてGridの可能性に熱くなったのは2000年5月に北京で開催されたHPC ASIA 2000でした.単語こそ知ってたものの,それほど関心がなかったのですが,誰もがGrid,Gridと叫び熱心に研究を始めようと説いていたので,一変にその熱病が移ってしまいました.というのも,InternetやLinuxなどを初めて知った時の雰囲気に似ていたからでした.何ができるのかわからないけれど,なんだか何かができそうで,今後発展しそうな雰囲気とでも言うのでしょうか.さらに,我々のグループでは遺伝的アルゴリズムという最適化手法の開発をしているのですが,それがGridにマッチしそうな予感.もう帰りの飛行機の中では「ぐりっどー」と盛り上がっていたのを覚えています.
しかし,なかなか実際にグリッドコンピューティングを始めるのは難しく,いまだに大きな進展がないのが現状です.複数の機関にまたがって計算資源を確保する難しさ,日本では特に同志社大学ではグローバルなIPを確保する難しさ,グリッドミドルウエアがまだまだ成熟しておらず使い勝手が悪かったり,インストールさえろくにできない難しさ,そして,グリッドだからできること,今までの分散・並列処理とは違った特色を出すことの難しさがそこにあったからでした.
ここ数年,日本でもグリッド関連の研究が盛んに行われるようになってきました.ITBL,Super SINETを始めとする大型のプロジェクトが開始され,APGridを始めとするいくつかの本格的なGridも動きはじめました.また,グリッドの単語の入った科研などの研究プロジェクトが行われたり,GGFへも日本から多数の方が参加していると聞いています.
しかしながら,だんだんと日本でも盛り上がるにつれて,私の中ではどこか冷めていくところがありました.確かに皆がグリッド,グリッドと言い始めてはきたのだけれど,結局,予算を取るためのお題目というのが一番大きいのではないか.裏を返せば,並列・分散処理とやっていることは同じで,タイトルにグリッドとつけているだけではないかという勘ぐりがありました.
そんな気持ちで,在外研究が始まり,アメリカにやってきたわけです.どこかで,アメリカでもグリッドは資金獲得のおまじないの部分が大きいのではないかと思っていました.しかしながら,いくつかの研究機関を巡って話を聞いているうちに,少なくともアメリカでのグリッドへの取り組みはマジだという気にさせられました.
一番にそれを感じるのはNational Science Fundation (NSF)がグリッド関連の研究への予算のばら撒きから,刈り取りの時期に入っているのではないかと思えるところです.NSFでは関連のソフトウエアをNSF Middleware Initiative (NMI)としてパッケージ化しています.また,NSFではグリッドの中心となるミドルウエアを決定し,それに関連した研究のみに重点的に予算を配分するようになるとも聞いています.ですから,これまでの並列・分散処理と同じ内容でももちろんだめですし,刈り取りの時期に入っているようなので,これから一気にグリッド関連のミドルウエアの構築が進む可能性があります.
グリッドの語源はPower Grid (電力網)から来ています.最近,この語源について忘れさられていることが多いのですが,この点は非常に重要だと考えています.
すなわち,コンセントに挿すことにどこでも電力を得ることができます.しかも,ユーザーはそれがどこで製造されたのかとか,どこからやってきているのかなどといったことは意識する必要がありません.以下の2点の視点は,短期間ではありますが,同じくICLに来られていて同室させていただいた筑波大学のTから教えてもらったことですが,非常に重要なことです.
すなわち,まず1点目の視点は,そのようになるには,まず安定した良質な電力が必要であるということです.供給される電力が,不安定で,かつ,悪質な電力であれば,ユーザーはあまり便利だとは感じないでしょう.技術の進歩により,供給される電力の質が向上し,かつ,安定したので便利になったのです.一方,グリッドの場合は,まだまだ供給されるネットワークなり計算資源の質が良いとは言えず,安定もしていません.グリッドが利用価値があるとか便利だと一般のユーザーが思えるようになるには,これらの問題を技術的に解決する必要があります.
2点目の視点は,グリッドはやっぱりPower Grid から来ていてその性質は同じだということです.グリッドというと,ネットワーク上の計算資源が使えるようになって,大きな計算ができるようになると錯覚しがちです.一般的なニュースでもそのように報道されています.しかしながら,電力網でもそんなことはないのです.一般家庭で使えたり発電できる電力の量というのは小さなものです.大きな電力を必要とする場合には,やはりそれなりの設備を備えた大きな工場でないとできないのです.グリッドも同じです.いくらグリッドが進化したからといって,やはり大規模計算はスーパーコンピュータ(大工場)が必要なのでしょう.家庭でできる計算はごく小さなものになります.早くからseti@homeなどといった分散コンピューティングが注目されて,グリッドによりさらに大規模な計算ができるように感じてしまいますが,そんなことはないのでしょう.小さな仕事を積み上げて大きな結果をだすことは可能でしょう.それは,各家庭で風力発電をして,日本全体では大きな電力を作るのと似ています.この辺の切り分けをしないとグリッドの方向性を誤る可能性があると思います.Linpackで性能を測定した場合,グリッドでのシステムがスーパーコンピュータを凌駕することはないでしょう.小さなPCや家庭のPCで処理をさせて,重要な結果を導くことは将来的に行われるでしょうが,それはパラメータを変化させるようなアプリケーションに限られるでしょう.グリッドというよりも,従来から行われている分散コンピューティングの範疇でしょう.
また,グリッドは文字通りインフラですから,その研究はインフラの構築を目指すものでなければ意味がないように思われます.一つの技術的にクリアしなければならないのが,認証の問題でしょう.グリッドでは複数の機関のシステムを接続して利用することになるわけで,それぞれにおいて,その認証のポリシーが異なります.それでは利便性が失われるので,1度認証されれば,どこの資源でも使用できるようにする必要があります.これはなかなか難しい問題です.きちんとしたシステムを構築することも難しいでしょうし,オーバーヘッドも生じます.それでもこれを解決しなければ本来のグリッドの進歩は内容に思います.
日本ではどちらかといえばできれば,避けて通りたいと考えているグループが多いようです(我々もそうなのですが.).実際に,複数機関を接続すると面倒なことが多いからで,実をとるとそこを避けて,専用線を引くとか,VPN内で行うというのが手っ取り早い解決方法だからだと思います.しかしながら,一番重要で一番大変なところを避けてシステムを構築し始めると,いつまでたってもグリッドにはなれないと危惧されます.アメリカではそれを解決していこうという姿勢があるように思います.どちらが結果的に良いのかはわかりませんが,内向きに閉じる方式をとる日本と,問題があっても解放した中でやっていこうというアメリカとあまりに典型的な処理だと思いませんか.
Jack DongarraのInnovative Computing Lab (ICL)/UTに来てよかったと思うことの一つに,Jackに紹介してもらうことにより,いろいろな重要人物が私ごときに会ってくれるということがあります.
Argonne National Laboratory へもJackの紹介で行くことができました.ANLでは何人かの研究者に会いましたが,その中でも強烈な印象が残ったのは,GlobusチームのLee Liming氏でした.
グリッドを利用する際に使用するミドルウエアは様々なものがあります.先に紹介した,In Depthのグリッドコンピューティングの展開では非常によくこれらのミドルウエアが整理されています.この中で,Globus Tool Kitは事実上の標準となっているものです.
もともと,Ian Foster氏に会う予定で約束していたのですが,GGFの直後ということもあってすっぽかされてしまいました.しかし, Limingさんが代わりに対応してもらい,非常に長い時間,Globusの今後について教えてもらいました.
特に新しい情報を得たわけではありませんでしたが,Limingさんの語りは非常に夢があるというか,Globusを愛しているというか,誰でも彼の話を聞けばGridの輝かしい未来に夢を膨らませてしまうのではないでしょうか.それほど,熱心にGlobusのことについて語ってくれました.
GGFに参加されたりグリッドの動向を追っていらっしゃる方ならすでにご存知でしょうが,GlobusチームとIBMはThe Open Grid Services Architecture (OGSA)を提唱しています.GGFでもOGASAのWGが作られています.Globus3.0からは一部,OGSAの機能を取り込んでいくことがアナウンスされています.
OGSAとは大雑把に言えば,Web ServiceをGlobusの枠組みで取り込むことができるようにする企画とでも言うのでしょうか.OGSAではSOAPをしゃべることができます.これにより,既存のWeb Serviceとの親和性が増すわけです.
個人的な感想では,これはGlobusにとって大転換です.どのような過程を経て,このような決定になったのかはわかりませんが,閉塞感を払拭したいGlobusチームとミドルウエアを必要としていたIBMとの思惑とが一致したというところでしょうか.
わけわからないけれども,とりあえずグリッドを初めてみようかと思われた方ならどなたでもぶち当たるとおもうのですが,グリッドらしいアプリケーションとは何でしょうか.それは従来の並列・分散処理とは違ったものでしょうか.HPCの視点から見るとなかなかグリッドらしさを持ったアプリケーションの構築を行うのはなかなか難しいというのが本音ではないでしょうか.
それが,HPCの縛りから一歩離れてみると,なんとなくできそうなことが拡がって行きそうな気がしてきます.
すでに,ネットワーク上ではあちこちでWeb Serviceが提供されています.しかしこれはサービス提供者が提供する形をそのままユーザーが受ける形です.そこに非常に大きな重要なデータが存在することがわかっているのに,ユーザーは縛られた形式でしか,検索することができないのが現状でしょう.これがユーザーが好みに合わせていろいろできれば何か楽しそうです.それも1箇所のデータだけでなく,様々なデータが.かつ,データだけでなく計算サーバーが使えたり,実験装置が使えたりすると,現段階では良くわかりませんが楽しいことが実現できそうです.
HPCの視点で考えるとどうしてもバンド幅やレイテンシの問題が気になってしまい,グリッドの利用は壁にぶち当たってしまいます.それを複数サービスの利用と統合という視点に立てばグリッドの有効性はあるように思います.
このシステムのことをIBMではグリッドという言葉で説明し,SUNはN1であると言い,マイクロソフトは次は.NETなのだと言っているのではないでしょうか.
とにかくGlobusはHPCから一歩抜け出して,違う分野に足を踏み入れ,我々に今までいたところに残るのかそれとも新しい場所にもいっしょに来てみるのかと迫っているようです.
ちなみにAlgonne National LabでLee Limingさんに話を聞いたときに感心したことが3点あったのでそれを記しておきましょう.
まず,「うちの研究室は3人で役割分担しているんだよー」という話.すなわち,
という3人の重要人物がいて,それぞれがスポークスマン,研究室内の切り盛り,アーキテクトの役割分担をしていて,それぞれの仕事を集中的におこなっているという話です.確かに,この分担している話は,私が所属しているICLでもそうですし,多分NCSAでもSDSCでもそうなのでしょう.ようするに,大きな予算を取ってきて,それなりにきちんとした仕事をするためには,上記の3つの仕事は分業していかなければならないということなのです.アメリカの研究室は知らず知らずのうちに進化して行っているようです.
一方,日本の大学の研究室は,従来型の中小企業型で,研究室の教授が授業もすれば,研究のスポークスマンもし,学生の面倒もみるという形態です.これは,当分,変化がないでしょう.このような形態で,日本の大学がたちうちできるのか...ちょっと空恐ろしい気持ちになります.
次に感心したことは,「僕たちは商売には興味ないんだよね.」という言葉でした.
日本では,授業をすること,研究をすることが大学の教員の義務となっています.また,同時に,カリキュラムのことを考えなければならないし,入試の問題を考えることもありますし,産官学のプロジェクトも立ち上げなければならないし,最近ではベンチャービジネスも考慮しろと言われます.
アメリカでは大学で開発された技術がベンチャーに移行する例が多いと良く言われます.日本だったら,ほとんどの人が同じ志向をします.でも,アメリカではそうではないのです.確かにベンチャーを作る教授も多いのでしょうが,また同時に,会社を作ることなどにはまったく興味のない人もたくさんいるのです.別の人は,教育に興味があるのだと言っていました.研究はあくまでも教育の延長上にあるのだと.Jack Dongarraも会社の設立には興味がないと言っています.日本にいる時に受けていたアメリカのイメージと大きくことなるものでした.このような多様性の維持ができることが,アメリカの強さの一つかもしれません.日本のように右倣え作戦はどうなのでしょうか.
最後に感心したことは,上記の言葉に続いて,「僕たちは商売には興味ないんだよね.良いソフトを作って,スタンダードにすることに興味があるわけだから」という言葉が来たことでした.
これも,私には衝撃的でした.スタンダードを策定するところまでやらなければ最近はだめなんだよという言葉です.確かに,デファクトであったり策定したものであったりいろいろあるのですが,スタンダードなものを使うというのが世界の流れでしょう.
一方,日本ではまだまだ良いものを作れば皆が使うとか,権威的な圧力によって使用させるというのが一般的ではないでしょうか.早く,世界的なスタンダードを作っていくということに慣れていかなければ,なかなかこれから戦っていくことは難しいように思えます.
グリッドはこれから大化けするでしょうか.企業の人はグリッドでビジネスができるでしょうか.研究者はグリッドで新しい研究ができるのでしょうか.
グリッドがInternetやLinuxに続くものであるとするならば,そのヒントはInternetやLinuxにあります.
Internetがはやり始め,多くの人がInternet上でのビジネスを模索しました.多くのWebサイトを構築して,なんとか儲けようと努力しました.しかしながら,結局,Internetの強みを発揮したのは,従来からきちんとしたコンテンツを持っている企業であり,コンテンツをInternet上でうまく示すすべを見つけたところ,コンテンツとコンテンツをうまくつなげるところが成功し,コンテンツの無い,熱意だけのサイトは消滅していきました.Linuxも同様でした.多くのLinux Distributionが出現し,ビジネスモデルを模索しました.しかしながら,ビジネスとして結局残ったのはRed Hatだけという状況です.Red Hatは設立当初から,ブランドとサポートを売る会社でした.
ようするるにグリッドはインフラでしかないわけです.インフラではビジネスは難しいのではないでしょうか.InternetやLinuxがそうであったように,グリッドでもコンテンツやアプリケーションが重要なのでしょう.結局はおもしろいアプリケーションを準備できる人や企業がグリッドの恩恵をうけるのではないでしょうか.
HPC分野の研究はどうでしょうか.HPCの研究はもともと面白いものであり,リソースが増大したら,もっともっと面白い状況が生まれる可能性はありますが,グリッドというインフラを用意したからといって,新たに生まれる研究があるのでしょうか.グリッドでできることは,地球シミュレータや今後,次々とでてくる大きなスーパーコンピュータでもできるでしょう.
そういった意味では,すでに述べたように,グリッドはHPCの中よりもIBMやGlobusが目指すようなWeb Serviceの分野を取り込んだ広い世界で,今後,重要となりますます伸びていくことでしょう.PCクラスタなどのビジネスや研究においても,HPCがメインではなく,実際にはWeb Server などのHA分野の方がはるかに大きな市場でした.ですからそちらに対応するのが正道でしょう.それと同様ではないでしょうか.
逆に言えば,グリッドと真正面に取り組むビジネスや研究を行う気持ちであるならば,HPCに特化することをやめて,Web Serviceなどの分野に重心を移す必要がありそうです.