[mvapich-discuss] Problem building mvapich 1.0 with Portland Group

Matthew Koop koop at cse.ohio-state.edu
Mon Dec 17 21:00:56 EST 2007


Craig,

What version of PGI are you using? We've seen this issue before with
versions of PGI previous to 6.2 (we've verified with 6.2-4). If you build
MVAPICH with the latest version of PGI the error will go away as bswap_64
is implemented in this version.

It is due to bswap_64 being used in an OFED include file -- so no use in
trying to recompile OFED with PGI.

If updating to the latest version is not an option, we can potential find
a workaround, but updating to the latest version of PGI is the preferred
solution.

Let us know if you have any other problems.

Thanks,

Matt

On Mon, 17 Dec 2007, Craig Tierney wrote:

> Deepak Nagaraj wrote:
> > Hi Craig,
> >
> > On Dec 17, 2007 1:08 PM, Craig Tierney <Craig.Tierney at noaa.gov> wrote:
> >> I get the following error when building the example programs.
> >>
> >> ../bin/mpicc -D_EM64T_ -D_SMP_ -DUSE_HEADER_CACHING  -DONE_SIDED
> >> -DMPIDI_CH3_CHANNEL_RNDV -DMPID_USE_SEQUENCE_NUMBERS  -DRDMA_CM
> >> -I/usr/include -O2 -L../lib -o cpi cpi.o  -lm -lmpich -L/usr/lib64
> >> -lrdmacm -libverbs -libumad -lpthread   -lrt   -L/usr/lib64  -lrdmacm
> >> -libverbs -libumad -lpthread   -lrt
> >> ../lib/libmpich.a(ibv_param.o)(.text+0xa7): In function `ntohll':
> >> : undefined reference to `bswap_64'
> >> ../lib/libmpich.a(ibv_param.o)(.text+0xb7): In function `htonll':
> >> : undefined reference to `bswap_64'
> >>
> > grep reveals that this is a macro sitting in byteswap.h.  Do you have
> > this file in your compiler's include path?  Installing glibc-devel
> > should get you this file if you are on Linux, as per Google.
> >
> > $ cd /usr/include
> > $ grep -r "bswap_64" *
> > bits/byteswap.h:#  define __bswap_64(x) \
> > bits/byteswap.h:#  define __bswap_64(x) \
> > byteswap.h:# define bswap_64(x) __bswap_64 (x)
> > $
> >
> > Thanks,
> > -Deepak
>
> I was thinking that the problem was related to this.  This macro
> does exist, and I am pretty sure that the call to pgcc is picking it
> up.
>
> However, the problem is that no function in the mvapich distribution
> calls this function.  It is coming form some of the OFED libraries.
> To me, it appears that I have to build the OFED libraries with
> pgcc (not gcc) so that it picks up the macro.  I am highly reluctant
> to do this, because it means I need multiple versions of OFED, which
> makes no sense.
>
> Craig
>
>
> --
> Craig Tierney (craig.tierney at noaa.gov)
> _______________________________________________
> mvapich-discuss mailing list
> mvapich-discuss at cse.ohio-state.edu
> http://mail.cse.ohio-state.edu/mailman/listinfo/mvapich-discuss
>




More information about the mvapich-discuss mailing list