[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