[molpro-user] Problems with compilation of molpro

GUILHERME F DE SOUZA MIGUEL ak_gfsm at eel.ufu.br
Thu Nov 2 18:54:19 GMT 2006


hi everybody, 

I have two problems with molpro, all of them i present here...
any ideas ?? 

firt:
I'm trying to run Molpro in a cluster with 5 computers, and 3 of them are 
similar (Pentium 4 3.0 Ghz 2 GB RAM and Gigabit Ethernet), and the other two 
are different. 

When I thy to run in parallel in the cluster, the calculation time is worst 
than if I use only one machine. 


I'm trying to compile  MOLPRO with MPI, because the results with TCGMSG were 
disapointed. For example, if I use two computers, the Real Time is about two 
times greater and the CPU Time is about half as if I use only one computer. 

Second:
The MPI is already installed, and the same with Global Arrays, with the 
flags: 

gmake TARGET=LINUX FC=ifc ARMCI_NETWORK=SOCKETS 
MPI_INCLUDE=/opt/mpich/ch-p4mpd/include MPI_LIB=/opt/mpich/ch-p4mpd/lib 
MSG_COMMS=MPICH 

The mpich version is 1.2.7, installed from SUSE linux 10.0 package that is 
compilled with the flags: 

MPICH configure:        -rsh=/usr/bin/ssh --enable-c++ --enable-f77 
 -cflags=-O2 -march=i586 -mtune=i686 -fmessage-length=0 -Wall 
 -D_FORTIFY_SOURCE=2 -g -fno-strict-aliasing -Impid/mpd/ -Iinclude 
 --with-common-prefix=/opt/mpich --libdir=/opt/mpich/ch-p4mpd/lib 
 --includedir=/opt/mpich/include -mpe_opts=--libdir=/opt/mpich/ch-p4mpd/lib 
 --with-romio=--with-file-system=nfs+ufs --with-device=ch_p4mpd 
 -prefix=/opt/mpich/ch-p4mpd --enable-sharedlib 

This is the MOLPRO CONFIG file: 

afot:~/molpro2006.1 # more CONFIG
# MOLPRO CONFIG generated at Sat Oct 28 19:33:25 BRST 2006 with version 
2006.1
#               for host lafot, architecture unix unix-i4 unix-linux
#
#  insert additional hosts before lafot in above line, if desired
#
ARCHITECTURE="unix unix-i4 unix-linux mpp" 

# Compilers ..
CC="gcc -DMOLPRO_IFC"
FC="/usr/bin/ifort -pc 64 -auto -autodouble -Vaxlib "
F90="/usr/bin/ifort -pc 64 -auto -autodouble -Vaxlib "
# compiler command to be used only when linking molpro.exe .. eg mpxlf on 
IBM SP
LINKFC="/usr/bin/ifort -pc 64 -auto -autodouble -Vaxlib "
YACC="bison -b y"
ARFLAGS="-r"
PERL="1"
PERLEXE="/usr/bin/perl"
PERLVERSION="5.008007"
# C defines
# nb    SEEK is disk seek speed in seconds
#       SPEED is disk transfer rate in 8 bytes/second
# compiler optimisation
COPT="-O3"
FOPT="-w -O3"
# compiler explicit no optimisation
CDEF="-DSEEK=.001 -DSPEED=200000   -DLARGEFILES -DUSE_MPI=mpich 
 -DMPIGM_FORMAT=1 -DHAVE_INTTYPES_H -DMPI2 -I/opt/mpich/ch-p
4mpd/include   -DMA_ALLOC -DMOLPROC_PAR"
CNOPT=" "
COPT1="-O1"
COPT2="-O2"
FNOPT="-O0"
FOPT1="-w -O1"
FOPT2="-w -O2"
FOPT3="-w -O3"
# compiler debug flag
CDEBUG="-g"
FDEBUG="-g"
# static variables
FSTATIC=" "
# 64-bit integers
FI64=" "
# profiling
FPROFILE="-p"
CPROFILE="-p"
# additional pre-processor flags
FTCFLAGS="mpp eaf blas1 blas2 blas3 lapack mpi2"
# additional directories to be compiled in mpp case
MPPDIR="mpp"
SLATERDIR=""
# additional libraries and link options
LIBS=" "
LINKOPT="-Wl,-rpath,/usr/lib -openmp"
# non-standard location of system libraries
LIBDIR="-L/usr/src/ga-4-0-1/lib/LINUX -lglobal -ltcgmsg-mpi"
# GKS X-windows library
GKSLIB="-lgks0"
# BLAS library
BLASLIB="-L/opt/intel/mkl/8.1.1/lib/32 -lmkl_ia32 
 -Wl,-rpath,/opt/intel/mkl/8.1.1/lib/32 "
# LAPACK library
LAPACKLIB="-L/opt/intel/mkl/8.1.1/lib/32 -lmkl_lapack 
 -Wl,-rpath,/opt/intel/mkl/8.1.1/lib/32 "
# MPP?
MPP="1"
MPPX="0"
SLATER=0
WRAPPER="/usr/local/bin/mpiexec"
USE_MPI="1"
USE_LAPI=""
USE_MYRINET=""
MPI_LIB="-L/opt/mpich/ch-p4mpd/lib -lmpich"
MPPNAME="mpi"
ARCHNAME="p4"
MPITYPE="mpich"
MPIBASEDIR="/opt/mpich/ch-p4mpd"
MYRINET_LIB=""
MYRINET_LINKPARS=""
MPIGM_FORMAT="1"
USE_GIO="0"
USE_GATOOLS="0"
# files in src/ to be compiled without optimization
F77VERSION="Intel(R) Fortran Compiler for 32-bit applications, Version 9.1   
Build 20060706Z Package ID: l_fc_c_9.1.036"
FORTVERSION="ifort9.1"
NO_OPT="blas/lapack0.f"
F_OPT1=" "
F_OPT2=" "
F_OPT3=" "
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"
# installation directories
INSTBIN="/usr/local/bin"
INSTLIB="/usr/local/lib/molpro-Linux-i686-i4-2006.1"
INSTHTML="/root/public_html/molpro/molpro2006.1"
INSTCGI="/root/public_html/molpro/molpro2006.1"
# makedepend configuration
MAKEDEPEND_OPTIONS=""
MODULE_SUFFIX="mod"
MODULE_FLAG="-I"
# non-default libraries
LIBDIR_mpi=/usr/src/ga-4-0-1/lib/LINUX
BLASLIB_p4="-L/opt/intel/mkl/8.1.1/lib/32 -lmkl_ia32 
 -Wl,-rpath,/opt/intel/mkl/8.1.1/lib/32 "
LAPACKLIB_p4="-L/opt/intel/mkl/8.1.1/lib/32 -lmkl_lapack 
 -Wl,-rpath,/opt/intel/mkl/8.1.1/lib/32 "
WRAPPER_mpi=/usr/local/bin/mpiexec
PARSE=parse-i686-pc-linux-gnu-i4.o.gz 

The gmake presents me this error message: 

link date: 30 Oct 2006 09:27:43 ; version: 2006.1
Patch level: 38
molver.f: compiling ... done
linking /root/molpro2006.1/bin/molprop_2006_1_i4_p4_mpi.exe
link failed
/usr/bin/ifort -pc 64 -auto -autodouble -Vaxlib 
 -Wl,-rpath,/opt/intel/mkl/8.1.1/lib/32 
 -Wl,-rpath,/opt/intel/mkl/8.1.1/lib/32 -I./global -w -O3 -Wl,-rpath,/usr/lib 
 -openmp -o /root/molpro2006.1/bin/molprop_2006_1_i4_p4_mpi.exe molver.o 
molpro.o -L/root/molpro2006.1/lib -lmolpro -L/opt/mpich/ch-p4mpd/lib -lmpich 
 -lgks0 -L/opt/intel/mkl/8.1.1/lib/32 -lmkl_lapack 
 -L/opt/intel/mkl/8.1.1/lib/32 -lmkl_ia32 -L/opt/mpich/ch-p4mpd/lib -lmpich
/root/molpro2006.1/lib/libmolpro.a(licence.o): In function 
`licence_check_c':
parse.c:(.text+0x3d8a): undefined reference to `ga_nnodes_'
parse.c:(.text+0x3d91): undefined reference to `ga_nodeid_'
parse.c:(.text+0x3da3): undefined reference to `ga_nnodes_'
parse.c:(.text+0x42cd): undefined reference to `ga_nodeid_'
/root/molpro2006.1/lib/libmolpro.a(driver.o): In function `term_jobstep_.':
driver.f:(.text+0x5631): undefined reference to `ga_inquire_memory_'
/root/molpro2006.1/lib/libmolpro.a(iow.o): In function `openw_':
iow.f:(.text+0x3e5): undefined reference to `sf_create_'
iow.f:(.text+0x421): undefined reference to `eaf_open_'
iow.f:(.text+0x457): undefined reference to `eaf_delete_'
iow.f:(.text+0x491): undefined reference to `eaf_length_'
/root/molpro2006.1/lib/libmolpro.a(iow.o): In function `truncatew_':
iow.f:(.text+0xc32): undefined reference to `eaf_truncate_'
/root/molpro2006.1/lib/libmolpro.a( iow.o): In function `readw_':
iow.f:(.text+0x112a): undefined reference to `sf_read_'
iow.f:(.text+0x11fb): undefined reference to `eaf_read_'
iow.f:(.text+0x126e): undefined reference to `eaf_aread_'
/root/molpro2006.1/lib/libmolpro.a( iow.o): In function `waitw_.':
iow.f:(.text+0x1718): undefined reference to `eaf_wait_'
iow.f:(.text+0x1727): undefined reference to `sf_wait_'
/root/molpro2006.1/lib/libmolpro.a(iow.o): In function `writew_.':
iow.f:(.text+0x1dd5): undefined reference to `sf_write_'
iow.f:(.text+0x1e9b): undefined reference to `eaf_write_'
iow.f:(.text+0x1f15): undefined reference to `eaf_awrite_'
/root/molpro2006.1/lib/libmolpro.a(iow.o ): In function `closew_.':
iow.f:(.text+0x247a): undefined reference to `eaf_close_'
iow.f:(.text+0x24d9): undefined reference to `sf_destroy_'
/root/molpro2006.1/lib/libmolpro.a(globalop.o): In function 
`global_create_':
globalop.F:(.text+0x2c): undefined reference to `nga_create_'
globalop.F:(.text+0xc1): undefined reference to `ga_inquire_memory_'
globalop.F:(.text+0xe3): undefined reference to `ga_sync_'
globalop.F:(.text+0x136): undefined reference to `ga_igop_'
/root/molpro2006.1/lib/libmolpro.a(globalop.o): In function 
`global_sum_int_':
globalop.F:(.text+0x2bf): undefined reference to `ga_sync_'
globalop.F:(.text+0x31d): undefined reference to `ga_igop_'
/root/molpro2006.1/lib/libmolpro.a( globalop.o): In function 
`global_create_irreg_':
globalop.F:(.text+0x46e): undefined reference to `nga_create_irreg_'
globalop.F:(.text+0x51f): undefined reference to `ga_inquire_memory_'
globalop.F:(.text+0x540): undefined reference to `ga_sync_'
globalop.F:(.text+0x591): undefined reference to `ga_igop_'
globalop.F:(.text+0x72a): undefined reference to `nga_distribution_'
/root/molpro2006.1/lib/libmolpro.a(globalop.o): In function 
`global_distrib_':
globalop.F:(.text+0x819): undefined reference to `nga_distribution_'
/root/molpro2006.1/lib/libmolpro.a(globalop.o): In function 
`global_create_int_':
globalop.F:(.text+0x85c): undefined reference to `nga_create_'
globalop.F:(.text+0x9a0): undefined reference to `ga_inquire_memory_'
globalop.F:(.text+0x9c2): undefined reference to `ga_sync_'
globalop.F:(.text+0xa16): undefined reference to `ga_igop_'
...
...
tskman.f: (.text+0x3ab): undefined reference to `ga_create_'
tskman.f:(.text+0x3df): undefined reference to `ga_zero_'
make: *** [bin/molprop_2006_1_i4_p4_mpi.exe] Error 1 

All the informations that I got with these errors on Google is that I was 
not linking correctly the MOLPRO with the GA libraries, but, when I take a 
look at the compilation instructions, itś is exactly the same as 
indicated in the instructions. 

if anybody could help...
thanks anyway, 

-- 
Att.
Guilherme Fernandes de Souza Miguel



More information about the Molpro-user mailing list