[molpro-user] compilation troubles on AIX 5.3
Jyh-Shyong Ho
c00jsh00 at nchc.org.tw
Thu Mar 1 06:04:23 GMT 2007
Dear Molpro users,
We to have some difficulties in building Molpro 2006.1 on our IBM P595
(AIX 5.3) system,
the compilation failed even in building the utilitiy ftc.c:
cc -q64 -qmaxmem=-1 -c -DSEEK=.001 -DSPEED=200000 -qarch=auto -DI64 -q64
-qwarn64 -DAIX42 -DAIX5 -DNOALRM -DUSE_LAPI -DHAVE_INTTYPES_H
-DMOLPRO_GETOPTLONG -DMA_ALLOC -DMOLPROC_PAR
-DMOLPROBASE=\"/package/chem/molpro/source/molpro2006.1\" -I. -O2 ftc.c
"/usr/include/sys/ras.h", line 357.1: 1506-195 (S) Integral constant
expression with a value greater than zero is required.
"ftc.c", line 43.47: 1506-743 (I) 64-bit portability: possible change of
result through conversion of int type into unsigned long int type.
"ftc.c", line 44.38: 1506-743 (I) 64-bit portability: possible change of
result through conversion of int type into unsigned long int type.
"ftc.c", line 55.12: 1506-742 (I) 64-bit portability: possible loss of
digits through conversion of unsigned long int type into int type.
"ftc.c", line 61.39: 1506-743 (I) 64-bit portability: possible change of
result through conversion of int type into unsigned long int type.
"ftc.c", line 62.30: 1506-743 (I) 64-bit portability: possible change of
result through conversion of int type into unsigned long int type.
I have no idea why system file /usr/include/sys/ras.h is invloved, the
file does not exist in AIX 5.2.
Any suggestion to solve this problem is appreciated.
Jyh-Shyong Ho, Ph.D.
Research Scientist
National Center for High Performance Computing
Hsinchu, Taiwan, ROC
Toon Verstraelen 提到:
>
> Dear Molpro users,
>
>
> We experience some difficulties with the compilation of molpro 2006.1
> on AIX 5.3 systems (p510 and p575, recently updated, version
> 5003-05-05) Details about our system configuration (compilers and
> libraries) are included below. The actual compilation runs fine. after
> running gmake, the a binary molprop_2006_1_i8_lapi.exe can be found in
> the bin directory. Unfortunately we can not start any job, e.g. when
> we try to do run tune.com as follows:
>
> export MP_PROCS=2
> export MP_MSG_API=lapi
> export MP_HOSTFILE=/home/toon/hostfile
> export RT_GRQ=ON
> export AIXTHREAD_SCOPE=S
> export MP_INFOLEVEL=1
> export LAPI_USE_SHM=yes
> export USE_OLDAIO=y
> ./bin/molpro < tuning.com
>
> We get the following output:
>
>
> MPP nodes nproc
> moldyn60 2
> ga_uses_ma=false, calling ma_init with nominal heap.
> GA-space will be limited to 8.0 MW (determined by -G option)
>
> Primary working directories: /tmp/toon
> Secondary working directories: /tmp/toon
>
>
> MPP tuning parameters: Latency= 0 Microseconds, Broadcast
> speed= 0 MB/sec
> default implementation of scratch files=sf
>
> memory,8,m
> maxdim=32
> maxdim1=64
> maxdim2=180
>
> blastest,n=120,unroll=4,ntrans=2,mxmblk=48,mxmbln=48,blas2=0
> mflop=max(flopmxm,flopdgm)
>
> blastest,n=480,unroll=2,ntrans=2,mxmblk=64,mxmbln=64,mflop=mflop,blas2=0
> flopmx2=flopmxm
> blastest,n=480,unroll=3,ntrans=2,mxmblk=64,mxmbln=64,mflop=mflop,blas2=0
> flopmx3=flopmxm
> blastest,n=480,unroll=4,ntrans=2,mxmblk=64,mxmbln=64,mflop=mflop,blas2=0
> flopmx4=flopmxm
>
> flopmx480=max(flopmx2,flopmx3,flopmx4)
> flopdg480=flopdgm
> nroll=4
> if(flopmx3.gt.max(flopmx2,flopmx4)) nroll=3
> if(flopmx2.gt.max(flopmx3,flopmx4)) nroll=2
>
> if(nroll.eq.2) then
> mxmblk=64
>
> blastest,n=960,unroll=nroll,mxmblk=nblk,mxmbln=nblk,ntrans=2,mflop=mflop,blas2=0
>
> flopmax=flopmxm
> else
> flopmax=0
> do nblk=64,188,24
>
> blastest,n=960,unroll=nroll,mxmblk=nblk,mxmbln=nblk,ntrans=2,mflop=mflop,blas2=0
>
> if(flopmxm.gt.flopmax) then
> mxmblk=nblk
> flopmax=flopmxm
> end if
> enddo
> endif
> flopmx960=flopmax
> flopdg960=flopdgm
>
>
> blastest,n=60,unroll=nroll,ntrans=2,mxmblk=mxmblk,mxmbln=mxmblk,mflop=mflop,blas2=0
>
> flopmx60=flopmxm
> flopdg60=flopdgm
>
> mflop=mflop/2
> i=0
> mindgm=4
> mindgv=4
> do k=4,maxdim+2
> i=i+1
> dim(i)=k
> if(k.gt.maxdim ) dim(i)=maxdim1
> if(k.gt.maxdim+1) dim(i)=maxdim2
>
> blastest,n=dim(i),ntrans=2,unroll=nroll,mxmblk=mxmblk,mxmbln=mxmblk,mflop=mflop
>
> flopmxma(i)=flopmxm
> flopdgem(i)=flopdgm
> flopmxmv(i)=flopmxv
> flopdgev(i)=flopdgv
> if(flopdgm.le.flopmxm) mindgm=dim(i)+1
> if(flopdgv.le.flopmxv) mindgv=dim(i)+1
> if(k.gt.max(mindgm,mindgv)) goto lab1:
> enddo
>
> lab1:
> if(mindgm.gt.maxdim2) mindgm=5000
> if(mindgv.gt.maxdim2) mindgv=5000
> mindgc=1
> do i=1,maxdim+2
> dim1(i)=i
> if(i.gt.maxdim ) dim1(i)=maxdim1
> if(i.gt.maxdim+1) dim1(i)=maxdim2
>
> blastest,n=60,ncol=dim1(i),ntrans=2,unroll=nroll,mxmblk=mxmblk,mxmbln=mxmblk,mflop=mflop,blas2=0
>
> flopmxma_c(i)=flopmxm
> flopdgem_c(i)=flopdgm
> if(flopdgm.le.flopmxm) mindgc=dim1(i)+1
> if(i.gt.mindgc) goto lab2:
> enddo
>
> lab2:
> if(mindgc.gt.maxdim2) mindgc=5000
> mindgr=1
> do i=1,maxdim+2
> dim1(i)=i
> if(i.gt.maxdim ) dim1(i)=maxdim1
> if(i.gt.maxdim+1) dim1(i)=maxdim2
>
> blastest,n=60,nrow=dim1(i),ntrans=2,unroll=nroll,mxmblk=mxmblk,mxmbln=mxmblk,mflop=mflop,blas2=0
>
> flopmxma_r(i)=flopmxm
> flopdgem_r(i)=flopdgm
> if(flopdgm.le.flopmxm) mindgr=dim1(i)+1
> if(i.gt.mindgr) goto lab3:
> enddo
>
> lab3:
> if(mindgr.gt.maxdim2) mindgr=5000
> mindgl=1
> do i=1,maxdim+2
> dim1(i)=i
> if(i.gt.maxdim ) dim1(i)=maxdim1
> if(i.gt.maxdim+1) dim1(i)=maxdim2
>
> blastest,n=60,nlink=dim1(i),ntrans=2,unroll=nroll,mxmblk=mxmblk,mxmbln=mxmblk,mflop=mflop,blas2=0
>
> flopmxma_l(i)=flopmxm
> flopdgem_l(i)=flopdgm
> if(flopdgm.le.flopmxm) mindgl=dim1(i)+1
> if(i.gt.mindgl) goto lab4:
> enddo
>
> lab4:
> if(mindgl.gt.maxdim2) mindgl=5000
> i=#dim+1
> dim(i)=60
> flopmxma(i)=flopmx60
> flopdgem(i)=flopdg60
>
> i=i+1
> dim(i)=480
> flopmxma(i)=flopmx480
> flopdgem(i)=flopdg480
>
>
> i=i+1
> dim(i)=960
> flopmxma(i)=flopmx960
> flopdgem(i)=flopdg960
>
> ncache=mxmblk*mxmblk*3
> mflop=2*mflop
>
> table,dim,flopmxma,flopdgem,flopmxmv,flopdgev
>
> table,dim1,flopmxma_c,flopdgem_c,flopmxma_r,flopdgem_r,flopmxma_l,flopdgem_l
>
> show,nroll,mxmblk,ncache,mindgm,mindgc,mindgl,mindgr,mindgv
>
>
> blastest,saverc,n=120,mxmblk=mxmblk,mxmbln=mxmblk,ncache=ncache,unroll=nroll\
>
>
> mindgm=mindgm,mindgl=mindgl,mindgc=mindgc,mindgv=mindgv,mindgr=mindgr,mflop=mflop
>
>
> if(nproc_mpp.gt.1) then
> blastest,saverc,mxma_mpp=1,n=960,mflop=3000
> end if
>
>
> Variables initialized (517), CPU time= .01 sec
> Commands initialized (293), CPU time= .01 sec, 434 directives.
> Default parameters read. Elapsed time= .34 sec
> Checking input...
> Passed
> 1
>
>
> *** PROGRAM SYSTEM MOLPRO ***
> Copyright, University College Cardiff
> Consultants Limited, 2004
>
> Version 2006.1 linked 26 Feb 2007
> 14:34:13
>
>
>
> **********************************************************************************************************************************
>
> LABEL *
> AIX-5.3/moldyn60(43P) 64 bit mpp version (xlf10.1.0.3/essl_r)
> DATE: 26-Feb-07 TIME: 14:39:18
>
> **********************************************************************************************************************************
>
>
> Patch level: 59
>
> **********************************************************************************************************************************
>
> SETTING MAXDIM = 32.00000000
> SETTING MAXDIM1 = 64.00000000
> SETTING MAXDIM2 = 180.00000000
>
> Variable memory set to 8000000 words, buffer space 230000 words
>
>
>
> Starting benchmark for BLAS routines with ncache= 16384 mxmblk=
> 48 mxmbln= 48 nspars= 2 nroll=4
>
> N= 120 L= 120 M= 120 NREP2= 6944 NREP3= 58 ITRA= 1 ITRB= 1
> MXMA: CPU= .05 ( 4008.960 MFLOP)
>
> DGEMM : 2538-2005
> The size of the leading dimension (ARG NO. 8) of an array must be greater
> than zero.
>
> DGEMM : 2538-2005
> The size of the leading dimension (ARG NO. 10) of an array must be
> greater
> than zero.
>
> DGEMM : 2538-2005
> The size of the leading dimension (ARG NO. 13) of an array must be
> greater
> than zero.
>
> DGEMM : 2538-2099
> End of input argument error reporting. For more information, refer to
> Engineering and Scientific Subroutine Library Guide and Reference
> (SA22-7904).
>
> DGEMM : 2538-2604
> Execution terminating due to error count for error number 2099.
>
> DGEMM : 2538-2605
> Message summary: 2005 - 3
>
> DGEMM : 2538-2605
> Message summary: 2099 - 1
> STOP 1
> STOP 1
> ERROR: 0031-300 Forcing all remote tasks to exit due to exit code 1
> in task 0
>
> It seems that the routine DGEMM is called with incorrect parameters?
> Note that when we use
>
> FTCFLAGS="mpp eaf blas4"
>
> instead of
>
> FTCFLAGS="mpp eaf blas1 blas2 blas3"
>
> the problem disappears. This should not be necessary since the essl
> libraries contain both 64 and 32 bit versions of the BLAS and LAPACK
> routines. We would really like to perform a native 64bit compilation.
> Have there been successful 64bit-builds for AIX 5.3. We would be very
> interested in details to get a fully working binary?
>
>
> best regards,
>
> Toon Verstraelen
>
>
>
>
> P.S. Here are some details about the configuration of our system:
>
>
> IBM XL Fortran Enterprise Edition V10.1 for AIX,Version: 10.01.0000.0003
> IBM XL C/C++ Enterprise Edition V8.0 for AIX,Version: 08.00.0000.0012
> essl.rte.common 4.2.0.4
> Global arrays 4-0-1, compiled with 'gmake TARGET=LAPI64'
> Molpro 2006.1 CONFIG file:
>
> # MOLPRO CONFIG generated at Wed Feb 14 12:28:48 NFT 2007 with version
> 2006.1
> # for host moldyn60, architecture unix unix-i8 unix-ibm
> #
> # insert additional hosts before moldyn60 in above line, if desired
> #
> ARCHITECTURE="unix unix-i8 unix-ibm mpp"
>
> #If you have a POWER2 machine, consider adding -qarch=pwr2 to the FOPT
> options. Power3 should just work.
>
> # Compilers ..
> CC="cc -q64 -qmaxmem=-1"
> FC="/usr/bin/xlf_r -I.
> -I/home/toon/tmp/build/molpro.2006.1/molpro2006.1/src -NA16384
> -NQ20000 -qzerosize -qcharlen=1024 -qextname -qmaxmem=-1 -qnolm
> -qarch=auto -q64 -qwarn64 -qintsize=8 -Wl,-bbigtoc"
> F90="/usr/bin/xlf_r -I.
> -I/home/toon/tmp/build/molpro.2006.1/molpro2006.1/src -NA16384
> -NQ20000 -qzerosize -qcharlen=1024 -qextname -qmaxmem=-1 -qnolm
> -qarch=auto -q64 -qwarn64 -qintsize=8 -Wl,-bbigtoc -qsuffix=f=f90
> -qfree=f90"
> # compiler command to be used only when linking molpro.exe .. eg mpxlf
> on IBM SP
> LINKFC="/usr/bin/xlf_r -I.
> -I/home/toon/tmp/build/molpro.2006.1/molpro2006.1/src -NA16384
> -NQ20000 -qzerosize -qcharlen=1024 -qextname -qmaxmem=-1 -qnolm
> -qarch=auto -q64 -qwarn64 -qintsize=8 -Wl,-bbigtoc"
> YACC="yacc"
> ARFLAGS="-X64 -r"
> PERL="1"
> PERLEXE="/usr/bin/perl"
> PERLVERSION="5.008002"
> # C defines
> # nb SEEK is disk seek speed in seconds
> # SPEED is disk transfer rate in 8 bytes/second
> # compiler optimisation
> COPT="-O2"
> FOPT="-O3"
> # compiler explicit no optimisation
> CDEF="-DSEEK=.001 -DSPEED=200000 -qarch=auto -DI64 -q64 -qwarn64
> -DAIX42 -DAIX5 -DNOALRM -DUSE_LAPI -DMPIGM_FORMAT=1 -DHAVE_INTTYPES_H
> -DMOLPRO_GETOPTLONG -DMA_ALLOC -DMOLPROC_PAR"
> CNOPT=" "
> COPT1="-O1"
> COPT2="-O2"
> FNOPT=" "
> FOPT1="-O1"
> FOPT2="-O2"
> FOPT3="-O3 -qnosave"
> # compiler debug flag
> CDEBUG="-g"
> FDEBUG="-g"
> # static variables
> FSTATIC=" "
> # 64-bit integers
> FI64="-qintsize=8"
> # profiling
> FPROFILE="-p"
> CPROFILE="-p"
> # additional pre-processor flags
> FTCFLAGS="mpp eaf blas1 blas2 blas3"
> # additional directories to be compiled in mpp case
> MPPDIR="mpp"
> SLATERDIR=""
> # additional libraries and link options
> LIBS=" "
> LINKOPT=" "
> # non-standard location of system libraries
> LIBDIR="/home/toon/tmp/build/ga-4-0-1/lib/LAPI64"
> # GKS X-windows library
> GKSLIB="-lgks0"
> # BLAS library
> BLASLIB="-lessl_r"
> # LAPACK library
> LAPACKLIB=""
> # MPP?
> MPP="1"
> MPPX="0"
> SLATER=0
> WRAPPER="/usr/bin/poe"
> USE_MPI=""
> USE_LAPI="1"
> USE_MYRINET=""
> MPI_LIB=""
> MPPNAME="lapi"
> ARCHNAME=""
> MPITYPE=""
> MPIBASEDIR=""
> MYRINET_LIB=""
> MYRINET_LINKPARS=""
> MPIGM_FORMAT="1"
> USE_GIO="0"
> USE_GATOOLS="0"
> # files in src/ to be compiled without optimization
> F77VERSION="10.1.0.3"
> FORTVERSION="xlf10.1.0.3"
> NO_OPT=""
> F_OPT1="mrci/ciinp.f sapt/response.f90"
> F_OPT2="Molcas/pget2.f dtraf/dtfint2.f blas/mxm.f blas/mxm3.f
> blas/mxm4.f local/mxmadd.f"
> F_OPT3="explicit/explicit_util.f util/getvar.f eom/ldip.f"
> C_OPT1=" "
> C_OPT2=" "
> # ranlib command (if not needed, true)
> RANLIB="true"
> # ls command to get user and group
> LSFULL="ls -l"
> # cp -p if it exists, else cp
> CP="cp -p"
> # tar command
> TAR="tar"
> # awk command
> AWK="awk"
> # strip command
> STRIP="strip -X 32_64"
> # installation directories
> INSTBIN="/software/molpro/2006.1/bin"
> INSTLIB="/software/molpro/2006.1/lib"
> INSTHTML="/software/molpro/2006.1/doc"
> INSTCGI="/software/molpro/2006.1/doc"
> # makedepend configuration
> MAKEDEPEND_OPTIONS=""
> MODULE_SUFFIX="mod"
> MODULE_FLAG="-I"
> # non-default libraries
> LIBDIR_lapi=/home/toon/tmp/build/ga-4-0-1/lib/LAPI64
> WRAPPER_lapi=/usr/bin/poe
> LINKFC_lapi="/usr/bin/mpxlf_r -I.
> -I/home/toon/tmp/build/molpro.2006.1/molpro2006.1/src -NA16384
> -NQ20000 -qzerosize -qcharlen=1024 -qextname -qmaxmem=-1 -qnolm
> -qarch=auto -q64 -qwarn64 -qintsize=8 -Wl,-bbigtoc "
> LINKFC_mpi="/usr/bin/mpxlf_r -I.
> -I/home/toon/tmp/build/molpro.2006.1/molpro2006.1/src -NA16384
> -NQ20000 -qzerosize -qcharlen=1024 -qextname -qmaxmem=-1 -qnolm
> -qarch=auto -q64 -qwarn64 -qintsize=8 -Wl,-bbigtoc "
> PARSE=parse-rs6000-ibm-aix5.3.0.0-i8.o.gz
More information about the Molpro-user
mailing list