[dcpam トップページ | メモ書き SIGEN ファイル | メモ書きファイルリスト]
<URL:http://www.gfd-dennou.org/arch/dcmodel/doc/sample_tree/> を修正していく. 主に注意するのは以下の点.
各プロジェクトページには dcmodel へのリンクが必須
一番上にはギャラリーを持ってくる. ソースコードはその後ろ.
rdoc-f95 の書式に合わせてソースコードのコメントを記述する.
ソースコードに物理過程が加えられたのに伴い, ドキュメントにも物理過程部分 を追加する.
例: rikigaku -> dynamics
agcm5 の第3章「コード解説」に相当する部分の挿入. 変数に関しては dcpam に置き換える.
現在の explicit を semi-implicit に改造する.
以下の作業はまだこれから.
リスタートファイルを組み込む機構を取り入れる際には, spmodel, arare などと合わせる.
T63L20 で初期値 300K, 250K の 2 つでの計算は終了. 「計算結果」置き場にすべて置いた.
時間があれば初期値をより変えたものを走らせておいてもいいかもしれないが, まずはリスタートファイルを入出力できるようにするのが急務
dcpam に対して
'-w -sx6 -Wf"-pvctl nodivloop noloopchg -O"'
というオプションをつけているが, 単に計算速度を低下させている だけかもしれない. (少なくとも AGCM5 にはこれを指定せずとも うまく動いている. ISPACK には必要なオプションだが)
DCPAM のコンパイルのみこれをはずしてみて, 計算速度を計測してみたが, 数%ぐらいしか違わなかった.
今度は, ispack, gt4f90io, spmodel それぞれでも上記のオプションを はずして計算してみて速度を計測する.
なお, ispack はループ入れ替えなどの最適化をすると実行速度が 極端に落ちるらしい. (ispack の README 参照).
ISPACK と spmodel の OpenMP による並列化を利用し, DCPAM の並列計算を行なった. 計算効率は以下の通り.
CPU 数 CPU 時間 1 1.0 2 1.4 4 1.5
残念ながら (ISPACK や spmodel を利用していない部分は全然チューニングし てないので当然かもしれないが), 今のところ並列化効率は全然良くない. 全 体の並列化効率を向上させるには, ISPACK 以外の部分の並列化も考慮すべき かも.