座談会 CMSIで教えたいこと、学びたいこと
大学院の講義からスタート
岩田(司会) CMSI全体の教育を語れるほど経験豊かではないのすが、前提として計算機の仕組みが複雑になり、研究の片手間にプログラムを書くことが難しくなっています。
進歩した計算機を使いこなしつつ、どう研究を進めるか、どうすれば学生さんが入門しやすくなるのかを考えないといけない。
教員のみなさんは、来年度CMSIで何をする予定ですか。
吉井 教育プランを検討中です。既存の枠組みを少し変えるとCMSIのプロジェクトに合うものがあるので、それを活用します。例えば、分子シミュレーション研究会が主催していた「分子シミュレーションスクール」への協力を、今年度から開始しました。12月には、CMSIと分子科学研究所の主催で「分子シミュレーションスクール」を開きます。
来年度は、名古屋大学と総合研究大学院大学の既存の単位交換制度を活用し、名大では分子物理化学特論の分子シミュレーションの講義を、総研大では計算科学の講義を取れるように、単位互換にします。
岩田 分子シミュレーションスクールでは講師をされているのですか。
吉井 はい、並列化の講義をしています。並列コンピュータがどんな構造かという初歩から、OpenMPまでを1時間半に詰め込んでいます。毎回100人くらいの参加者があり、分子シミュレーションが浸透しているという嬉しさがあります。
小嶋 僕も2回行っていて、周りにも参加している人が結構いますね。
下司 大阪大学では、密度汎関数理論をベースにしたCMD®(コンピュテーショナル・マテリアルズ・デザイン)ワークショップが年2回あり、20回目を迎えます。5日間の合宿形式で、大阪大学では大学院の単位になる一方、社会人教育のプログラムの必修単位でもあります。これらと無関係の一般の方も参加しています。4コースあり、初心者を対象とするビギナーコース、その発展版のアドバンストコース、さらに上のエキスパートコース、そして、2010年からスパコンコースを開講しました。これは、少人数でスパコンを使い倒し、こんなに使えるのだと経験させます。これまでは、阪大サイバーメディアセンターのSX-9を最大8ノードまで使って実施しました。
このワークショップは第一原理計算を学びたい人に人気です。実験の人が理論の研究室の門を叩くのは敷居が高いというときにも、大手を振って質問できますしね。
岩田 合宿に参加すれば単位を取れるのですか。
下司 はい、修了証をもらうと認定されます。 それから、社会人向けにはテレビ会議システムで夜6 ~9時に全国配信しており、基礎から応用をひと通り勉強できます。
山地 CMSI全体の教育として、他のすべての教育拠点と連携を行うことが目標ですが、東京大学では講義を配信する枠組みがまだ十分に整備されていません。そこでまず手始めに、2012年度から岩田先生といっしょに学内での修士1年、2年の講義を始めます。線形代数とモンテカルロ法、偏微分方程式など時間発展の数理です。それと、実際に簡単なところからフルスクラッチで実装して、MPIとOpenMPで並列化まで実習してもらう計画で、120並列まで自由に使えるPCクラスタ環境を用意しています。
吉井 その講義は何人ぐらいを想定されているのすか。
岩田 80人が入れる演習室を予約していますが、その半分ぐらいを見込んでいます。
山地 最終的には、各拠点の講義を配信してもらったり、われわれの講義を他にも配信することを考えています。他のCMSIの教育拠点との単位互換制度が今のところ存在しませんので、東京工業大学やお茶の水大学など近場から始めて実績を積んで、下司先生、吉井先生と連携して講義の配信をしていくことを考えています。
岩田潤一(いわた じゅんいち) 物性の第一原理計算、密度汎関数計算が専門で、超並列計算機を駆使し、大規模な第一原理計算のコードを開発中です。 |
吉井範行(よしい のりゆき) 分子動力学計算を用いて、生体膜と薬物との相互作用や、薬物の膜透過現象について調べています。 |
下司雅章(げし まさあき) 第一原理計算、DFTの計算が専門で、高温・高圧下で合成する新物質の設計をしています。大規模計算では、オーダーNタイトバインディング法をMPIで並列化し、原子200万個程度を扱った経験があります。 |
山地洋平(やまぢようへい) 銅酸化物超伝導体等の強相関電子系の解析的理論研究で学位を取り、多体電子系の数値計算を現在行っています。今後、1万~10万並列のコード開発に携わる予定です。 |
計算機科学との交流も教育
岩田 学生さんとしては、講義にどんなことを期待していますか。石井 研究の実用に耐えられるほど並列計算ができるようになるには、けっこう勉強しなければいけない。僕らは応用がしたいのですが、そこはどう考えたらいいのでしょうか。
吉井 CMSIには両面があって、世界一の計算ができる「京」でコードを開発する人と、それを使って実際の研究をしたい人がいます。ユーザーとコードを作る人を別々に教育しないと。
山地 「実用」というところが問題で、並列化といっても、モンテカルロ法だと100並列ぐらいまでは専門的な勉強をしなくてもできる。
吉井 既存のコードがあればそれを使えばいいでしょうが、特に分子動力学(MD)では「この計算にはこのルーチン」ときれいに切り分けることができない。コードがない場合はそれを作るところから研究になってしまう。
岩田 よく使われる計算を集めたライブラリというのがありますから、それに自分のプログラムをリンクさせるのも一つの手ですね。
吉井 確かに、自分で書いたものは下手くそで遅い部分があり、それを行列計算の速いライブラリに置き換えると、突然性能が上がることがあります。
下司 数値計算に本腰を入れるのは難しいでしょうが、知っておくべきこともあります。数値計算の専門家から情報をもらっては? CMSIが交流をリードする必要がありそうです。
岩田 交流が教育になるということですね。
下司 われわれは使ってメリットがあるが、作る側は使われてこそ価値があるので、われわれと共同研究するメリットがある。それが新しいアルゴリズムの開発などに発展するといったニーズとシーズがマッチングする場がほしいですね。
小嶋 僕は、プログラムを書いて原理を理解することに興味があります。できたら自分で書きたい。今やっているのは1次元の反応ですが、3次元にするなど拡張の余地があり、そうなると自分で書くしかないでしょうね。
山地 学生さんがそういう興味をもってくれると有り難いですね。
下司 東大生産技術研究所では日立製作所から専門家を呼び、半期でプログラムを書かせる猛烈トレーニングをしています。
西村 並列化について開かれる講義は院生向けですか。
吉井 単位互換は大学院ですが、学部教育でも物理化学実習に分子シミュレーションを取り入れています。
下司 今のワークショップは大学院以上が対象で、社会人も修士以上です。これはユーザーの養成なので、学部や社会一般に向けて、シミュレーションはこんなに役に立つという普及活動をして、計算科学を本格的にやりたい人をもっと集めたいですね。
山地 学部から教育するのは賛成ですが、4年生は実験があり、統計力学や量子力学も勉強しなければいけない。そこに、数値計算をどう入れ込むか、モチベーションをどうやってつくるか。
下司 社会人はモチベーションが明確です。自分の研究の方向づけを第一原理計算に求める人もいるし、マネジメントの立場の人は第一原理計算の知識が外せなくなってきました。
大規模計算への道はそれぞれ
岩田 学生さんたち、これからどんな研究を。
小嶋 進学して、溶液中のプロトン移動反応の研究を続けます。今扱っているのは分子内の反応ですが、分子間や3次元的な反応にまで拡張したいです。分子間反応になると、 多数の分子が関わるので、 より難しくなります。
岩田 計算量の問題だけでなく、方法論が確立されていないので、 理論の開発、 プログラム作りも全部やらなければいけないのですね。
吉井 石井さんがやっている固体中の炭素拡散の解析も同じような状況では。
石井 手法そのものはできているのですが、大規模計算がすぐに必要ということではありません。今は小さな系を使って、できるだけ計算量をおさえ、現象をスマートに解析するのがうちの研究室の流儀らしいです。計算機は、並列計算ができるような20並列、コア8個程度のものが並んでいます。
岩田 西村さんは並列計算を念頭においたプログラム開発をされている。
西村 研究室のPCクラスタでは1コア、これから並列計算にもっていく段階なので、1ノードしか使っていませんが、将来は「京」で流せるような大規模並列向けのプログラムにしたいです。
岩田 既存の計算法の並列化だけでなく、アルゴリズムから考えているのですね。
西村 そうです。並列化を教わったのは研究室に入ってからです。
岩田 西村さんは情報系なので、もっと使っているかと思いました。
西村 3回生用にMac4台を並列化して使う実習があるので、基礎知識を備えた学部生もいます。1年前に計算科学の専攻ができて、並列計算の勉強も始めたところです。
山地 アルゴリズムやコード開発の分野が評価されているのですか。
西村 研究室は化学が中心ですが、情報系の人間が研究室に入って、さあ化学をやれと言われても難しい。評価されるかどうかはさておき、やはりコンピューティングになります。
コンピューティングは何かに結びついて初めて意味があるので、適用する分野をしっかり勉強する必要はあると思います。
岩田 では、化学の勉強もしている。
西村 量子力学の理論の授業を受けていますが、そこは苦労しています。でも、スパコンを使いたくて計算科学の道に入ったので、そちらは楽しいです。大規模なスパコンを使う実習形式の授業がほしいですね。
下司 「京」を使ってみたいですか。
西村 はい、計算速度がどんどん上がるのが魅力です。
岩田 小嶋さんは大規模計算をやっていくことになるでしょうが、プログラムを書いたことは?
小嶋 簡単なMDのプログラムをFortranで書いたことはあります。
吉井 並列化の指導は何か受けましたか。
小嶋 まったく。研究室にある本で勉強しました。
岩田 石井さんは今の計算規模で十分やっていけるということでしたが、自分でプログラムを書きますか。
石井 研究室にメインのMDのプログラムがあって、それを自分の研究に合わせて改良しています。
吉井 統計力学を用いてシミュレーションを加速するというお話ですが、マルチカノニカル法のようなイメージですか。
石井 それに近いですね。もともとのモチベーションとしては現実の事象を解析したいというのがあって、そのためには時間スケールを上げないと、つり合いがとれない。なんとかして時間スケールを上げたいのです。
岩田 計算機を使いこなすというよりは、手法を改良していきたいということですね。サンプリングはどこがネックになるのですか。
石井 サンプリングはMDと同じです。
下司 そうすると、研究室の外のもっと速い計算機にもっていくと、びっくりするほど速くなる可能性もある。壁もあるでしょうが、外の世界を見ることも大切です。
山地 目の前のことをやるだけで忙しいのはわかりますが、壁の外に行ってみるのもいいなという気持ちだけはもってほしい。そう目を向けさせるのもわれわれの仕事なのかもしれないですね。
石井明男(いしい あきお) 固体物理の研究室に在籍しており、統計力学的なアプローチを用いてMDを加速する研究、またそれを固体内部の解析に応用する研究をしています。 |
西村達仁(にしむら たつと) 学部は情報系でしたが、量子化学の研究室に入り、2電子積分を数値的に計算するアルゴリズムの開発や実装、並列化の研究をしています。 |
小嶋秀和(こじま ひでかず) 溶液中の分子内プロトン移動反応のMDシミュレーションをしています。プロトンは軽いので量子的に扱う必要があり、手法は発展途上です。 |
いつでもどこでも聞ける授業を
吉井 石井さんは、どんな教育システムで研究室のテーマまで到達しましたか。昔は自力ではい上がれた者だけ残れば結構というスタンスでしたが、効率が悪すぎます。
石井 必要なときに議論する程度で、あとは自分で研究を進めていくといった感じです。プログラムの使い方は学生どうしで教え合うべしと。
小嶋 僕らは、助教の研究論文を渡され、プログラムの使い方を多少教わります。
下司 CMSIではカリキュラムを考案中です。プログラムを作ることを想定したら、もっと実践的な話、詳しい数値アルゴリズムの話、計算機アーキテクチャの話などを聞きたいですか。
石井・西村・小嶋 聞いてみたいです。
下司 どこでも聞けるオンデマンドの授業をもっと広げて、化学だけでなく、ほかの分野まで聞けるようにしては。
石井 それに、いつでも聞けるビデオ形式にできたらうれしいです。
下司 阪大のプログラムは録画があり、その場でも、あとからでも聞けます。
山地 そのときに、登録していないと見られないのでは不便です。課金なしで見られればベストですが、著作権の問題が気になります。
下司 阪大では講義の受講生はIDとパスワードで見られます。著作権のこともあり、ストリーミングのみです。
講義した内容というのは、これまでは使い捨てにされてきました。しかも、蓄積したノウハウは自分の学生にしか伝わらない。せめて日本のコミュニティに残すべきですね。
岩田 クリックしたらすぐに見られる講義は便利ですが、それで単位は取れない。
石井 それでいいです。さらに、気軽に質問できて、答えてくれれば。
岩田 CMSI版「教えてgoo」をつくるといいかな。
下司 それは拠点研究員などのグループでサポートするとかが考えられますが、質問に答えてもらうには少なくとも授業には出ていないと。
岩田 いろいろなご意見が出ましたが、研究に計算機を使うニーズはますます多くなっています。本業の時間を削らずにすむような教育をわれわれは提供しなければいけない。さらに、並列化やチューニング、プログラミングツールについての講義をどうやって広めるか、CMSIだけでなく日本国内への普及システムも提案していきたいと思います。
(2011年12月8日 CMSI神戸拠点で収録)
撮影:由利修一