今後のHPCI計画推進のあり方に関する検討ワーキンググループ(第8回) 議事録

1.日時

平成24年10月31日(水曜日)15時~17時

2.場所

文部科学省 3階 3F2特別会議室

3.出席者

委員

小柳主査、青木委員、秋山委員、天野委員、石川委員、宇川委員、加藤委員、小林委員、関口(智)委員、善甫委員、高田委員、常行委員、富田委員、中村委員、平尾委員、牧野委員、松尾委員、松岡委員、村上委員、室井委員、渡邉委員
(HPCI計画推進委員会)土居主査

文部科学省

森本審議官、下間情報課長、林計算科学技術推進室長、村松計算科学技術推進室長補佐

4.議事録

(1)今後の調査・検討課題について

【小柳主査】  前回の会議では、調査・検討課題の項目3と4について議論をいただきましたが、資料1の項目3については、メールで御確認をいただいておりますので、本日は項目4の「計算科学技術に関する研究開発の方向性」から御議論をいただきたいと思います。はじめに、林室長から資料の説明をお願いします。

 林計算科学技術推進室長より、資料2に基づき説明。質疑応答は以下のとおり。

 【小柳主査】  本日の議論はリーディングマシンの定義と必要性、開発の在り方、長期的なロードマップ、アプリの話といろいろあるが、最初の議論は「リーディングマシンの定義、必要性」からはじめたいと思う。
 先ほど室長の説明にあったように、リーディングマシンを1台と考えるのか、リーディングマシンズということで幾つかの特徴ないしは分野に適したマシンをリーディングマシン群と考えて、全体を戦略的に考えるという意見があると思うが、皆様の御意見をいただきたい。

【宇川委員】  私はある程度幅広い領域をカバーするマシンが望ましいと思っているが、それが1台でなければならないというわけではない。秋山委員の全体がピラミッド的な構成で、トップエンドのマシンが1台か2台あるという考え方に近い。各分野にマシンが必要という場合に、各分野でトップエンドのマシンがなければいけないという意見なのか、それとも必ずしもトップである必要はなく、ピラミッド全体を見たときにそれぞれの分野で特徴のある、しかもニーズを満たすようなマシンがあればいいのか、そこは論点が大きく分かれると思う。

【小柳主査】  今の意見は論点が二つあり、ターミノロジーとしてどう名付けるかという問題と、実際にどういうポリシーを考えるかということがあると思う。

【青木委員】  現状を考えたときに、汎用で1台を作るのは難しいと思う。分野や特徴的なアルゴリズムに即して、幾つかをなるべく安くつくれるように努力し、それぞれをリーディングマシンとして位置付けて、その下にピラミッド構造があるというイメージである。

【小柳主査】  分野と言っても狭い分野ではなく、アルゴリズムなり、問題の特徴に従って分野群みたいなものを考えることか。

【青木委員】  アルゴリズム、計算法に即してという考え方になる。

【加藤委員】  もちろん一つのマシンで全てをカバーできるにこしたことはなく、ソフトウェアのポータビリティもいいが、それが現実的に可能かという点が一番重要だと思っている。それは可能かもしれないが効率的ではなく、計算機アーキテクチャが幾つかの特色のあるものに分かれていくことは仕方がないと思う。その意味で二つか三つくらいのアーキテクチャのリーディングマシンがあって、それが分野群をカバーしていくというような構図を考えている。

【秋山委員】  いろいろなタイプのマシンがピラミッドの中にあるのは理想的だと思うが、それは2番目の階層にあるというイメージであり、トップのところは、例えば国内の2か所ぐらいに比較的汎用的なマシンがあるように考えている。
 3種類や4種類をリーディングマシンと定義した場合、それぞれコンパイラやスケジューラなどを開発する必要があるが、同じような比率で力を注いでいけるのか。FSの結果を見ないとわからないところもあるが、ピラミッドの頂点と2番目の話は分けて考えないと、ソフトウェアの開発まで手が回らないのではないかという印象を持っている。

【牧野委員】  リーディングマシンというときに、一番たくさんお金を使うという話と、一番高い性能という話では違ってくる。性能で幾つかの分野、問題群ごとに、3種類くらいつくったとしても、3分の1ずつお金が出るようにはならない可能性が高い。同じ半導体を使っても性能が出しやすい種類の問題というのは明らかにある。その意味では、一番高いマシンは1台か2台しかつくれないが、一番高い性能のマシンであれば、少し話が変わってくる。一番高いわけではないとすると、先ほどのコンパイラやスケジューラの話も変わってきて、汎用でなくても、安いんだからいいでしょうという解も出てくると思う。そのような意味で、リーディングマシンというときにはお金と性能を分けて考えた方が混乱しないのではないかと思う。

【小柳主査】  最初の共通認識にあるように、リーディングマシンは国が戦略的につくるものであり、性能が高いということを主たる軸として議論しているのではなく、戦略的にどこに投資するかという議論だと思う。

【牧野委員】  そのときに全部のお金を1個のバスケットに入れるのではなく、ある程度分散することが重要だと思う。メインストリームの方向にはたくさん投入したほうがいいが、「京」の反省として、余りに全部のお金を1個のバスケットに入れたのではないかという気がしている。これから伸びるかもしれない方向など、複数の方向を考えていくのが戦略として必要だと思う。このときの「複数の」というのは、均等にという意味ではない。

【平尾委員】  リーディングマシンは我が国の計算科学分野を先導し、新しい展開を切り拓く、高い性能を持ったシステムであるべきだし、科学技術のブレークスルーを達成するというのが一つの大きな切り口だと思う。その意味では、できるだけ多くの分野のユーザが使えるマシンがリーディングマシンだと思う。
 それを3年か4年ごとに交互に更新するようなイメージで2台と言っている。汎用的なマシンだけで全てがカバーできるとは思っていないし、当然専用的なマシンもそのそばにあり、ある分野にとってはそのようなマシンの方がアルゴリズム的に有利な部分もあるだろうから、組み合わせたらいいと思う。本当の意味のリーディングマシンは汎用的なマシンではないかと思う。

【高田委員】  私はコンピュータアーキテクチャの専門家ではないので、的外れな意見になるかもしれないが、目指すべき姿については、例えば団体競技か個人競技かという議論で見たいと思っている。日本という国の団体競技で金メダルを目指すべきで、例えば体操の競技を見たときに、床競技が強ければ床競技の人が金メダルをとれるように頑張るし、次のときには、それは鉄棒かもしれない。汎用機というよりは、むしろその時点で金メダルをとれる人がとったらいいと思う。大事なのは、毎回団体として金メダルを目指すことだと思う。団体という意味は、開発する人もユーザも含めたコミュニティとしての金メダルであり、それが本当の意味でコンピュータが有効に利用されているということになると思う。

【松岡委員】  開発と整備の話がごっちゃになっていると思う。アプリFSでは、分野のニーズとしてリーディングマシンの定義や必要性、それがどういうものであるべきかを議論しようとしている。我が国がつくるかどうかは別として、整備するかどうかであり、それはお金の問題になる。
 リーディングというとき二つ定義があると思う。一つは、いわゆるリーディングサイエンスのための道具である。つまり、我が国がトップレベルのサイエンスで他国に勝つということであり、そのための道具を提供するのがリーディングマシンの役目だと思う。その意味では、それぞれの分野で最高性能を目指すのは当然で、分野によっても構成は変わってくる。それがどの程度耐えられるかという話になってくるが、それが汎用マシンなのか、専用マシンなのかは一概には決められない。
 もう一つは将来に向けての話であり、ソフトウェア開発は今日つくって明日捨てるものではなく、プログラムは10年、20年、30年生きる。そのとき、アーキテクチャが変遷し、プログラミングに関してパラダイムシフトが起こったときに、それを先導する役目。つまり、10年後のマシンはこうなるから、みんなこれだと思って開発してね、というのがリーディングマシンの役割だと思う。
 「京」はまさにそれをやったマシンであり、今まで我が国は超並列をほとんどやってこなかったが、「京」ができてようやくグローバルスタンダードの超並列のプログラムを若い人たちが書き始めた。そうすると新しいマシンが出てきても、それがリーディングマシンではなく、セカンドティア、サードティアのマシンになっても、10年後はみんな超並列だからそれが維持できる。
 今新しく数年後にリーディングマシンをつくると言ったときは、それは数年後ではなく、10年後、20年後のトレンドがどうなるかということを実現するマシンである必要があると思う。我々がアプリケーションプログラマの人たちにどのようなアーキテクチャを見せ、どのようなプログラミングモデルを見せ、それをどのようにみんなやってくださいと言えるか。そうすれば今後その性能が続きますよ、ということを担保するようなマシンがリーディングマシンだと思う。だから、今の議論に集中し過ぎているように思う。

【村上委員】  参考資料2の後ろから3枚目に私の資料がついており、ユーザが求める機能と要件というところで、求める要件が一番右端にあるが、科学的にはTime To Solutionが重要だと思う。これはシミュレーションだけではなく、モデリングや入力データの作成から何らかの知見を得るまでの時間もある。あるいは産業界ではTime To Market。実際にプログラムを書く人にとっては、プログラムが動くまでの時間であったり、あるいはせっかくつくったプログラムが3年たったらプラットフォームが陳腐化してしまうようなものはつくる立場としては魅力がなく、やはり10年、20年を見据えてつくったプログラムが将来にわたって使い続けられる、そのようなラットフォームの持続性、可搬性も一つの要件だと思う。
 ここではユーザ種別を書いているが、いろいろなステークホルダーがあり、それぞれのステークホルダーごとに要件は違ってくる。当然つくる側としてはシステムの効率性や可用性であり、運用者としてはランニングコストや信頼性等がポイントになると思うが、そういった諸々の要件を満足するのがリーディングマシンが備えるべきプロパティであり、それを満たしているものがリーディングマシンの定義になると考えている。

【松岡委員】  リーディングマシンをなぜ装備するか、特につくる場合は、そこでパラダイムシフトが起きるからやる、というのが一番説明しやすい。「京」は超並列へのパラダイムシフトを起こしたマシンだし、地球シミュレータは超並列ではないがMPIで並列化をやりましょうということをやったので、そのようにユーザにとって今後10年間やらなければならないこと、パラダイムシフトを具現化するのがリーディングマシンだと思う。

【小柳主査】  その二つのリーディングマシンの側面について、それを戦略、ポリシーとしてどう位置付けるのか。

【松岡委員】  もしつくるのであれば、汎用の進化がパラダイムシフトの範疇に入らないのであれば、それはパラダイムシフトを起こすようなアーキテクチャをつくるべきだと思う。わざわざ投資するのであればそのようなポリシーにすべきであり、今の延長線上でマシンをつくってもあまり意味がない。

【村上委員】  開発の必要性、整備の必要性に戻ってしまうかもしれないが、やはり国家戦略的に整備するというのは、先ほど挙げた幾つかの要件を満足するものであり、その結果としてパラダイムシフトが起こると思う。パラダイムシフトが起こった後であれば、市場から容易に調達できるようになるし、必ずしもリーディングマシンでないところでも十分整備することができるのではないか。

【宇川委員】  松岡さんの2点については同意するが、これはお互い矛盾するものではない。マシン開発においてパラダイムシフトの必要があるのは技術革新のことであり、新しいマシンを開発するところで技術革新が必要だということは共通認識としても書かれている。その意味では、松岡さんの論点は当然のことではないかと思っている。
 またコメントだけだが、確かに超並列で日本はサボっていたが、やっている人たちもいた。

【青木委員】  パラダイムシフトは必要だと思うが、次のマシンの方向性が見えているのであれば、それでリーディングマシンというのはわかるが、その展開が見えていないのであれば、今は計算機科学と計算科学の人たちが幾つか試してみて、どれが生き残るかという時期のように思う。汎用的なマシンに向いた良いアーキテクチャがあり、それがつくれる状況であればいいが、今はそうなっていないのではないか。もし方向性が見えていないのであれば、リーディングマシンを一つだけに決めるのは危険な気がする。

【平尾委員】  言葉の使い方について、汎用の定義もよくわからないところがある。私が用いた汎用というのは、いろいろな分野のできるだけ多くのユーザが使えるという意味で使っている。日本全体としては拠点を2か所くらい持ち、一つの拠点にはそのよなシンと同時に、ある専用的な分野に特化したようなシステムも同時に備えたらいいのではないかと思う。

【青木委員】  確かに言葉で言ってしまうと、専用が狭くて汎用が広いような気がする。先ほどのパラダイムシフトの話だと、昔、超並列は専用機だと言われていたと思うが、それがパラダイムシフトを起こして汎用機になりつつある。それと同じで、ある種のターゲットを決めて開発しないと、初めから誰でも使えるマシンをつくるのではパラダイムシフトはなかなか起らないと思う。

【秋山委員】  以前アプリケーション部会で言われていたことだと思うが、OpenMPとMPIを覚えて、今までの何十万行のコードを並列化するのにへとへとで、次のマシンでまた変わったらもう知らないぞと言っている。パラダイムシフトは、本当に全世界がそうなっていくのなら早く知らせてほしいが、実際のところアカデミアですらそうなので、産業界の波及などを考えると、次はそんなにドラスティックに動かれても困るのではないか。それを前提とすると、アーキテクチャはできるだけ広い範囲のユーザをカバーするようなマシンを基本に考えてほしいと思う。
 FSの結果を見ていない段階では言いづらいが、例えば多体問題や分子動力学の問題を解くマシンがあったとしても、それで恩恵を受けるユーザは比較的少ないと思う。それは第1階層の話ではなく第2階層の話ではないか。それが大事だということは書くべきだし、それもセミリーディングマシンとして大事だということはここで議論してもいいが、本当のトップのマシンとしては汎用という言葉でいくしかないのではないか。

【小柳主査】  汎用的なマシンのフィージビリティスタディをやっている石川さんは何かコメントございますか。

【石川委員】  平尾先生もおっしゃったとおり、汎用というのはなるべく幅広いアプリケーションが動くという認識である。また、先ほど秋山委員の第2階層という話があったが、そういったところの人たちが容易にマイグレーションできるのも重要だと思っている。パラダイムシフトの議論については、少なくとも次の次ぐらいまではOpenMPのMPI並列をベースにした形で少しずつ変わっていくという方向であり、長期的に見れば、フレームワークとかCSの方でやっている話が出てきて、アプリユーザにとってはプログラミングしやすい環境に変わっていくと思う。
 そういったことをやっていく意味でも、リーディングマシンそのものより、コンパイラやプログラミング言語などを含めた形で、長期的な視野に立ってやらなければいけない。それは市場調達型で5年後に何ができるかを待っていればいいというような話にはならない。国家戦略として、ハードウェアだけではなく、ソフトウェア環境も含めて考える必要があると思う。

【常行委員】  基本的にはできる限り汎用なものが欲しいと思っているが、汎用の利点はつくったマシンに市場があり、たくさん売れて経済として成り立つということが大きいと思う。ある特定の分野でものすごく最先端でサイエンティフィックに有用なマシンができても、それがその後継続できないのであれば困る。逆に言えば、一つしかアプリが動かなくても、経済効果が大きなものがあるのなら、それは一つのチョイスとしてやるべきだと思う。

【加藤委員】  二つ申し上げたいが、計算機アーキテクチャはユーザからみると、どんどん使いにくくなっている。ベクターがあり、スカラーがあり、SIMDがあり、次は多分データがかなり局在化してくるので、その局在化させたデータでハードウェアで性能を上げ、それにアプリがついてくるという構図が続いていくと思う。
 もう一つは、私の考えは専用機がたくさんあるのではなく、汎用機が複数個になるのではないかと思っている。つまり、汎用機もあるスペックを重視した汎用機Aがあり、別のスペックを重視した汎用機B、もしかしたらCもあるかもしれない。もちろん理想的には一つの汎用機でカバーできればそれがベストだが、今後それが本当にできるのか。それはFSの結果を見てみないとわからないと思う。

【松岡委員】  パラダイムシフトと申し上げたのは、パラダイムシフトしたいからするのではなく、そうしないと、もう性能が上げられないという理由で起こる。我々は、今後コンピュータアーキテクチャに何が起こっていくのかはよくわかっている。例えばエネルギーの問題としては、一番エネルギーを使うのは計算ではなく、データを動かすときであり、今後はなるべくデータを動かさないようなアーキテクチャ、プログラムパラダイムにしていく必要がある。これは非常に長期的な話であり、10年、20年先はそのようなものをやっていかなければいけない。
 振り返ってみると超並列のときもそれは見えていて、将来超並列にならなければいけないというのは、20年前にRWCPが始まったころから見えていた。超並列をやるには、RWCPの最初の超並列から20年ぐらいかかっている。つくばのPACSなど「京」以前にも超並列マシンはあったが、みんなが超並列しかないというようになってきたのは「京」が出てきたからで、今の若い人たちはみんなOpenMP、MPIで10万CPUコア級のプログラムを書いている。マシンによってパラメータは違うが、少なくともそのプログラムは今後10年間はトップクラスのマシンで生きるだろうし、セカンドティア、サードティアのマシンでもそれらのものは速い。
 次のマシンをつくるときにはOpenMP、MPIをがらっと変えるのではなく、例えば一番最初に性能ボトルネックになりそうなのはどこで、だからそこを変えないと今後10年、20年後のプログラムが立ち行かなくなるということを認識して、そこを少しずつ変えていかなければいけないと思う。つまり、民間に任せるとそのまま一番ユーザが気持ちいいマシンだけをつくって進歩がなくなる可能性があるから、国の予算をつかうリーディングマシンは少し先を見て叱咤激励するべきと思う。超並列はみんなやりたくなかったわけで、その意味では、当時の普通の人たちから見れば「京」は特殊なマシンだったが、平尾先生の定義のように、いろいろなアプリケーションが速く動くという点では汎用マシンになる。だからリーディングマシンでパラダイムシフトを起こしたからといって、それは特殊マシンである必要はなく、それは将来の汎用マシンになると思う。

【小柳主査】  いろいろ意見があり、まだ一致しているとは思わないが、お互いがイメージしていることはだんだんはっきりしてきたと思う。少しニュアンスの違った意見もあるので事務局に整理していただいて、次の議論に移りたいと思う。
 今の議論とも関係があるが、引き続いて「開発の在り方」について議論をしたい。

【牧野委員】  開発の方向は先ほどのパラダイムシフトとどうしてもカップルしてしまうが、超並列のパラダイムシフトは少なくともアメリカでは20年前に起こっている。今、「京」で超並列にシフトしたのは、ある意味日本のコンピュータサイエンスというか、コンピュテーショナルサイエンスが20年遅れているということになる。実際、ある程度のところでは20年遅れていることも否定できない。
 リーディングマシンを考えるときに、調達という話のときにはもちろん世界一に近い性能で汎用的なものは必要だが、それを我が国で開発するのかという話はちょっと考えられない。超並列はアメリカでは20年間引っ張ってきたパラダイムなので、多分もう無理がきているのではないか。それはベクターがその前の20年、スカラーの単一CPUが更にその前の20年で、大体20年ごとに大きく変わっており、スカラー超並列もかなり無理がきたパラダイムになっていると思う。先ほどの話の繰り返しになるが、開発のときに全部のお金をそこに投入するかどうかと、開発で何をするかは違う話であり、いろいろな開発の方向を考えざるを得ないのではないかと思う。

【加藤委員】  私は作れるのなら、作れる限りは作るべきと思っている。少なくとも直接的な成果として必要なのは計算結果であり、買ってきただけでソフトウェア開発も含めてオンタイムで成果が出せるのならいいが、それができない時代になっていると思う。今のアーキテクチャを考えても使いこなすのは相当大変であり、あらかじめこういうスペック、アーキテクチャのマシンをつくるということでハードウェア開発者と連携してソフトウェアの開発を始めないとソフトウェアが間に合わないと思う。スペックもハードウェアだけで決めるわけではなく、ソフトウェアとハードウェアでいわば妥協しながら決める必要があるので、その意味でも開発する力があるのであれば開発する。ただ、それをどうやって回収するかは、また別な観点で議論すべきだと思う。

【小柳主査】  別の観点についても、ポイントを一つ。

【加藤委員】  「京」の開発では、下方展開によって回収するというのが基本的な考え方だと思っているが、本当にそれが実現可能かというと私は難しいと思っている。だとすると、「京」で開発した要素技術をほかに応用することでIT産業の活性化を図るのではなく、国がこれを引っ張り、計算科学として成果が出れば回収できなくてもいいというように明確に腹をくくった方がいいと思う。その辺を曖昧なまま回収できるんだということでやるのか、回収できるなら下方展開をどうするのかを真剣に考えないといけないと思う。

【平尾委員】  私も今の意見には賛成で、下方展開や、その技術をほかに使って費用を回収するという考え方はもうとらない方がいいと思っている。それを使ってどのようなサイエンスをするか、どのような産業で新しいイノベーションを起こすかで評価したらいいのであり、マシンがほかの国に売れるとか、下方展開して費用を回収するというように考えるのは、これから先の開発では難しいと思う。科学技術のブレークスルーを起こすための一つのツール、基盤技術として国が責任を持って開発すべきであり、アメリカのNSFやDOEのように、継続的に開発していく体制を確立しなければいけないと思う。
 過去を考えると、数値風洞やCP-PACS、地球シミュレータはある分野にとって非常に有用なマシンという形で進んできたが、「京」でやっと共同利用にして、いろいろなユーザが使えるようなマシンという形で開発が進んでいったと思う。この流れはこれからのシミュレーション、あるいは計算科学の重要性を考えたときに基本になるべきだと思う。

【石川委員】  FSをやっている立場なので、もちろん開発すべきという話になるが、コデザインはもはやアーキテクチャ、ハードウェアで勝手にやっていても限界であり、アプリケーションやシステムソフトウェアを含めた全体でデザインしないと、エクサに向けては難しいということである。中長期的な開発を考えると、ハードウェア、アーキテクチャ、コンパイラ技術、ソフトウェア技術、アプリケーションも含めて議論していかなければならず、ハードウェアの開発なしに何をベースにして考えるかということになる。逆に開発はしなくてもいいという立場をとる場合には、何も戦略が立てられなくなるのではないか。

【小柳主査】  開発というときに、ハードだけを言うのではなく、ソフトを含むトータルシステムだということですね。

【石川委員】  もちろんそうです。それをしっかりやらないといけない。

【中村委員】  私もオリジナルな技術があってこそ新しいサイエンスができるということは、一般論としては賛成だが、先ほどの加藤さんの意見で気になったのが国際性である。つくったソフトウェアは世界中で使えないとまずくて、日本の開発したマシンだけで性能が出るということでは、サイエンティストから見ると問題が出てくると思う。ソフトウェアの国際性を担保できるような、国際標準になるようなものを目指して開発すべきである。
 先ほど林室長から導入と開発は別だという説明があり、私もそれには賛成だが、必ずしも開発したマシンだけが導入される必要はなく、ソフトウェアの国際性という点から考えると、トップの第1段階か第2段階かは難しいところだが、国産でないものがある程度入っていることも国際性という面からは大事だと思う。

【秋山委員】  まず、商品としての展開を考えずに成り立つようにすべきとのことについては、今のような予算で、あの規模のマシンはつくれなくなると思う。計算機メーカも、下方展開を考えないと言った途端に、冒険的なマシンはつくれるかもしれないが、いわゆる汎用的なマシンはつくれなくなる。IBMなども、ある程度展開を意識した中で、あのくらいの予算で何とかやっているというところがある。
 国産かどうかという議論は我々の心を揺さぶるテーマで、国産にしないという意見を言うことは非常に難しい。ハードウェアからつくっているからこそ、ソフトウェアの隅々にまで目が届くという話を聞くが、「京」をつくった方々には失礼だが、今、「京」のソフトウェアで苦労していることの方が多いと思う。自分たちでつくってきたからこそ育てるのに苦労しているというところがあり、それはきっと後には財産になると思うが、ハードウェアからつくったとしてもいいことばかりではないのではないか。そのようなことを技術者として議論した上で国産ということになるのならいいが、これは愛国的な問題もあるし、経済の問題もあるので、反対しづらい非常に大きな力が働いていることを常に意識しながら議論したい。

【善甫委員】  石川さんの発言の後に言いたかったことだが、アーキテクチャやソフトを全部含めて小柳先生は開発だと言われた。確かにそうで、秋山さんが先ほどソフトを移植するのにOpenMPとMPIをやるのはもうこりごりだという話もされたが、今までのアプリケーションの開発は、開発者が一人で職人芸でやってきてへとへとになっている。欧米のソフト開発は分業体制が明確に分かれていて、どこを担当するかをきっちり分け、協力体制で組織的にやっている。このように組織的にやれば、そんなにしんどいことではないと思う。今まではチューニングも主な人は一人でやってきているはずであり、とにかく職人芸でできてきた。この場合も、組織的にやらないと身動きができないのが現状ではないか。
 これから必要なのは、いかに組織として動くか、またそのような体制ができるかということだと思う。特に、企業に勤めていた者からすると、開発はチームワークが必要であり、プロジェクト体制をつくり、密に人と人とが議論できるような体制と担当を明確に分けてやると非常に早い。10年かかるものを数年でやらないといけない、そのような経験をしてきた者からすると、組織的に動いていないのが非常に残念である。この次の開発についても、組織的な動きができるかどうかが一つのキーではないかと思う。

【小柳主査】  開発というのは、アプリケーションソフトの開発のことか。

【善甫委員】  アプリケーションだけではなく、小柳先生が言われたようなハードも含めた全体である。

【石川委員】  「京」のようなマシンをつくったからこそ、かえって大変になっているのではないかという話だったと思うが、インテルのXeon系も、この後インテルから出てくるチップもSIMD演算が大きくなってくるので、コンパイラがまともなコードを出さないと、ひたすらチューニングをやらなければならないことになる。それをどうしたらいいのかを考えなければならない。もちろん時間が経てばいつかはいいものが出てくるので、それを待てるかどうかだと思う。日本の企業はそれなりにきちんと言えば対応してくれるが、往々にして海外の企業は必ずしもすぐには対応してくれない。それを待つまでユーザは仕方なくアセンブリで書くなど、逆に大変な思いをすることになり、かつ、最新のものを最新のマシンの性能状況で使うことができなくなると思う。
 秋山先生の言っている大変な思いは確かにそうだと思うが、それをしていかないとリーディングマシンは手に入らないし、国家戦略的に中長期的なことは描けないのではないかと思う。

【小林委員】  スパコンを運用している立場からすると、使いながらシステムも含めてチューニングが必要で、そのとき日本のメーカは対応してくれるが、インテル系はほとんど対応してくれず、何もわかっていないことも多い。「京」をつくっていろいろなノウハウを蓄積し、それを生かすパスを残しておくべきだし、それがこれからの技術の発展につながっていくので、開発と利用の両輪でやるべきだと思う。

【松岡委員】  先ほどの繰り返しになるが、リーディングマシンは苦労すべきマシンであり、こういうことをやれば10年後、20年後は苦労せずに済むのではないかと思う。将来ユーザが苦労せずに済むように、ユーザと一緒に苦労していろいろなシーズ技術をつくっていくのがリーディングマシンの役目だと思う。楽にプログラムして使えるのはリーディングマシンの先にできるセカンドティアのマシンでよく、リーディングマシンはコデザインでユーザとともにつくる側も苦労していくものである。プロセッサをつくるべきなのか、ネットワークをつくるべきなのか、ソフトウェアをどのレベルまでつくるかはいろいろと議論があるが、一般的な概念として、つくるのがリーディングマシンの役目ではないかと思う。
 もう一つは、そのような意味でいろいろなシーズ技術が出てくるが、なぜ苦労するかというと、新しい技術をつくっているか、ないしは外から持ってくるけれども、それが新しい技術で使いにくいからやるわけで、それは、いわゆる水平展開になる。下方展開のようにマシンをつくって、それが何台売れるかはメーカに任せておけばいい話であり、国費を使ってやるべきなのは、新しい技術を取り入れて水平展開していくことである。その例を二つ挙げると、一つはGPUやメニーコアであり、最初、いわゆるベクトルプロセッサが民製化して、グラフィックスと一体化してGPUができてきた。ある意味で最初外に行ったものが、またスパコンに使えないかということで中に戻ってきて、今度、世界一になるであろうマシンはGPUマシンですし、インテルもXeon PhiはもともとGPUをつくっていたのが転用したものなので、そのような意味ではコンシューマから水平展開して入ってきた。
 逆に出ていくのは、例えばCRAYが分社化したYARCがある。これは暗号解読やテロリストネットワークの探索といったナショナルセキュリティのために、CRAYがNSAのためにつくっていたMTAというマシンだったが、それがビッグデータの時代になって脚光を浴びている。今までものすごく特殊なマシンだったのが、いろいろなコマーシャルのデータ解析に使えることがわかって、今やクラウドデータセンタに入ってプッシュされている。明確にこれを水平展開というのは難しいかもしれないが、常に水平展開を考えて、最先端の技術を取り入れていくのはリーディングマシンの宿命だと思う。

【秋山委員】  開発の議論に入るのなら、お金が何倍かかるのかも含めて議論しないと、開発は我が国でした方がいいとだけ言っていても意味がないと思う。リーディングマシンは苦労すべきマシンだということに関しては、ほぼ賛成できるが、例えば地球シミュレータはベクトルユーザ向きにつくっていたし、今まではユーザがついてくることがわかっていた。今後の日本のリーディングマシンは、国の中のかなりの部分のお金や、いろいろ寄せ集めて勝負するマシンだと思っているので、予算が苦しい中でユーザがついてこないようなマシンをつくるわけにはいかないと思う。例えば、松岡先生が世界に先駆けてGPUコンピューティングを打ち出したときにも、どれだけのユーザがすぐについて来られたかということを考えると、やはり理想と現実のアプリケーション開発の動きも考えないと、マシンのライフタイムは短いので、そこはかなり冷徹な議論が必要だと思う。

【青木委員】  まず、経済的な直接的な波及効果という幻想はもう持たない方がいいということは、平尾先生と加藤先生に一致している。そうではなく、そのマシンで何ができるかが大事だと思う。開発するかどうかについてはユーザ側からすれば簡単で、その時点でほかのマシンでその性能が出せないのであれば開発が必要だし、その時点で同じ性能のものを安くできるのであれば開発する価値はあると思う。逆に、その時点で手に入るマシンより高くて、同じような性能なのであれば、それは開発する必要はユーザ側からはないと思う。ただし、それだけではなく、世界的な進歩に対して日本が貢献すべきであると考えるのであれば、開発する理由になり得ると思う。

【渡邉委員】  私も開発すべきだと思うが、要するに他で作ったものは二番手のマシンになる、そもそもそれでリーディングマシンの定義である我が国の計算科学全体を牽引することができるのかということである。
 加藤委員の意見にあったように、ピラミッドには多分幾つかの山があって、そのようなものを開発していくのだと思う。それともう一つは、回収はあきらめろというのにも賛成であり、それを使って、例えば産業界が栄えれば国には税金が入るので、そのような形での回収だというように割り切った方がいいのではないかと思う。

【関口(智)委員】  下方展開や産業界に役に立つといった直接的な波及効果が得られないから、だったらイノベーションだというようにマジックワードに逃げてはいけないと思う。技術があるからイノベーションが起きるはずだというのは古いモデルになっており、技術だけを頑張ってもいけないというのが、まさに今いろいろなところで議論されていることだと思う。
 イノベーションというときには目的があって、新しい価値を生むためにはどうすればいいかというデザインから始まってくる。いわゆるプロイノベーションの考え方でいうと、デザインから始まって、技術はどれくらいの役割を果たしており、その技術を開発達成するために計算科学的アプローチであればどうするのか、それに対する必要な能力はどれくらいなのか、といったアプローチをしていかないといけない。イノベーションをやるというのを是とするのであれば、逆に能力みたいなことはある意味セカンドティアのようなマシンの方がコスト面からも必要とされるのかもしれない。トップをつくるのとイノベーションをセットで議論すると、後で自分たちの首を絞めることになると思う。

【高田委員】  私の意見は渡邉さんと同じで、開発をまずスタート点と考えるべきだと思う。自動車や飛行機、コンピュータはいろいろな部品を使っているので、コンピュータメーカだけではなく、材料メーカやソフトウェアメーカ、そしてそのユーザも含めるといろいろな日本の企業に波及効果がある。従ってスパコン事業を中心としたビジネスだけで回収するという考え方は難しいと思うが、日本の産業全体・社会全体に大きな影響があるものなので、公共事業と同様の考え方で開発すべきというのが私のスタンスです。
 ただ、今後は国際協力が絶対必須だと思う。最初からほかの国に乗るという考え方はいけないと思うが、まずグランドデザインを自前でつくり、そこから進めていく上でお金が非常にかかるとか、ほかの国が進んでいるということであれば、一緒に国際協力を進めていくべきだと思う。デファクトスタンダードを考えるなら、海外と一緒に標準的なものをつくることは必須だと思う。

【宇川委員】  前から下方展開という言葉には納得できなくて、スパコンの歴史は実は逆ではないかと思っている。つまり、そこにあった技術をむしろ引っ張り上げてきた。それによってスパコンをつくってきたと思う。例えば、日本のスパコンは汎用大型機の技術をもとにして、それを引っ張り上げてつくったという話も聞いているし、Blue Gene/Lは組み込みプロセッサをそのまま使ったわけではなく、それをHPCに使えるように引き上げた、そういう歴史だったと思う。それはすぐには民生に役に立たないかもしれないが、技術のサイクルが1回、2回まわるうちに民生用に入っていくと思う。その意味での投資効果の回収は当然あると思う。その中で国の役割というのは、長期的観点からそこにある技術を引き上げ、そこにお金を投資することだと思う。

【小柳主査】  この点はまだいろいろ議論すべきことがあると思うが、特に半導体テクノロジの話はエクスプリシットには出なかったので、この議論は一応ここまでとして、また少しまとめた上で議論をしたいと思う。
 次に、論点1の宇川委員の意見の中で、長期的なロードマップ策定の話が出ているが、これについて議論したいと思う。

【宇川委員】  ここの論点はロードマップというよりも、むしろコンピュータのピラミッド全体の中で、リーディングマシンは幅広の汎用的なマシンがいいのではないかという意味で書いたが、もちろんそれで全部はカバーできない。非常に狭い分野でも、そこに沿ったアーキテクチャでつくれば成果が上がる分野も当然あるわけで、これは牧野さんも言っていたように、それぞれの位置付けに応じて予算の規模も考えるし、その予算をどのようなファンドから出すのかも含めて全体的に考えてやっていくべきであるということが言いたかった。それはロードマップと言えば言えなくもないが、私のポイントはこのようなことである。

【松岡委員】  昔、ASCI計画というのがあったが、アメリカはロードマップを描くのが好きで、ASCIにおいてはアクセレレートでより性能の高いものを出していこうということだった。先ほども言ったように、リーディングマシンには二つ役割があると思う。一つは、それぞれのサイエンスにおいてどのくらいの計算パワーがないと戦っていけないのかという観点で、そのロードマップは必ず要ると思う。それは例えばFLOPSだけではなくて、どのような性能がどのくらいのリクワイアメントでないと勝えないのかという話になる。
 もう一つは将来のテクノロジロードマップ、つまりハードウェアのテクノロジがこうなるから、それに対応したソフトウェアがこうなって、こうしていかないと性能が出ないというような観点のロードマップになる。DARPAのいろいろなレポートはまさにそうなっていて、先ほどの繰り返しになるが、データを動かすとエネルギーが爆発するので、今後はエネルギーを節約するために、なるべくデータを動かさないアーキテクチャをつくっていこうと。そのようなハードウェアからソフトウェアスタックまでを考えていこうというロードマップである。それぞれの分野が勝負するための量的なロードマップと、長期的視点でスパコン技術を見たときに、どうするべきかという技術としてのロードマップの二つがあると思う。

【牧野委員】  リーディングマシンのロードマップの話をしているのか、アーキテクチャなど研究開発の方向のロードマップなのかで大分違うことになる。ただし、研究開発の方向や技術の方向がある程度想定されていないと、リーディングマシンのロードマップはつくりようがないので、つくるべきかどうかという議論の下にはつくれるかどうかということがあり、作れそうかどうかをシステムのFSで検討しているのだと思う。

【小柳主査】  アプリのFSもあるが。

【牧野委員】  アプリはもちろん開発することに決まっているので、ある意味計算能力に関しては、これくらいあればこのくらいというのは出てくるが、その計算能力が達成可能かどうかはシステムのFSで検討していくことになる。それもせいぜい5年先、10年先であり、その先をどうするかくらいまでを書かないとロードマップにはならない。ロードマップ以前に、日本として計算機アーキテクチャなり、計算科学の開発をやっていくという体制はそもそもないので、そのような体制をつくるかどうかという話でもあると思う。国として技術開発の体制を持たないと次はできないと思う。

【小柳主査】  これもまだ議論の余地があるかと思うが、先ほどからアプリの話もでていきているので、アプリケーション開発の在り方について次に議論したいと思う。

【加藤委員】  二つの側面が重要であり、一つは先ほど善甫さんが言っていたプロジェクト的にみんなが使えるような、あるいはコミュニティが共用できるような基盤的なアプリケーションソフトウェアを開発していくこと。そこから派生的にいろいろな産業応用ができたり、あるいは機能を追加してそれがまた新しいサイエンスを生んで、アプリの発展につながるような、そういう仕組みをつくるべきだと思う。
 もう一つは、全く逆のことになるが、若い人がもっと自由に使える環境もつくるべきだと思う。裾野が広がらないとこの分野の発展はないと思うので、若い人は余り固定的な基盤的なアプリケーションの上で研究をするのではなく、もっと自由に使える環境もつくるべきだと思う。そのために重要になるのは数値計算ライブラリやミドルウェアといったものであり、また計算機ハードウェアの人と簡単にコラボレーションできるような、そのような仕組みを機構なりがつくっていったらどうかと思う。

【平尾委員】  私も全くそのとおりだと思っており、いろいろな分野で本当にみんなが使いやすいソフトウェアを国全体として開発するのが重要であり、特に産業応用などにとっても貢献ができると思う。
 他方、研究者は世界に先駆けてこれをやりたいというのがあるので、それは必ずしもみんなが使えるプログラムではないかもしれない。少し分野が違うと全然使えないこともある。あることを発見、あるいはなし遂げるためには、それを大事にしないと世界に勝つことはできないので、両面でやっていくしかないと思う。そのための基盤技術としてライブラリを揃えたり、ミドルウェアを整備することは同時にやっていかないといけないが、両方が必要だと思う。

【秋山委員】  過去の国のソフトウェアプログラムでうまくいっているものは、とんがった先生がずっと何年も引っ張り続けることで進化しているが、大きな会社に預けてそのまま惰性でやっているものは誰も使わなくなっている。結局、一番とんがったアカデミアと一緒にやっているところが一番うまくいっていると思う。

【小柳主査】  先ほど、研究者のアプリケーション開発が職人芸になっているとの意見があった。それに対して「京」の場合はグランドチャレンジや戦略プログラムといった、ある意味で組織的な応用ソフトウェア開発をやっているはずだが、この辺のことに関する経験や今後の在り方についてはどうか。

【加藤委員】  これは藤木さんのときのアプリケーション検討部会の成果が生きていて、6本のアプリを選んで当時の実施本部と一緒にやっていた。我々のところはまさに理研の実施本部と一緒に、つまり、ハードの専門に近い人と一緒にアプリの開発をやっていた。

【青木委員】  直接にはアプリの開発や理研との共同研究にはかかわっていなかったが、分野5の関係者の意見を聞くと、例えば、せっかくマシンを開発しているのだから、もっと突っ込んだところを一緒にやりたいが、実はそうでなく、プログラムを富士通側に投げて、向こうが流してみてというやりとりだったので非常に効率が悪かったという話を聞いた。次に開発するということが決まった場合には、計算機科学者とアプリ側がもう少し密にコンタクトして、アプリケーションを開発していく道があってもいいのではないか。企業秘密などの問題があるのかもしれないが、少し考慮していただきたいと思う。

【小柳主査】  コデザインという意味ではまだまだ不十分だったという経験談があったということか。

【宇川委員】  そこは計算機科学者と計算科学者の間のコラボがうまくいなかったという話ではなく、ベンダが開発の大きなところを行っているので、そこと研究者の間の体制をどうするかが難しかったのだと思う。過去にはそうではないやり方をやった場合もあるわけで、反省点だと思う。

【常行委員】  平尾先生が言われたように、サイエンティストが新しいソフトウェアを開発しようとするときは、何かやりたいことがあるのであり、コミュニティがみんなで一緒にやろうというのは非常に難しい面もある。最近では、そのようなみんなに使ってもらえるソフトをつくりたいという若い人もあらわれ始めている。ただ、問題はそのような人をどうやって評価してあげられるかである。ポストもないし、論文にもならなので、どうしたものかといつも頭を抱えている。

【小柳主査】  ソフトを開発する人に対する評価システムの話は人材のワーキンググループでも出たが、確かに大きな問題だと思う。

【渡邉委員】  分野3の場合は、基本的には地球シミュレータで動かしていたプログラムを「京」用にオプティマイゼーションしており、そのために富士通やNECの協力を得るという形でしかなかった。計算機科学者との連携といっても、計算機科学者の人は、計算機をつくることやネットワークをやるだけで、余りプログラムにはタッチしていない。計算機科学と計算科学者の連携というと美しいが、それはほとんどやられたことはないし、これからもないのではないか。

【宇川委員】  そうではなく、実際に計算機科学の人たちがプロセッサのアーキテクチャまで考えたような時代もあり、それを踏まえてアプリ側がアセンブラコードを書いて、実行性能までチェックして、それをメーカが製品化したようなサイクルもある。計算機科学の人たちがそのようなことに興味を持っていないというのは違うと思う。

【渡邉委員】  私が申し上げたのは、少なくとも戦略分野3としての気象気候と地震・津波という意味です。

【室井委員】  前回のワーキンググループで計算機リソースの話があり、計算機の利用者は多少増えているし、計算機の使用しているリソースも増えているとは思うが、コードを書ける人は実はそんなに増えておらず、一方でアプリを開発するときに必要な知識は高度化して難しくなっている。今はトップダウンで戦略的に進めるプロジェクトが増え、大規模になっているが、先ほど加藤先生がおっしったような自由に新しい発想でやるところが弱い気がする。我々の業界でも物理法則を解くことをやるが、いろいろなアルゴリズムがあって、ほかの業界の取組は非常に参考になるがクローズした中で解決しようとする傾向があり、その分野ごとの交流やいろいろなことにチャレンジする取組はもっとやってもいいのではないかと思う。

【高田委員】  産業界の方からもアプリケーションの話をコメントさせていただくと、以前は大学の先生方の方からでき上がったソフトを産業界で使えないかと、開発が終わった後で言っていただいていた。今の分野2と4は加藤先生が特に先駆けですが、開発途中からいろいろ産業界のニーズを聞いてくださって、早い段階で意見を言えるような形で参画しているので、以前に比べるとずっとよくなってきていると思う。
 もう一つは、機構を中心に戦略分野やいろいろな分野の人たちが集まる場ができており、産業界の人も加わっていろいろな意見交換ができるようになってきている。特に若い人にとっては成長するための非常にいい機会が増えてきており、これからもそのような機会を増やしていただきたいと思う。
 一つ心配しているのは、アカデミアの先生方が開発するソフトがどんどん高度化しており、もちろん企業のソフトも高度化しているが、そのギャップが大きいので、インタープリタ(アカデミアと産業界の間の通訳)になる人が必要だと思う。アカデミアの人で産業界のニーズを拾えるような人、産業界の中で先端ソフトに興味を持つ人、それらをコミュニティ全体で大事にして、両方のコミュニティをつないでいけるように育てていく必要があると思う。

【富田委員】  アプリケーション開発について、加藤先生がおっしゃっていた二つのうちプロジェクト的なアプリ開発は既存のソフトウェアが主になると思うが、一方で、今後重要になってくるのは、ボトムアップ的に新しいアルゴリズムを開発する人が必要になると思う。これは人材育成に絡む話で、先ほど常行先生から評価の話があったが、真剣に考えないと、どんどんスパコンを使う人がただのユーザ化するような気がしている。実際にスパコンを使いこなす人を育成し、それをどうやって評価するかは大きな課題だと思う。

【善甫委員】  アプリケーション開発は、新しいソフトをつくるのと、実際にずっと使い続けるという意味でのソフトは分けて考える必要があると思う。実際に使えるソフトは、いつも同じ答えが出ないと困るし、たとえ間違った答えであっても同じ答えにならないといけない。企業は同じ製品を同じ品質で大量につくらないといけないので、製造ではよく4M変更しないと言う。マン、マシン、メソッド、それからマテリアル。どんなに他にいい方法があっても使わないという、それくらい変えないということで、新しい物を開発するのとはまた両極端な意味になる。ここで議論するのはどちらなのかを考えておかないといけない。使うという意味では、間接あるいは直接的に経験が入るということで、双方向のフィードバックが必ず要るということである。ソフトの品質管理も重要であり、いい答えが出るという意味ではなく、ソフトから同じ答えが返ってくる意味で、そこで初めて標準化や、国際化ということができると思う。最近の傾向だと、機械系のプログラムでは品質保証にはこのソフトのこのバージョンを使えというのが規格に入っていて、それで品質保証を行う。明らかに間違った答えが出るのがわかっていても、それを指定しているとか、そのような品質保証は少し意味合いが違ってくると思う。
 一方で、実際に新しく開発したソフトを使えるように持っていくためには、強いリーダーシップを持った人が要る。材料分野のソフトもいろいろあるが、そこで出てくるリーダーはものすごい個性を持っている人が多い。ここでの議論はまだマイルドで、本当に強い個性を持った人が、曖昧な妥協を許さずに、こうやるんだというように強いリーダーシップがないといけないと思う。

【小柳主査】  確認ですが、前半で言ったソフトウェアに対する安定性の保証という話は、それでいいという話ではなく、現状ではそれが全体の考え方であるということですね。ですから、そこに新しい物を持ってくるには相当な力とリーダーシップが要るという話と理解してよいか。

【善甫委員】  そうです。

【中村委員】  生命科学の分野では、まだまだ超並列になるようなプログラムは少ないと思う。汎用的なアプリを開発するというより、むしろプラットフォームはきちんと開発しておいて、そこで先端的なプログラムを開発することでそれぞれが新しい計算科学をやっていくという状況だと思う。そのため、コミュニティで基盤的なアプリを開発するのはうまくいかないかもしれない。むしろプラットフォームは共通のものをつくり、その上に若い人たちが独自のものをつくっていくというスタイルかと思う。

【加藤委員】  アプリ開発を議論するときに、開発した後、それをどのようにコミュニティで育てるか、維持していくかということも組織的に考えないといけない。いつまでも人にディペンドしていると、その人が引退したら、先がなくなるようなことが起こってしまうとも限らない。ソフトウェアの開発が難しくなっていることも事実なので、せっかく開発した財産をみんなで維持してより良いものにしていく仕組みも、国として考えるべきだと思う。

【小柳主査】  まだ議論はいろいろあるかと思うが、次回はアプリ、国際協力、要素技術なども含めて引き続き議論をしていきたいと思う。それから、項目5の利用の在り方や項目6の人材育成なども12月初めのワーキンググループの前半くらいで議論し、統一見解にはならなくても、とにかくこのような意見が出たということを明示して、12月25日のHPCI計画推進委員会に報告したいと思う。

(2)その他

【小柳主査】  最後にその他の議題として、HPCIコンソーシアムの状況について報告があるので、宇川委員からお願します。

【宇川委員】  お時間いただいてありがとうございます。一般社団法人HPCIコンソーシアム理事長の立場で、活動の現状を報告させていただきます。
 関係している方もいらっしゃるのでご存じかもしれないが、HPCIコンソーシアムは平成24年4月2日に一般社団法人として設立した。これは計算科学技術にかかわるコミュニティの意見集約を行うことを主な活動としていて、具体的には、HPCIシステムの整備と運用の方針、計算科学技術の振興方策、将来のスーパーコンピューティングに関する検討といったことをテーマにしている。特にこのワーキンググループにも関係深い将来のスーパーコンピューティングの研究開発の在り方、それから、我が国の計算科学技術の推進体制に関しては、具体的にコミュニティの意見集約を進めるために、計算科学研究機構に設置されたワーキンググループや関係諸機関と連携して検討を進めている。
 コミュニティとしての検討概要については、簡単なものになるかもしないが、今年中に報告の機会をいただければと思っている。検討項目としては、産業利用の促進や人材育成方策といったこともやっている。年度内にもう一度くらい詳しい報告をさせていただいて、本ワーキンググループとも意見交換を進めるようにさせていただければと思っている。
 コンソーシアムは計算科学技術関係コミュニティとしての意見集約と提言活動を目的としているので、本ワーキンググループが担っている国としての計算科学技術に関する戦略策定について、そういった活動を通じて貢献していきたいと思っている。今後とも、よい連携関係を図っていくことができればと思っているで、よろしくお願いします。

 村松計算科学技術推進室長補佐より、次回の日程(11月21日水曜日、15時から17時)を報告。

小柳主査より閉会発言

 

お問合せ先

研究振興局情報課計算科学技術推進室

電話番号:03-6734-4275
メールアドレス:hpci-con@mext.go.jp

(研究振興局情報課計算科学技術推進室)