[SCore-users-jp] Re: mpiコンパイル失敗

kameyama @ pccluster.org kameyama @ pccluster.org
2002年 7月 10日 (水) 20:54:25 JST


亀山です.

In article <200207100853.AA00209 @ crcpc79.crc.co.jp> iriya @ crc.co.jp (入谷 佳一) wrotes:
>     # smake 2>&1 | tee make.log
> で失敗してしまいました.
> お手数ですが,よろしくお願いいたします.

いくつか問題がありました.
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



SCore-users-jp メーリングリストの案内