「京」コンピュータ用固有値計算ライブラリ:EigenK
(Eigenvalue solver for K-Computer)
EigenK 1.0 (2012/6/21)
EigenK 1.0がリリースされました。
ダウンロード
ルーチン名 |
対象行列 |
備考 |
ソースコード |
---|---|---|---|
Eigen_s |
実対称行列 |
3重対角行列を経由 |
|
Eigen_sx |
実対称行列 |
5重対角行列を経由 |
|
Eigen_hermite |
エルミート行列 |
- |
マニュアル |
|
---|---|
日本語版 |
ライセンス
オープンソースとし、2条項BSDライセンスとします。
プログラム開発の目的及び概要
一般に、量子力学は行列力学とも言われ、ハミルトニアン行列の固有値・固有ベクトルを求めること(対角化)で、直接、量子状態を求めることができる。しかし、扱う基底、すなわち量子状態の数は、扱う原子数や電子の数と共に急速に増え、その行列は直ぐに極めて巨大なものとなってしまう。
これまで、数値計算による量子問題へのアプローチでは、しばしば計算量が膨大になる行列の対角化を出来る限り避ける方向で進歩してきたが、精度が必要とされる場合や解くべき問題が複雑な場合等、行列の対角化を避けることができないケースも多い。
日本原子力研究開発機構・システム計算科学センターでは、量子力学に基づく数値シミュレーションにおいて頻繁に利用される行列の大規模並列計算用対角化ルーチンとしてEigen_sを開発した。
これまで、Eigen_sは地球シミュレータ上で高速に動作した実績があり、一般ユーザが利用可能な最大の並列計算(512ノード利用)において、40万×40万次元の行列の対角化に成功している。
なお、その成果(論文)は2006年のGordon Bell Prize Finalistにノミネートされている(下記参考文献[1])。
その後、スーパーコンピュータのアーキテクチャはベクトル並列からスカラー並列となっているが、計算機システムの大規模化に伴ってさらに巨大な行列の対角化が可能となっている。
現在、最も巨大な行列の対角化計算が可能な計算機は、国内においては「京」であるが、システム計算科学センターでは、この「京」において高い計算性能が得られるよう、「京」のアーキテクチャを意識し、固有値計算ライブラリEigenKを新たに開発した。
このような普遍的ライブラリは、全ての大規模シミュレーションに共通の課題解決に繋がり、計算科学分野の研究進展や我が国の技術基盤強化に資することができると考え、その成果を機構内外の研究者にも広く提供する。
本公開に供する対角化ライブラリとしては、従来から用いられている3重対角化を経由して行列の対角化を行う手法を採用したルーチンの他に、更なる高速性能を求めて新たに5重対角化を経由するルーチンも開発し提供することとした。
これらのライブラリにより、手軽に大規模並列計算が「京」やその他のスーパーコンピュータ上にて可能となり、これまでに例のない巨大な行列の対角化を実現すると同時に科学的成果が得られれば、これは開発者一同、望外の喜びである。
なお、EigenKの開発は、JSTからのCREST受託研究「超伝導新奇応用のためのマルチスケール・マルチフィジックスシミュレーション基盤の構築」の下、得られた成果である。研究開発に当たったのは、システム計算科学センター・CRESTチームと電気通信大学・今村准教授(現理研)である。
プログラムの特徴
・ハウスホルダー変換により行列を3重対角化し、分割統治法で3重対角行列の固有値および固有ベクトルを求め、ハウスホルダー逆変換で元の行列の固有ベクトルを計算する(Eigen_sおよびEigen_h)。
・演算性能に対してメモリからのデータ転送速度が遅い(Byte/Flopが小さい)計算機向きのプログラムとして5重対角行列を経由するルーチンも提供している(Eigen_sx)。
・「京」コンピュータの特徴の1つであるトーラス型のネットワークに適した通信方法を採用している。
・1000コアを超える並列計算でも高性能を維持している。
≪東京大学のT2Kシステムの4096コアを利用して20万次元の実対称行列を計算した際の
計算時間および計算性能(下記参考文献[2])≫
ルーチン名 |
計算時間(秒) |
計算性能 |
---|---|---|
Eigen_s |
3514 |
3036 GFLOPS(ピーク性能比8.1%) |
Eigen_sx |
2227 |
4789 GFLOPS(ピーク性能比12.7%) |
参考文献
[1] Susumu Yamada, Toshiyuki Imamura, Takuma Kano, Masahiko Machida, “High-Performance Computing for Exact Numerical Approaches to Quantum Many-Body Problems on the Earth Simulator”, ACM/IEEE SC|06, Tampa, USA, 2006. (Selected as one of the finalist papers of Gordon Bell Prize 2006).[CD-ROM]
[2] Imamura, T., Yamada, S., and Machida, M., “Development of a high performance eigensolver on the peta-scale next generation supercomputer system”, Progress in NUCLEAR SCIENCE and TECHNOLOGY, Vol. 2, pp.643-650 (2011). [CD-ROM]
開発者
山田進(原子力機構)、今村俊幸*(電気通信大学)、町田昌彦(原子力機構)
*現在、理化学研究所
連絡先
ccse-quad(at)ml.jaea.go.jp
※ (at) は @ に置き換えて下さい。