Dear Axel,<br><br>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.<br><br><br>####################################################################<br>
#  LAPACK make include file.                                       #<br>#  LAPACK, Version 3.1.1                                           #<br>#  February 2007                                                   #<br>####################################################################<br>
#<br># See the INSTALL/ directory for more examples.<br>#<br>SHELL = /bin/sh<br>#<br>#  The machine (platform) identifier to append to the library names<br>#<br>PLAT = _AIX<br>#<br>#  Modify the FORTRAN and OPTS definitions to refer to the<br>
#  compiler and desired compiler options for your machine.  NOOPT<br>#  refers to the compiler options desired when NO OPTIMIZATION is<br>#  selected.  Define LOADER and LOADOPTS to refer to the loader and<br>#  desired load options for your machine.<br>
#<br>FORTRAN  = xlf<br>OPTS     = -O2 -q64 -qarch=pwr5 -qcache=auto -qmaxmem=-1 -qtune=pwr5<br>DRVOPTS  = $(OPTS)<br>NOOPT    = -O0 -q64 -qarch=pwr5 -qcache=auto -qmaxmem=-1 -qtune=pwr5<br>LOADER   = xlf<br>LOADOPTS = -O2 -q64 -qarch=pwr5 -qcache=auto -qmaxmem=-1 -qtune=pwr5\<br>
           -bnoquiet<br>#<br># Timer for the SECOND and DSECND routines<br>#<br># Default : SECOND and DSECND will use a call to the EXTERNAL FUNCTION ETIME<br># TIMER    = EXT_ETIME<br># For RS6K : SECOND and DSECND will use a call to the EXTERNAL FUNCTION ETIME_<br>
TIMER    = EXT_ETIME_<br># For gfortran compiler: SECOND and DSECND will use a call to the INTERNAL FUNCTION ETIME<br># TIMER    = INT_ETIME<br># If your Fortran compiler does not provide etime (like Nag Fortran Compiler, etc...)<br>
# SECOND and DSECND will use a call to the INTERNAL FUNCTION CPU_TIME<br># TIMER    = INT_CPU_TIME<br># If neither of this works...you can use the NONE value... In that case, SECOND and DSECND will always return 0<br># TIMER     = NONE<br>
#<br>#  The archiver and the flag(s) to use when building archive (library)<br>#  If you system has no ranlib, set RANLIB = echo.<br>#<br>ARCH     = ar -X64<br>ARCHFLAGS= cr<br>RANLIB   = ranlib<br>#<br>#  The location of the libraries to which you will link.  (The<br>
#  machine-specific, optimized BLAS library should be used whenever<br>#  possible.)<br>#<br>BLASLIB      = /usr/lpp/essl.rte.rs1/lib/libessl.a<br>LAPACKLIB    = lapack$(PLAT).a<br>TMGLIB       = tmglib$(PLAT).a<br>EIGSRCLIB    = eigsrc$(PLAT).a<br>
LINSRCLIB    = linsrc$(PLAT).a<br>**************************************************************************<br><br>it gave error message when I was compiling lapack:<br><br>....<br>LIBRARY: Shared object /usr/lpp/essl.rte.rs1/lib/libessl.a[essl_64.o]: 1632 symbols imported.<br>
LIBRARY: Shared object libxlf90.a[io_64.o]: 83 symbols imported.<br>LIBRARY: Shared object libxlf90.a[math_64.o]: 328 symbols imported.<br>LIBRARY: Shared object libxlf90.a[xlfsys_64.o]: 33 symbols imported.<br>LIBRARY: Symbols imported from import file /usr/lpp/xlf/lib/libxlf90.a[_xlf_aio.imp]: 10<br>
LIBRARY: Shared object libxlf90.a[_xlf_posix_64.o]: 88 symbols imported.<br>LIBRARY: Shared object libxlomp_ser.a[omp_ser_64.o]: 61 symbols imported.<br>LIBRARY: Shared object libc.a[shr_64.o]: 2659 symbols imported.<br>LIBRARY: Shared object libc.a[posix_aio_64.o]: 20 symbols imported.<br>
LIBRARY: Shared object libc.a[aio_64.o]: 14 symbols imported.<br>LIBRARY: Shared object libc.a[pse_64.o]: 5 symbols imported.<br>LIBRARY: Shared object libc.a[dl_64.o]: 4 symbols imported.<br>LIBRARY: Shared object libc.a[pty_64.o]: 1 symbols imported.<br>
FILELIST: Number of previously inserted files processed: 98<br>(ld): resolve<br>RESOLVE: 1979 of 15914 symbols were kept.<br>(ld): addgl /usr/lib/glink64.o<br>ADDGL: Glink code added for 62 symbols.<br>(ld): er full<br>ER: There are no unresolved symbols.<br>
(ld): mismatch<br>MISMATCH: No type mismatches exist.<br>(ld): comprld<br>COMPRLD: Kept 15442 of 15442 relocation entries.<br>(ld): origin page 0x100000000 0x110000000<br>(ld): libpath /usr/lpp/xlf/lib:/usr/lib:/lib<br>LIBPATH: Library path set to /usr/lpp/xlf/lib:/usr/lib:/lib<br>
(ld): save 1L .<br>SAVE: Section sizes = 1473056+84312+5729848 (0x167A20+0x14958+0x576E38 hex)<br>SAVE: Size of TOC: 6248 (0x1868 hex)<br>(ld): rc<br>RC: Highest return code was 0.<br>gmake[2]: Leaving directory `/scratch_ibm/yfliang/library/lapack/TESTING/EIG'<br>
NEP: Testing Nonsymmetric Eigenvalue Problem routines<br>./xeigtstc < <a href="http://nep.in">nep.in</a> > cnep.out 2>&1<br>gmake[1]: *** [cnep.out] Error 1<br>gmake[1]: Leaving directory `/scratch_ibm/yfliang/library/lapack/TESTING'<br>
gmake: *** [lapack_testing] Error 2<br><br><br>Sincerely, Yunfeng<br><br><br><div class="gmail_quote">On Mon, Mar 17, 2008 at 3:02 PM, Axel <<a href="mailto:akoh...@gmail.com">akoh...@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
dear yunfeng!<br>
<div class="Ih2E3d"><br>
On Mar 17, 12:15 pm, "LIANG Yunfeng" <<a href="mailto:liangy...@gmail.com">liangy...@gmail.com</a>> wrote:<br>
> Dear Fawzi,<br>
><br>
> I have now compiled a working cp2k in AMD Opertron machince. It is<br>
> encouraging...<br>
<br>
</div>excellent!<br>
<div class="Ih2E3d"><br>
> Now I'm convinced that I have to compile lapack by my own. But I found it is<br>
> related to lots of flags...could you attach your make.inc file (for lapack)<br>
> for me?<br>
<br>
</div>you don't really need a lot of flags<br>
(just use the ones that cp2k suggests and<br>
perhaps lower the optimization level).<br>
the major performance from LAPACK comes<br>
through the use of BLAS and that one is<br>
contained in an optimized form in ESSL.<br>
<div class="Ih2E3d"><br>
<br>
> Second question is: in IBM SMP machince, does cp2k work with BLAS (netlib)<br>
<br>
</div>you don't need to compile BLAS. just use ESSL instead.<br>
the main reason for compiling LAPACK on your own is that<br>
IBM's ESSL contains a few LAPACK calls where the calling<br>
sequence is different from the current LAPACK release.<br>
by compiling LAPACK yourself (and making sure that this<br>
library is referenced before ESSL) you use the standard<br>
LAPACK subroutine instead of the IBM version.<br>
<div class="Ih2E3d"><br>
> as well? If works, what should I be aware? I made one through BLAS/LAPACK<br>
> and FFTW3, but I met the same problem as reported before. Maybe it is also<br>
> flag problem...<br>
><br>
> Regarding to ESSL, should and could I compile one by myself? Because I met<br>
> the same problem as reported before /or even worse---just failed in<br>
<br>
</div>ESSL is provided as a binary by IBM (IBM pays people to optimize<br>
it next to perfect for their machines).<br>
<div class="Ih2E3d"><br>
> compiling cp2k, when I compiled the lapack-3.1.1 with ESSL. I know it may be<br>
> related to the first question too.<br>
<br>
<br>
</div>hmmm.... you have to post the arch file and the error message so<br>
that we can make sense of it. there are quite a few things that<br>
can go wrong and sometimes the ibm linker is giving quite strange<br>
error messages or warnings.<br>
<br>
cheers,<br>
   axel.<br>
><br>
> Thanks<br>
> Sincerely, Yunfeng<br>
<div><div></div><div class="Wj3C7c">><br>
> On 3/8/08, Fawzi Mohamed <<a href="mailto:fa...@gmx.ch">fa...@gmx.ch</a>> wrote:<br>
><br>
><br>
><br>
> > Hi Yunfeng,<br>
> > It looks like a library problem (but it could also be the compiler).<br>
> > You can contact the administrator of the machine to see if he is aware of<br>
> > something, and if he can help you out (maybe you are using the wrong version<br>
> > of the library, or he didn't update the libraries with the new compiler, but<br>
> > that was needed).<br>
> > Then as Teo suggested you can try to compile the lapack routines from<br>
> ><a href="http://www.netlib.org/lapack/and" target="_blank">http://www.netlib.org/lapack/and</a> test them (with their test program).<br>
> > Then compile using your lapack version.<br>
> > And finally file some bug reports to IBM, the more the problem is clear,<br>
> > the more they will like it, hopefully the faster they will fix it.<br>
><br>
> > sorry that your experience with cp2k was difficult, but there is hope,<br>
> > cp2k can work (and well) on PWR5 ;)<br>
><br>
> > ciao<br>
> > Fawzi<br>
> > On Mar 7, 2008, at 7:58 PM, Teodoro Laino wrote:<br>
><br>
> > ok.. the AIX machine we use has the following compiler:<br>
> > IBM XL Fortran Advanced Edition V10.1 for Linux<br>
> > Version: <a href="http://10.01.0000.0003" target="_blank">10.01.0000.0003</a><br>
><br>
> > Since that input file (H2O.inp) is known to work, your issue is related<br>
> > very probably to the libraries..<br>
> > At least for the serial version you can copmiler blas/lapack by yourself<br>
> > and check that the issue is not<br>
> > the compiler..<br>
><br>
> > cheers<br>
> > teo<br>
><br>
> > On 7 Mar 2008, at 19:34, LIANG Yunfeng wrote:<br>
><br>
> > Which input file of the test directory were you running?<br>
> > Can you run the tests/QS/H2O.inp ?<br>
><br>
> > I was using exactly the tests/QS/H2O.inp, simply moving it into another<br>
> > directory...<br>
><br>
> > Sincerely, Yunfeng<br>
><br>
</div></div>> > On Fri, Mar 7, 2008 at 12:05 PM, Teodoro Laino <<a href="mailto:teodor...@gmail.com">teodor...@gmail.com</a>><br>
<div><div></div><div class="Wj3C7c">> > wrote:<br>
><br>
> > > Dear Yunfeng,<br>
> > > Which input file of the test directory were you running?<br>
> > > Can you run the tests/QS/H2O.inp ?<br>
><br>
> > > Anyway this error message means that the problem is in your library..<br>
> > > Compiler version (xlf95_r -qversion)?<br>
><br>
> > > Teo<br>
><br>
> > >  On 7 Mar 2008, at 19:00, LIANG Yunfeng wrote:<br>
><br>
> > >  Then I tested it in water monomer case, again using the same input<br>
> > > copied from /cp2k/tests/QS/<br>
><br>
> > > the program stops at:<br>
><br>
> > > .....<br>
> > >  SCF WAVEFUNCTION OPTIMIZATION<br>
> > >   Step  Update method              Time         Convergence        Total<br>
> > > energy<br>
><br>
> > > -----------------------------------------------------------------------------<br>
><br>
> > >   ----------------------------------- OT<br>
> > > --------------------------------------<br>
><br>
> > >   Allowing for rotations:  F<br>
> > >   minimizer      : DIIS                : direct inversion<br>
> > >                                          in the iterative subspace<br>
> > >                             using      : -   7 diis vectors<br>
> > >                                          - safer DIIS on<br>
> > >   preconditioner : FULL_ALL            : diagonalization, state<br>
> > > selective<br>
> > >   stepsize       :    0.15000000<br>
> > >   energy_gap     :    0.00100000<br>
> > >   eps_taylor     :   0.10000E-15<br>
> > >   max_taylor     :             4<br>
><br>
> > >   ----------------------------------- OT<br>
> > > --------------------------------------<br>
><br>
> > >  *<br>
> > >  *** ERROR in cp_fm_syevd (MODULE cp_fm_diag)  ***<br>
> > >  *<br>
><br>
> > >  *** Matrix diagonalization failed  ***<br>
><br>
> > >  *** Program stopped at line number 151 of MODULE cp_fm_diag  ***<br>
> > >  ===== Routine Calling Stack =====<br>
> > >             7 cp_fm_syevd<br>
> > >             6 subspace_eigenvalues_ks<br>
> > >             5 init_scf_loop<br>
> > >             4 scf_env_do_scf<br>
> > >             3 qs_energies<br>
> > >             2 qs_forces<br>
> > >             1 CP2K<br>
> > >  CP2K| Abnormal program termination, stopped by process number 0<br>
<br>
</div></div></blockquote></div><br>