2010年1月21日木曜日

Jack Dongarra 教授の講演

今日は、Jack Dongarra 教授の講演を聞いてきたので、それで大事と思ったところをメモ。
Jack Dongarra 教授は、High Performance Computing では、あまりに有名過ぎるので、どういう人かは省略。

まず、5個の重要なことがらについて。
  1. 複数コアがあるとき、いくつかのアーキテクチャが組み合わさっているときに、どうすれば効率的に利用できるか。
  2. 倍精度や単精度など精度を混合しながら、どう計算するか。(精度が必要なところだけ倍精度にすることで計算を速くする。)
  3. 自動チューニングはどうすればできるか。
  4. Fault Tolerant なアルゴリズムはどうすれば設計できるか。(1000以上の並列計算の場合、そのうちのいくつかが上手く動作しないことがあり、それをどう扱うか。)
  5. 複数コアや複数ノードの間で、いかに通信を少なくして計算するか。
などであった。これは、今後のアルゴリズム設計などにも勉強になりそうだ。
そのあとは、TOP500 に乗っているスーパーコンピュータがどれだけの性能を持っているか、という話で、

1993 年のとき、1位 は 59.7GFLOPS, 500位は 0.4GFLOPS で 1位から500位の合計が 3.27TFLOPS だったのが、
2009 年のとき、1位 は 3.76PFLOPS, 500位は 20.0TFLOPS で 1位から500位の合計が 27.68PFLOPS まで上昇しており、500 位の20.0TFLOPS でも 1997 年の合計に匹敵するとのこと。

そのあと、TOP5 ぐらいまでのスーパーコンピュータがどのように構成されているか、という話。
ちなみに、「日本は、どんどんと置いていかれている」ということだった。(たぶん、"Japan is falling down" って言っていたように聞き取れた、が英語の聞き間違いの可能性もある。)

あと、電力消費は電圧の2乗 x 周波数に比例して、周波数は電圧に比例するので、電力消費は周波数の3乗に比例するらしい。1位のスーパーコンピュータは、7MW(メガワット)の電力使用で普通の家の 7000 件に相当するとのこと。

ちなみに、国民一人当りのスーパーコンピュータ計算性能1位はニュージーランドで、映画撮影が多い影響でそれを処理するコンピュータも多い、ということで、これは面白い視点だった。

そのあとに、multicore でどのように LAPACK を高速化させるか、という話があって、これらは PLASMA というソフトに実装されている、とのこと。GPU の LAPACK は MAGMA になっていて、それぞれ

PLASMA : http://icl.cs.utk.edu/plasma
MAGMA : http://icl.cs.utk.edu/magma

から情報が得られる。これらについては、明日調べてみようと思う。並列計算をするときに、情報の依存性を DAG (Directed Acyclic Graph) で表現するのがポイント。

あと、並列計算のスケーラビリティの概念にもstrong と weak があって、weak scalability だと、問題が大きくなってくると台数が増えれば速くなる、のに対して strong だと問題のサイズは同じでも台数が増えただけ高速化される、という違いがある。


いずれにしても、これからは複数のコアなどが主流となり、いかに並列計算で性能を発揮させるか、そのようにアルゴリズム、ソフトウェアはどうあるべきか、が重要になるようだ。

Jack Dongarra 教授の英語は、ゆっくり喋ってくれたおかげか、だいぶ聞き取りやすかった。おかげでだいぶ勉強になった。


今日の作業内容: SNL の計算 3h + 講演聴講 1.5h
今日のBGM: かぜよみ 2回
今日のランチ: とりこまち 鶏唐揚げ定食
明日の予測作業時間: 5h

0 件のコメント:

コメントを投稿