[Wien] A problem with icc and wien2k

Peter Blaha pblaha at theochem.tuwien.ac.at
Wed Feb 23 16:36:29 CET 2011


Thank's for this info.

So it seems that beside lstart also lapw0 and txspec need to be recompiled with -O1 !!!
                         ------      -----     ------

I continued to trace the lstart problem. This compiler version is really stupid:

in case.insld.f insert:

...
       DO 119 I=1,NORB
       NMAX(I)=NP
       L=1
       J=NQN(I)-NQL(I)
       IF((J-2*(J/2)).EQ.0) L=-L
       DQ1(I)=L*NK(I)/IABS(NK(I))
  print*,'stupid print to fix ifort12 bug',i    ! insert this line
       IF (NUC) 111,119,111
  111  IF (NK(I)) 112,119,119
  112  DQ1(I)=DQ1(I)*(NK(I)-DFL(I))*DVC/Z
  119  CONTINUE
....

This print statement inhibits the "overoptimization" due to the compiler and one can
compile with -O2. (during execution you will get several reminders about the stupidity of the compiler)

PS: It does not help to set nk=999 at the beginning of insld.f


Am 23.02.2011 16:24, schrieb Eamon McDermott:
> Dear Prof. Blaha and fellow WIEN2k users,
>
> Here are the compiler/linker options I have used with ifort 12 (ifort (IFORT) 12.0.0 20101116) on the Ubuntu 10.04 LTS x86_64 platform (Linux 2.6.32-28-generic #55-Ubuntu SMP Mon
> Jan 10 23:42:43 UTC 2011 x86_64 GNU/Linux):
>
> FOPT =  -g -FR -mp1 -w -prec_div -pc80 -pad -align -DINTEL_VML -I/opt/intel/mkl/include -O2
> LDFLAGS = $(FOPT) -L/opt/intel/mkl/lib/intel64 -pthread
> R_LIBS     = -Wl,--start-group -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -openmp -lpthread
>
> You can choose an R_LIBS line appropriate to your architecture (32bit vs 64bit) by using the MKL link line advisor:
> http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/
>
> I have the following set in my /etc/ld.so.conf.d/intel.conf (this prevents users from needing to run the ifort environment scripts):
>
> /opt/intel/mkl/lib/intel64
> /opt/intel/lib/intel64
>
> I do a full build with the above flags, then I reduce optimization from -O2 to -O1 and recompile the following tools (which get over-optimized with -O2):
>
> lapw0
> lstart
> txspec
>
> So far I have had no problems with this setup (although I haven't tried an MPI build using this compiler yet). This is using all the default installation paths for the latest ifort.
>
> --
> Eamon McDermott
> M.Sc Student
> Physics and Engineering Physics
> University of Saskatchewan
> eamon.mcdermott at usask.ca <mailto:eamon.mcdermott at usask.ca>
>
>
> On Wed, Feb 23, 2011 at 8:40 AM, Peter Blaha <pblaha at theochem.tuwien.ac.at <mailto:pblaha at theochem.tuwien.ac.at>> wrote:
>
>     I installed Intel ifort12 (l_fcompxe_2011.1.107) on my machine and started some
>     tests.
>
>     Yes, when compiling lstart with defaults it crashes with
>
>     forrtl: severe (71): integer divide by zero
>     Image              PC                Routine            Line        Source
>     lstart             00000000004A0088  Unknown               Unknown  Unknown
>
>     Even nicer, -traceback does not give any linenumber information.
>
>     However, using -O1 (or -C)  it works !
>
>     FOPT     = -FR -O1 -w -DINTEL_VML -traceback
>
>     It seems that Intel has created another buggy compiler version.....
>
>     PS: If somebody has already played with good compiler/linker options using
>     ifort version 12, I would appreciate if you send me your options.
>
>
>     Am 23.02.2011 12:43, schrieb César de la Fuente:
>
>         Dear sir,
>
>         The line you mentioned for solving the problem of lstart by using ifort(12)
>         + gcc was already included in the "insld.f" file, at around the line 114 of
>         the file:
>
>         ...
>                BAR(10)=BAR1
>                norb=10
>         !      iex=5
>                DVC=137.0359895
>                IF(.NOT.RELA) DVC=1.E30
>         !
>         !
>         ...
>
>         Then, I am still having problems with lstart in TiC example, even including
>         DVC=137.0359895
>         at the line 57
>
>         ....
>                 IF (NSTOP.EQ.0) GO TO 2
>             1   CONTINUE
>                 JSPIN=2
>                 DVC=137.0359895       ! add this line
>                 DSAL=DVC+DVC
>         ...
>
>         as you suggested in your last email.
>
>         This is the warning I ve obtained after doing some small modifications to
>         print out additional values:
>
>         WARNING: R0 for atom    1 Z= 22.00 too big, dr1: 0.0001000 NP0=   781 RMTT =
>         1.57000
>
>         (NOTICE THAT dr1=0.000100 is>  0.000051 in the line 139 of insld.f, so for
>         atoms with Z>18 the warning message should appear always, as it occurs for
>         Ti.)
>
>         forrtl: severe (71): integer divide by zero
>         Image              PC        Routine            Line        Source
>
>         lstart             080C2149  Unknown               Unknown  Unknown
>         lstart             0805623C  MAIN__                    136  lstart.f
>         lstart             08049FA4  Unknown               Unknown  Unknown
>         libc.so.6          4008BBD6  Unknown               Unknown  Unknown
>         lstart             08049EB1  Unknown               Unknown  Unknown
>         0.0u 0.0s 0:00.00 0.0% 0+0k 0+72io 0pf+0w
>         error: command   /usr/local/wien2k/lstart lstart.def   failed
>
>         However the problem should be in other place of insld.f
>         I cannot debug properly the lstart program by using the intel compiler, so I
>         would appreciate any support.
>
>         Sorry, but I cannot access to the messages of Mailing list where this
>         problem was fixed.
>
>         Thanks anyway,
>         Cesar
>
>         -----Mensaje original-----
>         De: wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>
>         [mailto:wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>] En nombre de Peter Blaha
>         Enviado el: domingo, 20 de febrero de 2011 8:52
>         Para: A Mailing list for WIEN2k users
>         Asunto: Re: [Wien] A problem with icc and wien2k
>
>         If I remember correctly, the lstart problem with ifort12 was discussed
>         and solved before.
>
>         I guess it concerns    insld.f   where one must add an initilization of DVC.
>
>         ....
>                 IF (NSTOP.EQ.0) GO TO 2
>             1   CONTINUE
>                 JSPIN=2
>                 DVC=137.0359895       ! add this line
>                 DSAL=DVC+DVC
>         ...
>
>
>         Am 19.02.2011 19:27, schrieb EGUCHI Gaku:
>
>             Hello,
>
>             I'm also in the same trouble with x lstart even in using ifort (v12)+gcc:
>             ------------------------------------------------
>             SELECT XCPOT:
>             recommended: 13: PBE-GGA (Perdew-Burke-Ernzerhof 96)
>             5: LSDA
>             11: WC-GGA (Wu-Cohen 2006)
>             19: PBEsol-GGA (Perdew etal. 2008)
>             SELECT ENERGY to separate core and valence states:
>             recommended: -6.0 Ry (check how much core charge leaks out of MT-sphere)
>             ALTERNATIVELY: specify charge localization
>             (between 0.97 and 1.0) to select core state
>             forrtl: severe (71): integer divide by zero
>             Image PC Routine Line Source
>             lstart 080C2158 Unknown Unknown Unknown
>             lstart 080561CC MAIN__ 136 lstart.f
>             lstart 08049FA4 Unknown Unknown Unknown
>             libc.so.6 4008DBD6 Unknown Unknown Unknown
>             lstart 08049EB1 Unknown Unknown Unknown
>             0.008u 0.004s 0:00.01 0.0% 0+0k 0+0io 0pf+0w
>             error: command /home/gaku/WIEN2k/lstart lstart.def failed
>             ----------------------------------------------
>
>             This case I tried with pure sodium crystal and .inst file looks no
>
>         problem:
>
>             ----------------------------------------------
>             Na
>             Ne 1
>             3,-1,0.5 N
>             3,-1,0.5 N
>             ****
>             **** END of input (instgen_lapw)
>             ----------------------------------------------
>
>             I also tried with TiC that came across the same problem.
>
>             For the trouble relating to SRC_vecpratt is removed by changing icc for
>             gcc.
>             I'd very happy if someone knows how to solve the trouble.
>
>             Best,
>             G. Eguchi
>
>
>
>             (11/02/19 19:13), César de la Fuente wrote:
>
>                 Everything works fine by using gcc instead icc (12.0).
>
>                 Thanks.
>                 César
>                 -----Mensaje original-----
>                 De: wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>
>                 [mailto:wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>] En nombre de Gerhard
>                 Fecher
>                 Enviado el: sábado, 19 de febrero de 2011 10:37
>                 Para: A Mailing list for WIEN2k users
>                 Asunto: Re: [Wien] A problem with icc and wien2k
>
>                 As Info:
>                 the overoptimization bug is removed since ifort 11.1.070
>
>                 Ciao
>                 Gerhard
>
>                 ====================================
>                 Dr. Gerhard H. Fecher
>                 Institut of Inorganic and Analytical Chemistry
>                 Johannes Gutenberg - University
>                 55099 Mainz
>                 ________________________________________
>                 Von: wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>
>                 [wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>]&quot; im Auftrag von
>                 &quot;Laurence Marks [L-marks at northwestern.edu <mailto:L-marks at northwestern.edu>]
>                 Gesendet: Freitag, 18. Februar 2011 14:54
>                 Bis: A Mailing list for WIEN2k users
>                 Betreff: Re: [Wien] A problem with icc and wien2k
>
>                 I would check by hand your files (not using w2web). With some versions
>                 of ifort/icc there are compiler bugs with overoptimization in sgroup
>                 and/or symmetry. I would recommend using gcc rather than icc (the
>                 difference in execution speed is neglegable, as the important code is
>                 all fortran) then check the mailing list archive for the
>                 overoptimization bug, I don't remember where it is.
>
>
>                 2011/2/18 César de la Fuente<cesar at unizar.es <mailto:cesar at unizar.es>>:
>
>                     That is quite strange because I use to follow the instructions of the
>
>                 novel
>
>                     wien2k version for TiC example, just to see the difference with other
>                     versions (and to check the new installed software). I never had this bug
>
>                 in
>
>                     previous versions but I do not find any differences between the
>                     StructGen
>                     soft in wien2k_10 with respect to older versions. However, lstart starts
>
>                 to
>
>                     show me this error, as least respect to TiC example. I guess, it
>                     should be
>                     something related with the way “StructGen” and w2web handle the initial
>                     configuration files during initialization process.
>
>
>
>                     Anyway thanks for your comments.
>
>                     César de la Fuente.
>
>                     De: wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>
>                     [mailto:wien-bounces at zeus.theochem.tuwien.ac.at <mailto:wien-bounces at zeus.theochem.tuwien.ac.at>] En nombre de Laurence
>
>                 Marks
>
>                     Enviado el: viernes, 18 de febrero de 2011 13:19
>                     Para: A Mailing list for WIEN2k users
>                     Asunto: Re: [Wien] A problem with icc and wien2k
>
>
>
>                     There is no connection between the compilation warning and your lstart
>                     error. Almost certainly you have an error in your struct file
>                     although it
>                     could be in the inst file.
>
>                     On Feb 18, 2011 5:30 AM, "César de la Fuente"<cesar at unizar.es <mailto:cesar at unizar.es>>  wrote:
>
>                         To whom may concern,
>
>                         After a successful installation of wien2k v.10 by using ifort and icc
>                         v.12.0
>                         and mkl 10.3 time ago, I have had re-installing again wien2k soft and
>                         intel
>                         compilers. But now I cannot avoid the next problem never seen before in
>                         the
>                         SRC_vectpratt programs (please see the " compile_SRC_vecpratt.txt"
>                         attached).
>
>                         It only seems a warning not a real error!. However, when I execute the
>                         TiC-example of the Wien2k-guide (just to calibrate the software
>                         installation) I cannot pass-through the initialization process, as
>
>                 usually
>
>                         done.
>
>                         As expected, it stops at x lstart program showing me up the next
>                         warning:
>
>
>
>         --------------------------------------------------------------------------
>
>
>                         Invalid null command.
>                         SELECT XCPOT:
>                         recommended: 13: PBE-GGA (Perdew-Burke-Ernzerhof 96)
>                         5: LSDA
>                         11: WC-GGA (Wu-Cohen 2006)
>                         19: PBEsol-GGA (Perdew etal. 2008)
>
>                         SELECT ENERGY to separate core and valence states:
>                         recommended: -6.0 Ry (check how much core charge leaks out of
>                         MT-sphere)
>                         ALTERNATIVELY: specify charge localization
>                         (between 0.97 and 1.0) to select core state
>
>
>                         WARNING: R0 for atom 1 Z= 22.00 too big
>
>                         forrtl: severe (71): integer divide by zero
>                         Image PC Routine Line Source
>
>                         lstart 080C20C9 Unknown Unknown Unknown
>
>                         lstart 080561BC MAIN__ 136 lstart.f
>                         lstart 08049FA4 Unknown Unknown Unknown
>                         libc.so.6 4008BBD6 Unknown Unknown Unknown
>                         lstart 08049EB1 Unknown Unknown Unknown
>
>                         0.0u 0.0s 0:00.03 0.0% 0+0k 8+72io 0pf+0w
>                         error: command /usr/local/wien2k/lstart lstart.def failed
>
>
>         --------------------------------------------------------------------------
>
>
>                         So, the previous compiling warning must be a real error and
>                         apparently it
>                         affects to icc configuration and specifically to W2kutils.c program.
>
>                         Any idea about how fix the problem by using the icc compiler?
>                         I ve sourced all variables compilers.
>                         I do not know if it works with other c-compiler but first I would
>                         like to
>                         use icc.
>
>                         Thanks for any comments.
>                         Sincerely,
>                         César de la Fuente.
>
>
>                     _______________________________________________
>                     Wien mailing list
>                     Wien at zeus.theochem.tuwien.ac.at <mailto:Wien at zeus.theochem.tuwien.ac.at>
>                     http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>
>
>
>
>                 --
>                 Laurence Marks
>                 Department of Materials Science and Engineering
>                 MSE Rm 2036 Cook Hall
>                 2220 N Campus Drive
>                 Northwestern University
>                 Evanston, IL 60208, USA
>                 Tel: <tel:%28847%29%20491-3996>(847) 491-3996 <tel:%28847%29%20491-3996> Fax: <tel:%28847%29%20491-7820>(847) 491-7820 <tel:%28847%29%20491-7820>
>                 email: L-marks at northwestern dot edu
>                 Web: www.numis.northwestern.edu <http://www.numis.northwestern.edu>
>                 Chair, Commission on Electron Crystallography of IUCR
>                 www.numis.northwestern.edu/ <http://www.numis.northwestern.edu/>
>                 Electron crystallography is the branch of science that uses electron
>                 scattering and imaging to study the structure of matter.
>                 _______________________________________________
>                 Wien mailing list
>                 Wien at zeus.theochem.tuwien.ac.at <mailto:Wien at zeus.theochem.tuwien.ac.at>
>                 http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>                 _______________________________________________
>                 Wien mailing list
>                 Wien at zeus.theochem.tuwien.ac.at <mailto:Wien at zeus.theochem.tuwien.ac.at>
>                 http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>
>                 _______________________________________________
>                 Wien mailing list
>                 Wien at zeus.theochem.tuwien.ac.at <mailto:Wien at zeus.theochem.tuwien.ac.at>
>                 http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>
>
>
>
>
>
>     --
>
>                                           P.Blaha
>     --------------------------------------------------------------------------
>     Peter BLAHA, Inst.f. Materials Chemistry, TU Vienna, A-1060 Vienna
>     Phone: <tel:%2B43-1-58801-15671>+43-1-58801-15671 <tel:%2B43-1-58801-15671>             FAX: <tel:%2B43-1-58801-15698>+43-1-58801-15698 <tel:%2B43-1-58801-15698>
>     Email: blaha at theochem.tuwien.ac.at <mailto:blaha at theochem.tuwien.ac.at>    WWW: http://info.tuwien.ac.at/theochem/
>     --------------------------------------------------------------------------
>
>
>     _______________________________________________
>     Wien mailing list
>     Wien at zeus.theochem.tuwien.ac.at <mailto:Wien at zeus.theochem.tuwien.ac.at>
>     http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>
>
>
>
> _______________________________________________
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien

-- 

                                       P.Blaha
--------------------------------------------------------------------------
Peter BLAHA, Inst.f. Materials Chemistry, TU Vienna, A-1060 Vienna
Phone: +43-1-58801-15671             FAX: +43-1-58801-15698
Email: blaha at theochem.tuwien.ac.at    WWW: http://info.tuwien.ac.at/theochem/
--------------------------------------------------------------------------



More information about the Wien mailing list