今日も今日とてコード書き。引き続きFortranモードで、ひたすら昨日やり残したデバッグ。少しづつ原因を追い詰めていくのは楽しいが、理解できないと胃がキリキリする。それにしても、バグが見つかる見つかる。ベースが自分のコードじゃないので、いつもの間違えないための仕掛けが、全然使えてない。
今日のバグ:
- implicit none の時に変数を宣言せずに使っていたら値が不定になっていた。MPIのbroadcastを呼ぶときに配列のサイズ指定に使っていたのだが、通信が全く行われていなかった。(implicit noneを使っていないときの悪い癖が出た)
- 並列時にノードごとに実行できない演算について、グローバルにまわしていたdoループの最後で同期を取るのを忘れていた。
- その他、単純な並列ルーチンの入れ忘れ多数。
しかし、まだ動かない.... でもあと一歩のはず。明日こそは。