[molpro-user] compilation troubles on AIX 5.3

Kirk Peterson kipeters at wsu.edu
Fri Mar 2 04:10:08 GMT 2007


Actually this didn't help me out, but in any event blas4 is the =20
default for this machine (at least in my case).  In
order to get past the C compiler problem below, I removed the option =20
"-qwarn64" from the CDEF line.

best wishes,

Kirk

On Mar 1, 2007, at 11:20 AM, Andy May wrote:

>
> I have been informed that the 64 bit ESSL math library does not  
> contain
> 64 bit integers. ESSL uses the LP64 data model (32 bit integers, 64  
> bit
> longs and pointers) rather than the ILP64 data model that Molpro uses
> (64 bit for everything).
>
> To solve the problem you must use the blas4 setting for Molpro, this
> option can be specified at configure time.
>
> Best wishes,
>
> Andy
>
> Jyh-Shyong Ho wrote:
>> 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,bla 
>>> s2=0
>>>  flopmx2=flopmxm
>>>   
>>> blastest,n=480,unroll=3,ntrans=2,mxmblk=64,mxmbln=64,mflop=mflop,bla 
>>> s2=0
>>>  flopmx3=flopmxm
>>>   
>>> blastest,n=480,unroll=4,ntrans=2,mxmblk=64,mxmbln=64,mflop=mflop,bla 
>>> s2=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=m 
>>> flop,blas2=0
>>>
>>>    flopmax=flopmxm
>>>  else
>>>    flopmax=0
>>>    do nblk=64,188,24
>>>
>>> blastest,n=960,unroll=nroll,mxmblk=nblk,mxmbln=nblk,ntrans=2,mflop=m 
>>> flop,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,mflo 
>>> p=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,bl 
>>> as2=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,bl 
>>> as2=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,bl 
>>> as2=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,fl 
>>> opdgem_l
>>>
>>>  show,nroll,mxmblk,ncache,mindgm,mindgc,mindgl,mindgr,mindgv
>>>
>>>
>>> blastest,saverc,n=120,mxmblk=mxmblk,mxmbln=mxmblk,ncache=ncache,unro 
>>> ll=nroll\
>>>
>>>
>>> mindgm=mindgm,mindgl=mindgl,mindgc=mindgc,mindgv=mindgv,mindgr=mindg 
>>> r,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