数百個のプロセッサコアが利用可能であれば、通常の対角化法で1000原子から構成される系の構造最適化が可能です。 1000原子系のベンチマーク計算は次のように「runtestL2」によって実行できます。
% mpirun -np 128 openmx -runtestL2 -nt 4OpenMXは7個のテスト計算を実行し、計算結果を「work/large2_example」に保存されている参照データと比較します。 以下に示すのは、CRAY-XC30上で128個のMPIプロセスと4個のOpenMPスレッドを用いて実行した「runtestL2」の結果です。
1 | large2_example/C1000.dat | Elapsed time(s)= 1731.83 | diff Utot= 0.000000002838 | diff Force= 0.000000007504 |
2 | large2_example/Fe1000.dat | Elapsed time(s)=21731.24 | diff Utot= 0.000000010856 | diff Force= 0.000000000580 |
3 | large2_example/GRA1024.dat | Elapsed time(s)= 2245.67 | diff Utot= 0.000000002291 | diff Force= 0.000000015333 |
4 | large2_example/Ih-Ice1200.dat | Elapsed time(s)= 952.84 | diff Utot= 0.000000000031 | diff Force= 0.000000000213 |
5 | large2_example/Pt500.dat | Elapsed time(s)= 6831.16 | diff Utot= 0.000000002285 | diff Force= 0.000000004010 |
6 | large2_example/R-TiO2-1050.dat | Elapsed time(s)= 2259.97 | diff Utot= 0.000000000106 | diff Force= 0.000000001249 |
7 | large2_example/Si1000.dat | Elapsed time(s)= 1655.25 | diff Utot= 0.000000001615 | diff Force= 0.000000005764 |
Total elapsed time (s) 37407.95 |
これら全ての計算において、各原子の基底関数には価電子基底関数を2つ、分極基底関数を1つを割り当てていますので、 十分な精度を持った計算となっています。「Pt500.dat」を除く、他の全ての系は1000原子以上から構成されています。 ここでファイル名の最後の数字はそれぞれの系に含まれる原子数を示しています。 上記の表に示された1 MDステップ当たりの経過時間は30分程度です。 したがって、数百個のプロセッサコアが利用可能であれば1000原子から構成される系の構造最適化が 可能であることが分かります。 この計算に用いた入力ファイルと出力ファイルはディレクトリ「work/large2_example」に保存されています。 出力ファイルから得られた情報に基づき、1 SCFステップ当たりの経過時間をまとめたものを以下に示します。
No. | Input file | SCF steps | Elapsed time(s/SCF/spin) | Dimension |
1 | large2_example/C1000.dat | 44 | 35 | 13000 |
2 | large2_example/Fe1000.dat | 384 | 30 | 13000 |
3 | large2_example/GRA1024.dat | 54 | 35 | 13312 |
4 | large2_example/Ih-Ice1200.dat | 41 | 18 | 9200 |
5 | large2_example/Pt500.dat | 171 | 35 | 12500 |
6 | large2_example/R-TiO2-1050.dat | 35 | 57 | 15750 |
7 | large2_example/Si1000.dat | 48 | 34 | 13000 |
Kohn-Shamハミルトニアンの次元は10000のオーダで、SCFステップ当たりの所要時間は全ての系に対して40秒程度です。 全所要時間の差は、主にSCF反復回数の差から生じていることが分かります。