ふ~,昨日は入学式。桜は満開の盛りをちょっと過ぎたあたりで,まあいい頃合いである。ワシにとっては全然保養にならなかった春休みが終わってしまって,少々メランコリックな気分で一日過ごした。
春のぷちめれ祭りはこれにて終了。あんまし書けなかったけど,まあこの辺が限度。この先は月に2~3本ぐらい書ければ御の字であろう。何せ6月の研究会に申し込んでしまったので,4月いっぱいはガシガシ計算せねばならぬ。できればGW前に一応の結論までたどり着きたいところ。さてどーなりますやら。
その下準備も兼ねて,ようやっと安定してきたCentOS 5.3 x86_64環境でCore i7マシン2台をMPIクラスタにしてみた。使ったのはDistribution標準のOpenMPI 1.2.7。i386版とx86_64版が両方入ってしまうのだが,mpi-selectorというコマンドで使い分けができるようだ。
問題はセッティング。x86_64版は/usr/lib64/openmpi/1.2.7-gcc/以下にインストールされるのだが,どこに設定ファイルがあるのかよー分らん。どうやら*/etc/openmpi-default-hostfileにlamと同じ書式で使用ホストを書き込み,*/etc/openmpi-mca-params.confに使用IFの指定を書き込むらしい。
ハマったのは後者の方。使用ホストの名前指定をどう変更してもGbEの方を使ってくれない。なんで~,どうして~,とわめいても仕方ないのでググってみたら,ここに使用IFの指定をせねばならんということが午後10時過ぎに判明したのであった。openibとかuDAPLとかワシみたいな貧乏人には関係のないものも取っ払っておかないとmpirun時に警告が出まくるので,これを抑制する指定も追加して
btl=^openib,udapl
btl_tcp_if_include=eth0
を追加。openib, uDAPLをoffにし,通信IFはeth0を使用という意味になるようだ。
やーれやれ,これで初代クラスタ(Pentium III, 9PEs),三代目クラスタ(Pentium D, x86_64, 2*10=20PEs)と共に四代目クラスタ(Core i7 920, x86_64, 4*2=8PEs)として使えそうだわい。ちなみに二代目(Pentium IV, 11PEs)は現在別の用事で使われる予定である。もーこんなにマシンを揃えたりしないようにしようと決意する。
早速ちょろっとベンチマークをしてみると,MPFR/GMP演算単体では数%程度の速度向上しか見られないが,でかい線型計算を並列実行してみると倍ぐらい速くなったりする。ふーん,伊達に金取ってないんだなぁ・・・。何はともあれ,これからガシガシ計算せねば。
風呂入ったら寝ます。