[CPMD-list] UNSUCCESFUL IBM-SP4 COMPILATION
Alessandro Curioni
cur
Tue Aug 27 15:08:24 CEST 2002
The problem is that you need the lapack libraries in order to compile CPMD. Theessl are very important for performance reason, but contain only a subset of the lapack.
The best options to compile CPMD on a pwr4 machine (single frame) follows; the next CPMD release will have full support for the p690 ( included multiswitched configurations and mixed MPI/SMP code).
32-bit compilation:
FFLAGS = -O3 -qmaxmem=32768 -qarch=pwr4 -qtune=pwr4
LFLAGS = -L(location of lapack libraries) -llapack -lessl -llapack \
-bbinder:/usr/lib/bind -bmaxdata:0x40000000 -qarch=pwr3 $(QMMM_LIBS)
CFLAGS = -O3 -qarch=pwr4 -qtune=pwr4
CPP = /usr/ccs/lib/cpp -P
CPPFLAGS = -D__IBM -DESSL -DPARALLEL -DMP_LIBRARY=__MPI -DFFT_ESSL
CC = cc
FC = mpxlf_r -c
LD = mpxlf_r
AR = /usr/bin/ar
64-bit compilation:
FFLAGS = -O3 -qmaxmem=32768 -qarch=pwr4 -qtune=pwr4 -q64
LFLAGS = -L(location of lapack libraries) -llapack -lessl -llapack -q64 \
-bbinder:/usr/lib/bind -bmaxdata:0x40000000 -qarch=pwr3 $(QMMM_LIBS)
CFLAGS = -O3 -qarch=pwr4 -qtune=pwr4 -q64
CPP = /usr/ccs/lib/cpp -P
CPPFLAGS = -D__IBM -DESSL -DPOINTER8 -DPARALLEL -DMP_LIBRARY=__MPI -DFFT_ESSL
CC = cc
FC = mpxlf_r -c
LD = mpxlf_r
AR = /usr/bin/ar
The lapack libraries used in the two cases have to be compiled appropriately e.g. 32-bit or 64 bit.
For performance reason is advisable to replace the azzero routine in util.F
with the following:
subroutine iazzero(zero,n)
integer zero(n)
integer i,j,ii
integer lzero,l1reste,lend
l1zero=loc(zero(1))
if(n.lt.32) then
do i=1,n
zero(i)=0.d0
enddo
return
endif
if (mod(l1zero,4).ne.0) stop 'IAZZERO'
l1reste=(128-mod(l1zero,128))/4
lend=n-mod(n-l1reste,32)
do i=1,l1reste
zero(i)=0
enddo
do i=1+l1reste,lend,32
Cibm* cache_zero(zero(i))
enddo
do i=1+lend,n
zero(i)=0
enddo
return
end
Regards,
Alessandro Curioni
> >
> >
> > --------------A9755BDD1401D15B5A292BD1
> > Content-Type: text/plain; charset=us-ascii
> > Content-Transfer-Encoding: 7bit
> >
> > Hi there.
> > I've been trying to compile the code v3 on a system IBM-SP4, and i have
> > no compilation success.
> > First, the options that come in the Config file are just SP2 and SP3,
> > whenever i use both, the result is the same: the lack of the LAPACK
> > library.
> > When i recompile without this flag and use instead the PESSL flag
> > and the option mpxlf_r -O3 the error message is:
> >
> > ...
> > ... mm_cpmd_ext_pot_f77.o sysdepend.o shmemory.o -lpessl
> > -bbinder:/usr/lib/bind -bmaxdata:1024000000
> > ld: 0711-317 ERROR: Undefined symbol: .dscal
> > ld: 0711-317 ERROR: Undefined symbol: .dswap
> > ld: 0711-317 ERROR: Undefined symbol: .dcopy
> > ...
> > ...
> > ...
> > ld: 0711-317 ERROR: Undefined symbol: .idamin
> > ld: 0711-317 ERROR: Undefined symbol: .dgeev
> > ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
> > information.
> > make: 1254-004 The error code from the last command is 8.
> > Stop.
> >
> > These is a sample of a makefile, under pwr2 architecture
> >
> > #------------------------------MAKEFILE---------------------------------
> >
> > #
> > # Makefile for cpmd.x (plane wave electronic calculation)
> > # Configuration: IBM-SP2
> > # Creation of Makefile: Aug 26 2002
> > # on AIX longhorn1 1 5 0023E2EA4C00
> > # Author: puma
> > #-----------------------------------------------------------------------
> >
> > #
> > SHELL = /bin/sh
> > #
> > #--------------- Default Configuration for IBM-SP2 ---------------
> > SRC = .
> > DEST = .
> > BIN = .
> > #QMMM_FLAGS = -D__QMECHCOUPL
> > #QMMM_LIBS = -L. -lmm
> > FFLAGS = -qmaxmem=8192 -qarch=pwr2
> > LFLAGS = -lpessl -bbinder:/usr/lib/bind -bmaxdata:1024000000
> > $(QMMM_LIBS)
> > CFLAGS = -O3
> > CPP = /usr/ccs/lib/cpp -P
> > CPPFLAGS = -D__IBM -DPARALLEL -DMP_LIBRARY=__MPI -DFFT_ESSL
> > CC = cc
> > FC = mpxlf_r -c -O3
> > LD = mpxlf_r -O3
> > AR = /usr/bin/ar
> > #----------------------------------------------------------------------------
> >
> > #
> >
> > DOES ANYONE HAVE ANY IDEA TO HELP?
> > THANKS AND BEST REGARDS
> >
> > --
> > J.L. Rodriguez-Lopez
> > Texas Materials Institute
> > The University of Texas at Austin
> > ETC 8.180 Austin, Texas 78712-1063
> > Phone: (512) 471-3578
> > Fax: (512) 475-8482
> >
> >
> >
> > --------------A9755BDD1401D15B5A292BD1
> > Content-Type: text/html; charset=us-ascii
> > Content-Transfer-Encoding: 7bit
> >
> > <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
> > <html>
> > Hi there.
> > <br>I've been trying to compile the code v3 on a system IBM-SP4, and i
> > have no compilation success.
> > <br>First, the options that come in the Config file are just SP2 and SP3,
> > whenever i use both, the result is the same: the lack of the<b> LAPACK</b>
> > library.
> > <br>When i recompile without this flag and use instead the<i> </i><b>PESSL</b>
> > flag
> > <br>and the option <b>mpxlf_r -O3</b> the error message is:
> > <p>...
> > <br><i><font size=-1>... mm_cpmd_ext_pot_f77.o sysdepend.o
> > shmemory.o -lpessl -bbinder:/usr/lib/bind -bmaxdata:1024000000</font></i>
> > <br><i><font size=-1>ld: 0711-317 ERROR: Undefined symbol: .dscal</font></i>
> > <br><i><font size=-1>ld: 0711-317 ERROR: Undefined symbol: .dswap</font></i>
> > <br><i><font size=-1>ld: 0711-317 ERROR: Undefined symbol: .dcopy</font></i>
> > <br><i><font size=-1>...</font></i>
> > <br><i><font size=-1>...</font></i>
> > <br><i><font size=-1>...</font></i>
> > <br><i><font size=-1>ld: 0711-317 ERROR: Undefined symbol: .idamin</font></i>
> > <br><i><font size=-1>ld: 0711-317 ERROR: Undefined symbol: .dgeev</font></i>
> > <br><i><font size=-1>ld: 0711-345 Use the -bloadmap or -bnoquiet option
> > to obtain more information.</font></i>
> > <br><i><font size=-1>make: 1254-004 The error code from the last command
> > is 8.</font></i>
> > <br><i><font size=-1>Stop.</font></i><i><font size=-1></font></i>
> > <p>These is a sample of a makefile, under pwr2 architecture
> > <p><i><font size=-1>#------------------------------MAKEFILE---------------------------------</font></i>
> > <br><i><font size=-1>#</font></i>
> > <br><i><font size=-1># Makefile for cpmd.x (plane wave electronic calculation)</font></i>
> > <br><i><font size=-1># Configuration: IBM-SP2</font></i>
> > <br><i><font size=-1># Creation of Makefile: Aug 26 2002</font></i>
> > <br><i><font size=-1># on AIX longhorn1 1 5 0023E2EA4C00</font></i>
> > <br><i><font size=-1># Author: puma</font></i>
> > <br><i><font size=-1>#-----------------------------------------------------------------------</font></i>
> > <br><i><font size=-1>#</font></i>
> > <br><i><font size=-1>SHELL = /bin/sh</font></i>
> > <br><i><font size=-1>#</font></i>
> > <br><i><font size=-1>#--------------- Default Configuration for IBM-SP2
> > ---------------</font></i>
> > <br><i><font size=-1>SRC = .</font></i>
> > <br><i><font size=-1>DEST = .</font></i>
> > <br><i><font size=-1>BIN = .</font></i>
> > <br><i><font size=-1>#QMMM_FLAGS = -D__QMECHCOUPL</font></i>
> > <br><i><font size=-1>#QMMM_LIBS = -L. -lmm</font></i>
> > <br><i><font size=-1>FFLAGS = -qmaxmem=8192 -qarch=pwr2</font></i>
> > <br><i><font size=-1>LFLAGS = -lpessl -bbinder:/usr/lib/bind -bmaxdata:1024000000
> > $(QMMM_LIBS)</font></i>
> > <br><i><font size=-1>CFLAGS = -O3</font></i>
> > <br><i><font size=-1>CPP = /usr/ccs/lib/cpp -P</font></i>
> > <br><i><font size=-1>CPPFLAGS = -D__IBM -DPARALLEL -DMP_LIBRARY=__MPI
> > -DFFT_ESSL</font></i>
> > <br><i><font size=-1>CC = cc</font></i>
> > <br><i><font size=-1>FC = mpxlf_r -c -O3</font></i>
> > <br><i><font size=-1>LD = mpxlf_r -O3</font></i>
> > <br><i><font size=-1>AR = /usr/bin/ar</font></i>
> > <br><i><font size=-1>#----------------------------------------------------------------------------</font></i>
> > <br><i><font size=-1>#</font></i>
> > <p>DOES ANYONE HAVE ANY IDEA TO HELP?
> > <br>THANKS AND BEST REGARDS
> > <pre>--
> > J.L. Rodriguez-Lopez
> > Texas Materials Institute
> > The University of Texas at Austin
> > ETC 8.180 Austin, Texas 78712-1063
> > Phone: (512) 471-3578
> > Fax: (512) 475-8482</pre>
> > </html>
> >
> > --------------A9755BDD1401D15B5A292BD1--
> >
> > _______________________________________________
> > CPMD-list mailing list
> > CPMD-list at cpmd.org
> > http://www.cpmd.org/mailman/listinfo/cpmd-list
> >
>
>
>
More information about the CPMD-list
mailing list