下のように mpich2 と gfortran で遊んでいんたのだが、
本格的に CReSS の計算を行った所、top で眺めているとプロセスリストが
更新されるたび毎に、SIZE が 1M ずつ増えて、
最終的にメモリが一杯になって
止まってしまうと言う現象が起こった。
この現象は、シングル版の CReSS では
起こらないし、研究室の並列計算機 (Linux RH mpich1 ifort) でも起こらない。
mpich2, mpich1, openmpi と mpi を替えて試すが、変化なし。。。
openmpi が SMP で良いような感じのことが書かれているので、そのまま openmpi を
使う事にする。
数日間の試行錯誤の末、
gfortran を止めて g95 をインストールして
openmpi を作り直してみた。
ports/lang/g95 で make install した後、
ports/net/openmpi で make -DFC=g95 install するとこけた(追求してない)ので
work/openmpi-1.2.5/ で setenv FC /usr/local/bin/g95 してから configure; make ;
make install した。
この状態だと。並列計算してもプロセスのサイズは
増えないようだ。 :-) とすると、犯人は gfortran か???
ともあれ、これでやっと本格的に計算できる状況になった(と思いたい。。。)(2008.3.6)
上記のメモリの問題は、いつの間にか解消したみたいで、gfortran43 とかの時代では ちゃんと動くようです。
cd /usr/ports/net/mpich2/ make installこれで gfortran42 を使う形でインストールされる。
mpd mpirun -machinefile machinefile -np 2 /bin/date mpdallexitとかすると動く。-np の次が pe の数である。
mpirun -machinefile machinefile -np 2 ./solver.exe < user.confで動くんじゃないかな、未確認だけど
2007.4.26 のメモ
メモのトップへ
I. Tamagawa