Hi,
we are trying to run a SOPPA calculation of coupling constants with a reasonable large basis set (532 contracted) and the program just dies after starting in the Static Property Section (ABACUS).
In the error file we get the following statement:
forrtl: severe (118): The 'RECL=' value in an OPEN statement for unit 10, file /data/scratch/18766691/DALTON_scratch_marinell/hrpad_G1_MM12_8225/ABACUS.GDI, exceeds the maximum allowed for the file's record type.
which I think comes from the
CALL GPOPEN(LUGDI,ABAGDI,'OLD','DIRECT',' ',IRAT*NVARMA,OLDDX)
statement in RELAX (abarlx.F) or any of the similar statements in the other subroutines opening ABACUS.GDI.
I guess it is the value of IRAT*NVARMA, which is too large.
BUT, I was not aware of the fact that there is a maximum recordlength for a direct access file (or forgot about it) and is there anything, what we can do about it?
The program was compiled as follows:
Who compiled | marinell
Host | fend01.cluster
System | Linux-3.10.0-1127.13.1.el7.x86_64
CMake generator | Unix Makefiles
Processor | x86_64
64-bit integers | ON
MPI | OFF
Fortran compiler | /software/local/intel/parallel_studio_xe_2018_upd1
| /compilers_and_libraries/linux/bin/intel64/ifort
Fortran compiler version | ifort (IFORT) 18.0.1 20171018
C compiler | /software/local/intel/parallel_studio_xe_2018_upd1
| /compilers_and_libraries/linux/bin/intel64/icc
C compiler version | icc (ICC) 18.0.1 20171018
C++ compiler | /software/local/intel/parallel_studio_xe_2018_upd1
| /compilers_and_libraries/linux/bin/intel64/icpc
C++ compiler version | icpc (ICC) 18.0.1 20171018
BLAS | /software/local/intel/parallel_studio_xe_2018_upd1
| /compilers_and_libraries/linux/mkl/lib/intel64/lib
| mkl_intel_ilp64.so;/software/local/intel/parallel_
| studio_xe_2018_upd1/compilers_and_libraries/linux/
| mkl/lib/intel64/libmkl_sequential.so;/software/loc
| al/intel/parallel_studio_xe_2018_upd1/compilers_an
| d_libraries/linux/mkl/lib/intel64/libmkl_core.so;/
| usr/lib64/libpthread.so;/usr/lib64/libm.so
LAPACK | /software/local/intel/parallel_studio_xe_2018_upd1
| /compilers_and_libraries/linux/mkl/lib/intel64/lib
| mkl_lapack95_ilp64.a;/software/local/intel/paralle
| l_studio_xe_2018_upd1/compilers_and_libraries/linu
| x/mkl/lib/intel64/libmkl_intel_ilp64.so
Static linking | OFF
Configuration time | 2020-11-05 20:19:32.043144
Best wishes and stay COVID-safe
Stephan
Problem with RECL on ABACUS.GDI
-
- Posts: 395
- Joined: 27 Jun 2013, 18:44
- First name(s): Hans Jørgen
- Middle name(s): Aagaard
- Last name(s): Jensen
- Affiliation: Universith of Southern Denmark
- Country: Denmark
Re: Problem with RECL on ABACUS.GDI
Hi,
I searched "forrtl severe(118)" on google and got some hits. Google is a good source for finding answers to such problems
Combining info from two of them, it seems:
1. For intel ifort up to and including ifort 18.* (as you used), the recl in bytes is stored in 32 bits (as in integer*4) and then the recl is too big if you ask for a recl of more than (2**31-1) bytes corresponding to approx. 268.5 million real*8 words. If you look in the output for your SOPPA calculation I expect you will find it is at least 268.5 million double excitations.
2. For intel ifort 19.* and later ifort is able to handle longer record lengths.
3. From this I deduct that intel ifort used a 32 bit integer to store record lengths in bytes in direct access files until version 19.*
4. Other compilers as gfortran never(?) had this limitation, AFAIK.
So two possible solutions: 1) use ifort version 19 or later; 2) use e.g. gfortran
I searched "forrtl severe(118)" on google and got some hits. Google is a good source for finding answers to such problems

1. For intel ifort up to and including ifort 18.* (as you used), the recl in bytes is stored in 32 bits (as in integer*4) and then the recl is too big if you ask for a recl of more than (2**31-1) bytes corresponding to approx. 268.5 million real*8 words. If you look in the output for your SOPPA calculation I expect you will find it is at least 268.5 million double excitations.
2. For intel ifort 19.* and later ifort is able to handle longer record lengths.
3. From this I deduct that intel ifort used a 32 bit integer to store record lengths in bytes in direct access files until version 19.*
4. Other compilers as gfortran never(?) had this limitation, AFAIK.
So two possible solutions: 1) use ifort version 19 or later; 2) use e.g. gfortran
-
- Posts: 51
- Joined: 27 Aug 2013, 16:37
- First name(s): Stephan P. A.
- Last name(s): Sauer
- Affiliation: Department of Chemistry, University of Copenhagen
- Country: Denmark
- Contact:
Re: Problem with RECL on ABACUS.GDI
Hi Hans Jørgen,
thanks a lot for your help.
I will try this tomorrow.
Best wishes
Stephan
thanks a lot for your help.
I will try this tomorrow.
Best wishes
Stephan
-
- Posts: 51
- Joined: 27 Aug 2013, 16:37
- First name(s): Stephan P. A.
- Last name(s): Sauer
- Affiliation: Department of Chemistry, University of Copenhagen
- Country: Denmark
- Contact:
Re: Problem with RECL on ABACUS.GDI
Now that I finally got hold of ifort19, it works. Thanks a lot for your help
Who is online
Users browsing this forum: No registered users and 3 guests