klin938

Build HPL 2.0 with Open64 which ACML 4.4.0 to use?

Discussion created by klin938 on Dec 12, 2011
Latest reply on Dec 19, 2011 by klin938
/opt/acml4.4.0/gfortran64 or /opt/acml4.4.0/open64_64?

Hi guys,

On a Centos 5.7 machine, I have successfully built HPL 2.0 with the pre-compiled OpenMPI and ACML 4.4.0 for gfortran (http://developer.amd.com/documentation/articles/pages/hpchighperformancelinpack.aspx).

Later I moved forward and tried to do the same thing with Open64 4.2.5.2. I compiled OpenMPI 1.4.4 from source with Open64, thus both mpicc and mpif90 use Open64 linker. Then I compiled the HPL again with the following key configurations:

Qucikly the compilation failed with some errors look like:

 

/opt/acml4.4.0/gfortran64/lib/libacml.a(dgemv.o): In function `dgemv_':

dgemv.F:(.text+0x2b0): undefined reference to `_gfortran_string_index'

/opt/acml4.4.0/gfortran64/lib/libacml.a(xerbla.o): In function `xerbla_':

xerbla.f:(.text+0x76): undefined reference to `_gfortran_compare_string'

Although I fixed this by changing LAdir to use /opt/acml4.4.0/open64_64, compilation successed, I am not sure why it fixed the issue.
I am appriciated if anyone can explain the reason.
Regards,
Derrick

 

# A Open64 version of MPI MPdir = /opt/openmpi/1.4-open64 MPinc = -I$(MPdir)/include MPlib = # LAdir = /opt/acml4.4.0/gfortran64 <-- changed to /opt/acml4.4.0/open64_64 fixed the errors. LAinc = -I$(LAdir)/include LAlib = $(LAdir)/lib/libacml.a CC = /opt/openmpi/1.4-open64/bin/mpicc CCNOOPT = $(HPL_DEFS) CCFLAGS = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops -W -Wall # LINKER = /opt/openmpi/1.4-open64/bin/mpif90 LINKFLAGS = $(CCFLAGS)

Outcomes