[SCore-users-jp] Re: mpiコンパイル失敗
入谷 佳一
iriya @ crc.co.jp
2002年 7月 11日 (木) 10:42:16 JST
入谷です.
MPI+omni OpenMPの件,お教えいただいた方法で
コンパイル・実行できました.
大変御世話になりました.
ありがとう御座いました.
>いくつか問題がありました.
>1. omni では当然 pthread を使用するのですが, SCore 環境では checkpoint のため,
> 特別の pthread を使用する必要があります.
> これを使用するには pthread のあとに -lscwrap を指定する必要があります,
> とりあえず, link するためには
> /opt/omni/lib/openmp/gcc/lib/openmp/libexec/omniDriver
> の genSystemLibrary() の最後の
> sysLibs="-lpthread";;
> を
> sysLibs="-lpthread -lscwrap";;
> に変更する必要があります.
> (但し, これを行うと, 通常の環境での Omni が使用できなくなります.
>
>2. source を full path で指定したとき, object file が current directory に
> できない.
> % omf77 -c /tmp/a.f
> とすると a.o は current directory にできずに /tmp/a.o ができます.
> これは mpi のコンパイル環境の仮定とは違うため, うまく library などが
> できません.
> とりあえず, 以下を実行してください.
> (directory 以外はやっていることは変わりません.)
> # /opt/score/score-src/runtime/mpi/mpich-1.2.0/src
> # ./configure -arch=LINUX -device=ch_score -mpe \
> -cc=/opt/score5.0.0/bin/scorecc -fc=/opt/score5.0.0/bin/scoref77 \
> -optcc=-O4 -optf77=-O -cflags=-compiler=omni -fflags=-compiler=omni \
> -nof90 -noc++ \
> -prefix=/opt/score5.0.0/mpi/mpich-1.2.0/i386-redhat7-linux2_4_omni \
> -comm=zerocopy
> # make
> # make install
> (Fortran のサンプルプログラムのコンパイルに失敗しますが, とりあえず
> 無視してください. 3. を参照してください.)
>
>3. Fortran の include path の指定が -I ではできない.
> 2. のコンパイルの仮定でコンパイルされる Fortran サンプルプログラムには
> include 'mpif.h'
> の指定があるのですが, これをみつけてくれません.
> Fortran を使用するときは compile する current directory に
> /opt/score5.0.0/mpi/mpich-1.2.0/i386-redhat7-linux2_4_omni/include/mpif.h をコピーしてください.
>
>すべて一時しのぎばかりで申し訳ありません.
>
> from Kameyama Toyohisa
----------------------------------------
入谷 佳一 (Iriya Yoshikazu)
(株)CRCソリューションズ
エネルギー技術部 システム安全チーム
Tel. 03-5634-5803 Fax.03-5634-7338
SCore-users-jp メーリングリストの案内