[Wien] Installation with MPI and GNU compilers
Gavin Abo
gsabo at crimson.ua.edu
Tue May 1 10:19:05 CEST 2018
Using:
64 bit Ubuntu 16.04.4 LTS
WIEN2k 17.1 (with the siteconfig, libxc, and gfortran patches [
https://github.com/gsabo/WIEN2k-Patches/tree/master/17.1 ])
username at computername:~$ gfortran --version
GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609
In SRC_lapw1/inilpw.f, I added a print statement after line 196:
READ (1,*,END=20,ERR=960) IUNIT,FNAME,STATUS,FORM,IRECL
print*,'iunit = ',IUNIT
then recompiled using siteconfig and executed "run_lapw -it".
For ifort, it prints out all units for me as expected in the case.dayfile:
iunit = 4
iunit = 5
iunit = 6
...
iunit = 200
With gfortran, it prints only the first three units in the case.dayfile
for me from the lapw1.def file:
iunit = 4
iunit = 5
iunit = 6
Does the same thing happen for you? Part of the problem might be that
IUNIT of 200 is never read such that it is not opened on line 214 in
inilpw.f because of a gfortran issue with the READ statement on line
196. Changing the file iunit of 5 and 6 to say 65 and 66 in x_lapw and
all the source files in SRC_lapw1 seems to get the print statement that
was added on line 197 to produce the same output as ifort.
However, an empty case.storeHinv_proc_0 file is still produced that
results in that error on line 140 of the file SRC_lapw1/jacdavblock.F.
Before the write(200) statement on line 140 in jacdavblock.F, there is a
read(200,iostat=ios) statement on line 96. I'm not yet sure, but I'm
wondering if a rewind or backspace statement has to be used after the
read before the write statement is performed on line 140.
After the endo on line 99, if I put on line 100:
rewind(200)
Then, a non-empty case.storeHinv_proc_0 is produced and the "WRITE not
allowed after EOF marker" error goes away. Though, I may not have the
logic quite right yet even though the error disappears. If someone else
has time to further look into the problem, then hopefully this
information can help.
The source of the error is likely similar to what has been reported before:
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg16674.html
https://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/msg13671.html
> whenever I try to run a simulation with "-it" flag the simulations
> fail in the second cycle with a "Fortran runtime error". In this
> example I am doing TiC from the UG and executing the command "run_lapw
> -it":
>
> hup: Command not found.
> STOP LAPW0 END
> foreach: No match.
> Note: The following floating-point exceptions are signalling:
> IEEE_DENORMAL
> STOP LAPW1 END
> STOP LAPW2 END
> STOP CORE END
> STOP MIXER END
> ec cc and fc_conv 0 1 1
> in cycle 2 ETEST: 0 CTEST: 0
> hup: Command not found.
> STOP LAPW0 END
> At line 140 of file jacdavblock_tmp_.F (unit = 200, file =
> './TiC.storeHinv_proc_0')
> Fortran runtime error: Sequential READ or WRITE not allowed after
> EOF marker, possibly use REWIND or BACKSPACE
>
> > stop error
>
>
> The "TiC.storeHinv_proc_0" file is empty and I can't find the file
> "jacdavblock_tmp_.F". What could be the problem?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://zeus.theochem.tuwien.ac.at/pipermail/wien/attachments/20180501/2b02261e/attachment.html>
More information about the Wien
mailing list