[CP2K:834] Re: CP2K in IBM PWR5 machinces

LIANG Yunfeng liangy... at gmail.com
Mon Mar 17 22:13:02 UTC 2008


Dear Axel,

Thank you! First could you help me to check whether there is some flag
problem with the make.inc for lapack-3.1.1? I doesn't go to the end.


####################################################################
#  LAPACK make include file.                                       #
#  LAPACK, Version 3.1.1                                           #
#  February 2007                                                   #
####################################################################
#
# See the INSTALL/ directory for more examples.
#
SHELL = /bin/sh
#
#  The machine (platform) identifier to append to the library names
#
PLAT = _AIX
#
#  Modify the FORTRAN and OPTS definitions to refer to the
#  compiler and desired compiler options for your machine.  NOOPT
#  refers to the compiler options desired when NO OPTIMIZATION is
#  selected.  Define LOADER and LOADOPTS to refer to the loader and
#  desired load options for your machine.
#
FORTRAN  = xlf
OPTS     = -O2 -q64 -qarch=pwr5 -qcache=auto -qmaxmem=-1 -qtune=pwr5
DRVOPTS  = $(OPTS)
NOOPT    = -O0 -q64 -qarch=pwr5 -qcache=auto -qmaxmem=-1 -qtune=pwr5
LOADER   = xlf
LOADOPTS = -O2 -q64 -qarch=pwr5 -qcache=auto -qmaxmem=-1 -qtune=pwr5\
           -bnoquiet
#
# Timer for the SECOND and DSECND routines
#
# Default : SECOND and DSECND will use a call to the EXTERNAL FUNCTION ETIME
# TIMER    = EXT_ETIME
# For RS6K : SECOND and DSECND will use a call to the EXTERNAL FUNCTION
ETIME_
TIMER    = EXT_ETIME_
# For gfortran compiler: SECOND and DSECND will use a call to the INTERNAL
FUNCTION ETIME
# TIMER    = INT_ETIME
# If your Fortran compiler does not provide etime (like Nag Fortran
Compiler, etc...)
# SECOND and DSECND will use a call to the INTERNAL FUNCTION CPU_TIME
# TIMER    = INT_CPU_TIME
# If neither of this works...you can use the NONE value... In that case,
SECOND and DSECND will always return 0
# TIMER     = NONE
#
#  The archiver and the flag(s) to use when building archive (library)
#  If you system has no ranlib, set RANLIB = echo.
#
ARCH     = ar -X64
ARCHFLAGS= cr
RANLIB   = ranlib
#
#  The location of the libraries to which you will link.  (The
#  machine-specific, optimized BLAS library should be used whenever
#  possible.)
#
BLASLIB      = /usr/lpp/essl.rte.rs1/lib/libessl.a
LAPACKLIB    = lapack$(PLAT).a
TMGLIB       = tmglib$(PLAT).a
EIGSRCLIB    = eigsrc$(PLAT).a
LINSRCLIB    = linsrc$(PLAT).a
**************************************************************************

it gave error message when I was compiling lapack:

....
LIBRARY: Shared object /usr/lpp/essl.rte.rs1/lib/libessl.a[essl_64.o]: 1632
symbols imported.
LIBRARY: Shared object libxlf90.a[io_64.o]: 83 symbols imported.
LIBRARY: Shared object libxlf90.a[math_64.o]: 328 symbols imported.
LIBRARY: Shared object libxlf90.a[xlfsys_64.o]: 33 symbols imported.
LIBRARY: Symbols imported from import file
/usr/lpp/xlf/lib/libxlf90.a[_xlf_aio.imp]: 10
LIBRARY: Shared object libxlf90.a[_xlf_posix_64.o]: 88 symbols imported.
LIBRARY: Shared object libxlomp_ser.a[omp_ser_64.o]: 61 symbols imported.
LIBRARY: Shared object libc.a[shr_64.o]: 2659 symbols imported.
LIBRARY: Shared object libc.a[posix_aio_64.o]: 20 symbols imported.
LIBRARY: Shared object libc.a[aio_64.o]: 14 symbols imported.
LIBRARY: Shared object libc.a[pse_64.o]: 5 symbols imported.
LIBRARY: Shared object libc.a[dl_64.o]: 4 symbols imported.
LIBRARY: Shared object libc.a[pty_64.o]: 1 symbols imported.
FILELIST: Number of previously inserted files processed: 98
(ld): resolve
RESOLVE: 1979 of 15914 symbols were kept.
(ld): addgl /usr/lib/glink64.o
ADDGL: Glink code added for 62 symbols.
(ld): er full
ER: There are no unresolved symbols.
(ld): mismatch
MISMATCH: No type mismatches exist.
(ld): comprld
COMPRLD: Kept 15442 of 15442 relocation entries.
(ld): origin page 0x100000000 0x110000000
(ld): libpath /usr/lpp/xlf/lib:/usr/lib:/lib
LIBPATH: Library path set to /usr/lpp/xlf/lib:/usr/lib:/lib
(ld): save 1L .
SAVE: Section sizes = 1473056+84312+5729848 (0x167A20+0x14958+0x576E38 hex)
SAVE: Size of TOC: 6248 (0x1868 hex)
(ld): rc
RC: Highest return code was 0.
gmake[2]: Leaving directory
`/scratch_ibm/yfliang/library/lapack/TESTING/EIG'
NEP: Testing Nonsymmetric Eigenvalue Problem routines
./xeigtstc < nep.in > cnep.out 2>&1
gmake[1]: *** [cnep.out] Error 1
gmake[1]: Leaving directory `/scratch_ibm/yfliang/library/lapack/TESTING'
gmake: *** [lapack_testing] Error 2


Sincerely, Yunfeng


On Mon, Mar 17, 2008 at 3:02 PM, Axel <akoh... at gmail.com> wrote:

>
> dear yunfeng!
>
> On Mar 17, 12:15 pm, "LIANG Yunfeng" <liangy... at gmail.com> wrote:
> > Dear Fawzi,
> >
> > I have now compiled a working cp2k in AMD Opertron machince. It is
> > encouraging...
>
> excellent!
>
> > Now I'm convinced that I have to compile lapack by my own. But I found
> it is
> > related to lots of flags...could you attach your make.inc file (for
> lapack)
> > for me?
>
> you don't really need a lot of flags
> (just use the ones that cp2k suggests and
> perhaps lower the optimization level).
> the major performance from LAPACK comes
> through the use of BLAS and that one is
> contained in an optimized form in ESSL.
>
>
> > Second question is: in IBM SMP machince, does cp2k work with BLAS
> (netlib)
>
> you don't need to compile BLAS. just use ESSL instead.
> the main reason for compiling LAPACK on your own is that
> IBM's ESSL contains a few LAPACK calls where the calling
> sequence is different from the current LAPACK release.
> by compiling LAPACK yourself (and making sure that this
> library is referenced before ESSL) you use the standard
> LAPACK subroutine instead of the IBM version.
>
> > as well? If works, what should I be aware? I made one through
> BLAS/LAPACK
> > and FFTW3, but I met the same problem as reported before. Maybe it is
> also
> > flag problem...
> >
> > Regarding to ESSL, should and could I compile one by myself? Because I
> met
> > the same problem as reported before /or even worse---just failed in
>
> ESSL is provided as a binary by IBM (IBM pays people to optimize
> it next to perfect for their machines).
>
> > compiling cp2k, when I compiled the lapack-3.1.1 with ESSL. I know it
> may be
> > related to the first question too.
>
>
> hmmm.... you have to post the arch file and the error message so
> that we can make sense of it. there are quite a few things that
> can go wrong and sometimes the ibm linker is giving quite strange
> error messages or warnings.
>
> cheers,
>   axel.
> >
> > Thanks
> > Sincerely, Yunfeng
> >
> > On 3/8/08, Fawzi Mohamed <fa... at gmx.ch> wrote:
> >
> >
> >
> > > Hi Yunfeng,
> > > It looks like a library problem (but it could also be the compiler).
> > > You can contact the administrator of the machine to see if he is aware
> of
> > > something, and if he can help you out (maybe you are using the wrong
> version
> > > of the library, or he didn't update the libraries with the new
> compiler, but
> > > that was needed).
> > > Then as Teo suggested you can try to compile the lapack routines from
> > >http://www.netlib.org/lapack/and test them (with their test program).
> > > Then compile using your lapack version.
> > > And finally file some bug reports to IBM, the more the problem is
> clear,
> > > the more they will like it, hopefully the faster they will fix it.
> >
> > > sorry that your experience with cp2k was difficult, but there is hope,
> > > cp2k can work (and well) on PWR5 ;)
> >
> > > ciao
> > > Fawzi
> > > On Mar 7, 2008, at 7:58 PM, Teodoro Laino wrote:
> >
> > > ok.. the AIX machine we use has the following compiler:
> > > IBM XL Fortran Advanced Edition V10.1 for Linux
> > > Version: 10.01.0000.0003
> >
> > > Since that input file (H2O.inp) is known to work, your issue is
> related
> > > very probably to the libraries..
> > > At least for the serial version you can copmiler blas/lapack by
> yourself
> > > and check that the issue is not
> > > the compiler..
> >
> > > cheers
> > > teo
> >
> > > On 7 Mar 2008, at 19:34, LIANG Yunfeng wrote:
> >
> > > Which input file of the test directory were you running?
> > > Can you run the tests/QS/H2O.inp ?
> >
> > > I was using exactly the tests/QS/H2O.inp, simply moving it into
> another
> > > directory...
> >
> > > Sincerely, Yunfeng
> >
> > > On Fri, Mar 7, 2008 at 12:05 PM, Teodoro Laino <
> teodor... at gmail.com>
> > > wrote:
> >
> > > > Dear Yunfeng,
> > > > Which input file of the test directory were you running?
> > > > Can you run the tests/QS/H2O.inp ?
> >
> > > > Anyway this error message means that the problem is in your
> library..
> > > > Compiler version (xlf95_r -qversion)?
> >
> > > > Teo
> >
> > > >  On 7 Mar 2008, at 19:00, LIANG Yunfeng wrote:
> >
> > > >  Then I tested it in water monomer case, again using the same input
> > > > copied from /cp2k/tests/QS/
> >
> > > > the program stops at:
> >
> > > > .....
> > > >  SCF WAVEFUNCTION OPTIMIZATION
> > > >   Step  Update method              Time         Convergence
>  Total
> > > > energy
> >
> > > >
> -----------------------------------------------------------------------------
> >
> > > >   ----------------------------------- OT
> > > > --------------------------------------
> >
> > > >   Allowing for rotations:  F
> > > >   minimizer      : DIIS                : direct inversion
> > > >                                          in the iterative subspace
> > > >                             using      : -   7 diis vectors
> > > >                                          - safer DIIS on
> > > >   preconditioner : FULL_ALL            : diagonalization, state
> > > > selective
> > > >   stepsize       :    0.15000000
> > > >   energy_gap     :    0.00100000
> > > >   eps_taylor     :   0.10000E-15
> > > >   max_taylor     :             4
> >
> > > >   ----------------------------------- OT
> > > > --------------------------------------
> >
> > > >  *
> > > >  *** ERROR in cp_fm_syevd (MODULE cp_fm_diag)  ***
> > > >  *
> >
> > > >  *** Matrix diagonalization failed  ***
> >
> > > >  *** Program stopped at line number 151 of MODULE cp_fm_diag  ***
> > > >  ===== Routine Calling Stack =====
> > > >             7 cp_fm_syevd
> > > >             6 subspace_eigenvalues_ks
> > > >             5 init_scf_loop
> > > >             4 scf_env_do_scf
> > > >             3 qs_energies
> > > >             2 qs_forces
> > > >             1 CP2K
> > > >  CP2K| Abnormal program termination, stopped by process number 0
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20080317/6134f791/attachment.htm>


More information about the CP2K-user mailing list