対象プログラム | 量子モンテカルロアプリケーション |
アプリケーション名 | CASINO |
チューニング方法 | OpenMP,階層型並列処理 |
成果 | パフォーマンスが4倍に改善 推定削減コスト(円換算):1億3千万円 |
nAGの HECToR dCSEチームが量子モンテカルロアプリケーション(CASINO)のパフォーマンスを4倍に
英国の学術研究機関向けのスーパーコンピューティング設備であるHECToR 向けのnAGの計算科学エンジニアリング(CSE)サポートサービスにおけるnAGの HPC専門家は、量子モンテカルロアプリケーションを最適化しました。その結果、パフォーマンスが4倍向上し、年間の研究プロジェクトの計算リソースに対して£760k を節約できました。
dCSEの成功に言及して、ユニバーシティ・カレッジ・ロンドンのDario Alfe(本プロジェクトの主任調査員かつCASINOのメインユーザ)は述べました:『新しい共有メモリの機能は、大きなジョブに対する1ノードあたりのコア数に等しい倍率で、たとえば現在のクアッドコアの場合の4倍増のように、効果的にコードの処理速度を速めています。しかし明らかに今後処理速度は増すことになります。』 [注記 HECToRは2010年の初めには1ノードあたり24コアにアップグレードされますのでCASINOはこれらの最適化により24倍のすぐれたパフォーマンスで実行する可能性があります。] 『並列処理の第二段階では、少なくとも以前の4倍のコアを使用できるようになります。したがってコードのスケーラビリティが100,000コア以上まで増えます。 最終的には、チェックポイントのルーチン(10,000コア以上で過剰負荷になると分かったルーチン)の書き換えにより私たちは再スタート時間を1時間以上から数秒まで短縮できるようになります。この研究によりCASINOが現在と将来の並列マシンを大量に利用することができる現代的なコードであることを確信することができました。』
HECToR HECToR はResearch Councils を代行する EPSRC により管理されており、英国学術界の科学と工学をサポートする任務を負っています。エジンバラ大学にある Cray XT スーパーコンピュータはUoE HPCx 社によって管理されています。 CSE サポートサービスはnAG 社によって提供されており、高度なスーパーコンピュータの効率的な活用のために、ユーザは確実に適切なHPC専門家にコンタクトできます。CSEサポートサービスの重要な特徴は分散型CSE(dCSE)プログラムです。これは簡潔なピアレビューを経てユーザからの提案に応える、特定のコードのパフォーマンスとスケーラビリティに対処するプロジェクトです。dCSE プログラムは、伝統的なHPCユーザアプリケーションサポートとnAG によるトレーニングで補われる、約 50 の集中的プロジェクトから成り立っています。 これまでに完了した dCSE プロジェクトは、CSEの尽力により可能なコスト削減と新しい科学の優れた適用例をもたらしました。ここで報告されているCASINOプロジェクトは成功を収めたパフォーマンス改善であり、新たなサクセスストーリーとなっています。 |
プロジェクトの背景
このdCSEプロジェクトの目的は、量子モンテカルロコードCASINOがHECToR:Cray XTスーパーコンピュータを効率的に使用できるようにし、より複雑な物理系システムをモデリング可能にすることでした。 ユニバーシティ・カレッジ・ロンドンのDario Alfeはプロジェクトの主任調査員でした。nAGのHPC専門家であるLucian Anton は12人月のプロジェクトをnAG CSEチームとCASINOの開発者と共同で行いました。
CASINO 及び 量子モンテカルロシミュレーションについて
量子モンテカルロ(QMC)法は比較的多くの原子を含む物理モデル、例えば結晶、ナノクラスターあるいはマクロ分子などの性質を計算するのに使用される精度の高い計算ツールです。 QMCの計算時間はシステムサイズの二乗あるいは三乗にスケーリングするという利点がありますが、非常に正確な結果を求めるには多くの位相空間配置サンプルを必要とします。そのためQMCの最大の課題は、最も高性能なコンピュータと最も有効なアルゴリズムを使用することが求められることです。 CASINO は過去10年間にケンブリッジ大学キャヴェンディッシュ研究所で開発されメンテナンスされた QMC のソフトウェアパッケージです。
プロジェクトの成果
共有メモリの技術が導入され、シングルノード上で複数のMPIプロセスがデータセットを共有できるようにすることでシミュレーションに必要なノード数が削減され、より大きなモデルをより効率的に計算可能になりました。 OpenMPとI/O最適化による階層的並列化のさらなる作業により、スケーラビリティが改善し、CASINOは10,000コア以上を使用したシミュレーションにおいて60‐80%高速化しました。 nAGの作業の後に、研究者らはオークリッジ国立研究所においてJaguar Petaflops スーパーコンピュータの40,000コアで実行することができました。
dCSEのPIでCASINOの主要ユーザであるAlfeは、このdCSEの研究はHECToRの一年の研究プロジェクトについておよそ1,200万 AUs (allocation units)(注) を節約したと見積もりました。HECToR やCASINOの実行に使用された他のスーパーコンピュータを用いた今後の研究にあてはめた場合、数百ポンドの節約となりAUの想定コストをほぼ£760k 節約することになります。
(注)アロケーションユニット(allocation unit, AU)はHECToRにおけるノード課金単位です。大まかに言えばLinpackベンチマーク(Rmax)を基にした1時間当たり1Tflopsの実行量がkAUに相当します。例えば60Tflopsのプロセッサ群は60kAU/時間に相当します。
詳細なテクニカルレポートは以下で参照いただけます。
http://www.hector.ac.uk/cse/distributedcse/reports/
さらに詳しくお知りになりたい場合は、日本NAG株式会社 コンサルティンググループご相談窓口 https://www.nag-j.co.jp/nagconsul/toiawase.htm (あるいはメール:consul@nag-j.co.jp)までお問い合わせください。