[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bgl-discuss] MPI link problems
Hi,
I think it comes from using the C++ compiler with Fortran objects.
First why are you using xlc++ instead of blrts_xlC?
If you don't mind generating some performance data with it, you'd always
use the TAU library which has the Fortran MPI bindings with the
underscore. If you want to test it, try:
blrts_xlC *.o -L<dir> -l<yourlibs> -L/soft/tools/tau/tau-2.14.8/bgl/lib
-lTauMpi-mpi-pdt -L/bgl/BlueLight/ppcfloor/bglsys/lib -lmpich.rts
-lmsglayer.rts -ldevices.rts -lrts.rts -ldevices.rts
-L/soft/tools/tau/tau-2.14.8/bgl/lib -ltau-mpi-pdt
-L/opt/ibmcmp/xlf/9.1/bin/../blrts_dev_lib
-L/opt/ibmcmp/xlf/9.1/bin/../blrts_lib -lxlf90 -lxlfmath -lxl -lm
and try running it. It'll generate profile.<node>.0.0 files that
have performance data for MPI routines (see paraprof from
/soft/tools/tau/tau-2.14.8/bgl/bin).
Let me know if this works for you.
Thanks,
- Sameer
Wed, 21 Sep 2005, Satish Balay wrote:
>
> libImpact.a is looking for 'mpi_barrier_' when it should look for
> 'mpi_barrier'. Mostlikely it is built with the wrong compiler [or
> compiler options]. So you'll have to look at how it was compiled.
>
> Satish
>
> ----
> login2 /home/balay> nm -o /bgl/BlueLight/DRV202_2005-050606-SLES8/ppc/bglsys/lib/libmpich.rts.a | grep mpi_barrier
> /bgl/BlueLight/DRV202_2005-050606-SLES8/ppc/bglsys/lib/libmpich.rts.a:barrierf.o:00000000 W mpi_barrier
> /bgl/BlueLight/DRV202_2005-050606-SLES8/ppc/bglsys/lib/libmpich.rts.a:barrierf.o:00000000 T pmpi_barrier
> login2 /home/balay>
>
>
> On Wed, 21 Sep 2005, JungMin (Judy) Lee wrote:
>
> > Hi,
> > Does anyone have this same error and know how to solve this severe linking
> > problems?
> >
> >
> > I run
> > xlc++ -g -O -qarch=440 -qmaxmem=64000 -DXLF -o xmain -L.
> > -L/home/jungmin/mxyzptlk/lib -L/bgl/BlueLight/ppcfloor/bglsys/lib ccmain.o
> > mp.o libImpact.a libExternal.a libImpact.a -lbmlfactory -lphysics_toolkit
> > -lbeamline -lphysics_toolkit -lbeamline -lmxyzptlk -lbasic_toolkit
> > -L/home/jungmin/glib-1.2.10/lib -lglib -lm -lnsl -L/opt/ibmcmp/xlf/9.1/lib
> > -lxl -lxlf90 -lxlopt hackery.o -lmpich.rts -lmsglayer.rts -lrts.rts
> > -ldevices.rts
> >
> > Then the errors:
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd5f4):Func/Fldmger.f90:268:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd604):Func/Fldmger.f90:270:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd70c):Func/Fldmger.f90:282:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd734):Func/Fldmger.f90:284:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd744):Func/Fldmger.f90:286:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd7c8):Func/Fldmger.f90:295:
> > undefined reference to `mpi_barrier_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd844):Func/Fldmger.f90:245:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd86c):Func/Fldmger.f90:247:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd87c):Func/Fldmger.f90:249:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd8b4):Func/Fldmger.f90:282:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd8dc):Func/Fldmger.f90:284:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xd8ec):Func/Fldmger.f90:286:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdb48): In function
> > `guardsum1_fldmger_':
> > Func/Fldmger.f90:42: undefined reference to `mpi_barrier_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdc48):Func/Fldmger.f90:80:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdce8):Func/Fldmger.f90:87:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdcf8):Func/Fldmger.f90:89:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdd90):Func/Fldmger.f90:98:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xde04):Func/Fldmger.f90:105:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xde14):Func/Fldmger.f90:107:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdee8):Func/Fldmger.f90:120:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdfa4):Func/Fldmger.f90:127:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xdfb4):Func/Fldmger.f90:129:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xe064):Func/Fldmger.f90:138:
> > undefined reference to `mpi_irecv_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xe0f8):Func/Fldmger.f90:145:
> > undefined reference to `mpi_send_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xe108):Func/Fldmger.f90:147:
> > undefined reference to `mpi_wait_'
> > libImpact.a(libImpact_a-Fldmger.o)(.text+0xe1a0):Func/Fldmger.f90:157:
> > undefined reference to `mpi_barrier_'
> >
> > - --------------------------------------------------------------------
> > To add or remove yourself from this mailing list, use the 'notifyme'
> > command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.
> >
> >
>
> - --------------------------------------------------------------------
> To add or remove yourself from this mailing list, use the 'notifyme'
> command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.
>
- --------------------------------------------------------------------
To add or remove yourself from this mailing list, use the 'notifyme'
command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.