[目次] [発表資料] [OHP]

質疑応答「PCクラスタはPoor Man's Supercomputer」


−司会− 航空宇宙技術研究所 福田正大

【司会】
 ただいまのご講演では、PCクラスタに対する技術的なお話と、センターの将来についてのお話の両方がございました。とても面白いお話でしたが、身につまされる部分もあったかもしれません。どちらに対してでも結構ですので、質問、コメントはございませんか。

【渡瀬】(高エネルギー加速器研究機構計算科学センター)
 我々の研究分野は、やはりPoor Manですが、主に大容量のデータを扱っていることから、必ずしもユーザはセンターから離れていかないという面があります。また、PCもクラスタに関してはおっしゃる通りだと思いますが、PCファームという何千台も使うようなアプリケーションもあります。我々みたいに、データの解析は非常にパラレルにできますので、その意味では、アプリケーションごとに使い道があると思います。

【姫野】(発表者:理化学研究所)
 そうですね、おっしゃる通りです。アプリケーションディペンデントですよね。これは完全に並列だったら、何台増やしてもうまくいきます。

【司会】
 私は、パワーユーザの定義でだいぶ違うかと思いますが、スパコンのベクターの1プロセッサくらいなら、PCクラスタで十分です。一方、パワーユーザは、いい加減なことをしていると、クラスタの方に行ってしまう、というお話ですが、パワーユーザの定義が大規模な計算をするユーザというものであれば、何か話が違うのではないかと思います。要するに、ベクターでも数十台の規模の計算機を必要としているというのが、パワーユーザの定義であれば、それをPCクラスタでやろうとすれば、何百台というオーダをつなげなければいけないという話になりますが、パワーユーザはそういうことをするのかなと。パワーユーザの定義はどうなのでしょうか。

【姫野】
 そうなんですよ。やはり、話は面白い方が良いと思いまして。(笑)
 ここで話したPCクラスタはせいぜい10〜30台です。世の中には100台、1000台と言うところもあります。それなら、確かに並列のベクター機と同じ性能を出せます。それを実現しようとすると、計算機センターの規模だから、それはちょっとユーザとは話が違うなあと私も正直にそう思います。また、計算機センターの利用者のジョブの比率を見ていますと、私自信も含めてなのですが、パワーユーザはいないです。悲しいことに、殆どの人達はせいぜい4プロセッサくらいまでで、並列実行よりもどちらかというと長い計算時間の方を希望するという形です。それがパワーユーザかというと、けっしてそうは思わないです。

【司会】
 逆にいうとそういうユーザは、本当に、ちょっと器用であれば自分でPCクラスタを作って、好きなときに延々と30時間でも、50時間でも計算させる方を選ぶ可能性は充分にありますよね。

【姫野】
 はい、そうですね。

【野田】(愛媛大学工学部)
 富士通はやっていないでしょうが、よくいろいろなところが、さっき仰ったMyrinetを使ってPCをどんどん入れて、PCクラスタを作って売っていますよね。姫野さんの話によると、でたらめで殆ど役に立たないですか。

【姫野】
 そう思います。だまされています。(笑)

【野田】
 そのあたりのデータをもっときちんと出して欲しいですね。非常に面白いです。よくどこの大学で研究していると言っていますが、今回良いお話を伺ったので、これからそういう話が出てきたら、お前は何だと言えるのですがね。8PEの話はよく分かるのですが、もっと増えた時にいろいろなジョブの種類によって変わってくるデータが頂けると面白いと思います。

【姫野】
 そうですね。ひとつのベンチマークプログラムに関してだけテストをしていますが、もう少し数を増やした場合のテストを増やしていき、ホームページに載せようと思っております。

【司会】
 是非お願いします。そのときは、姫野ベンチを解析するのは面倒なので、ノード間の転送をしなければいけないデータ量はこれだけなんだよ、それに対してノードの中での計算量がこれだけなんだよと。結局ノードの中の計算量と転送すべきデータ量との比と回数なのでしょうから、おそらくそのあたりを解析すれば、Myrinetみたいな高い物を買わされなくても済むという話が充分あり得ますね。でも、今、Myrinetは定番ですよね。うちの場合、何かというとMyrinetを持ってこられますが。

【姫野】
 そうなんです。PCなんて秋葉原で売っていて、原価がすぐ分かるじゃないですか。Myrinetを入れないと、儲け代が出ないためじゃないかと思います。(笑)

【司会】
 皆さんの中でも作りたいと思われた方がいるのではないでしょうか。一昔前だと、作り方をいってもらえましたが、今だったら、電話して持って来てもらえるでしょ。

【姫野】
 そうですね。学会誌の広告にいくつも載っている時代ですので、そこに電話すると直ぐに持って来てもらえます。

【永井】(名古屋大学大型計算機センター)
 二点ほどあります。ひとつは、先程の福田さんと同じくパワーユーザの定義についてですが、名大センターのVPP5000/56の場合ですと、パワーユーザとは、やはり何十台も使うようなユーザを指すことが多いです。実際、この週のある日のPEが使われているスナップショットを見てみますと、32PEのジョブが1件流れていて、16PE使っているジョブが4件流れている。多重でやっているのですが、他にも、待っているもので32PEのジョブが5件、16PEが5件などなど、凄いんですよ。需要はあるので、パワーユーザの人達は、おそらくPEクラスタには向かないかと思います。
 それから、もうひとつは、先ほどの某名古屋大学(笑)のGP7000Fの結果について、富士通にコメントをお願いしたいと思います。



【酒井】(富士通(株)コンピュータ事業本部ビジネス統括部PRIMEPOWERビジネス推進部)
 どこがボトルネックだったのでしょうね。4CPUが頭打ちになっていたのが、意外に思っていたのですが。

【司会】
 4CPUが、スーパースカラみたいになっているんですよね。8プロセッサのところでそこそこですね。姫野ベンチは、GP7000Fはどういう条件で流したわけですか。

【姫野】
 普通の並列です。

【司会】
 クラスタの方は並列したデータですよね。GP7000Fはオリジナルのプログラムを自動並列で流したのか、MPIでさらっと書いてあるのか。そのあたりはどうですか。

【姫野】
 指示行を入れてはありますが、基本的に自動並列を使ったものです。内積をどんどん足しこむところがありますが、自動並列だと、そこにいちいち指示行を入れないと並列しないんですよ。こんなマシンはGP7000Fだけです。他の会社のマシンでは自動で並列化するので、他社のマシンと比べたことがあるのだろうかと思いました。

【青木】(富士通(株)ソフトウェア事業本部ミドルウェア事業部コンパイラ技術部)
 多分サムの部分ですが、reductionというオプションを付けると、並列化するようになります。

【姫野】
 いちいち付けなくたって、そんなの見れば分かるじゃないですか。

【青木】
 reduction演算は並列化によって精度誤差が発生するため、現在はデフォルト化していません。こちらでも1CPUのPRIMEPOWERで実験したことがあるのですが、並列ではありませんが、多分200M Flopsくらいの値だったような気がします。

【司会】
 1CPUは半分しかないですよね。

【青木】
 自動並列化のオーバヘッドの1つである、同期待ち(バリア)の部分については、今回改善しています。その他の並列効果の低下要因にメモリアクセス競合であるfalse sharingやtrue sharingがあります。それは次のPRIMEPOWERのマシンで測定しなければはっきりしたことが言えません。

【司会】
 某大学の話もありますので、これは一度、きちんと富士通の方で分析をしていただきたいですね。

【姫野】
 はい、PCクラスタでの並列化は時間をかけてチューニングしているのに、PRIMEPOWERでの並列化にはほとんど時間をかけていません。そのため、今日これを出したのは、アンフェアかもしれません。スカラ並列技術WGで今、このようなテーマで研究をしていまして、今日の講演は、そのある意味最初の結果です。次に報告する機会(合同分科会)には、何故こうなっていて、もっと良くするにはどうしたら良いか、次のマシンでは大丈夫だろうか等、そのような話をきっとできると思います。

【司会】
 そのあたりのお話は、教えてもらって私から話すとしましょう。面白いお話をいろいろ聞かせていただけたかと思います。姫野さん、どうもありがとうございました。(拍手)


[目次] [発表資料] [OHP]