Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile error of mod_dft_gridint and dftgrd #60

Open
Makarov3821 opened this issue Sep 22, 2021 · 4 comments
Open

Compile error of mod_dft_gridint and dftgrd #60

Makarov3821 opened this issue Sep 22, 2021 · 4 comments

Comments

@Makarov3821
Copy link

Makarov3821 commented Sep 22, 2021

Hi! I'm trying to compile GAMESS 2021 R1 on my server, after running ./config, compiling ddi, and running ./compall, I run ./Iked but errors are found:

ifort: error #10236: File not found: 'dftgrd.o'
ifort: error #10236: File not found: 'mod_dft_gridint.o'

Thus I checked the compall.log, found that mod_dft_gridint.F90 and dftgrd.F90 were not complied.
As mod_dft_gridint.F90, it said

======================== mod_dft_gridint ==============================
Wed Sep 22 21:14:59 CST 2021
Copying source code, mod_dft_gridint.src does not require activation.
ifort -c -i8 -g -O2 -ftz -auto -assume byterecl -vec-report0 -warn nousage -inline-level=0 -inline-level=2 mod_dft_gridint.F90
mod_dft_gridint.F90(389): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOV]
self%aoV(:,iPtOut))
---------------------^
mod_dft_gridint.F90(389): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOV]
self%aoV(:,iPtOut))
---------------------^
mod_dft_gridint.F90(394): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOV]
self%aoV(:,iPtOut), &
----------------------^
mod_dft_gridint.F90(394): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOV]
self%aoV(:,iPtOut), &
----------------------^
mod_dft_gridint.F90(396): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG1]
self%aoG1(:,iPtOut,1), &
----------------------^
mod_dft_gridint.F90(396): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG1]
self%aoG1(:,iPtOut,1), &
----------------------^
mod_dft_gridint.F90(397): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG1]
self%aoG1(:,iPtOut,2), &
----------------------^
mod_dft_gridint.F90(397): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG1]
self%aoG1(:,iPtOut,2), &
----------------------^
mod_dft_gridint.F90(398): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG1]
self%aoG1(:,iPtOut,3))
----------------------^
mod_dft_gridint.F90(398): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG1]
self%aoG1(:,iPtOut,3))
----------------------^
mod_dft_gridint.F90(404): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOV]
self%aoV(:,iPtOut), &
----------------------^
mod_dft_gridint.F90(404): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOV]
self%aoV(:,iPtOut), &
----------------------^
mod_dft_gridint.F90(406): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG1]
self%aoG1(:,iPtOut,1), &
----------------------^
mod_dft_gridint.F90(406): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG1]
self%aoG1(:,iPtOut,1), &
----------------------^
mod_dft_gridint.F90(407): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG1]
self%aoG1(:,iPtOut,2), &
----------------------^
mod_dft_gridint.F90(407): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG1]
self%aoG1(:,iPtOut,2), &
----------------------^
mod_dft_gridint.F90(408): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG1]
self%aoG1(:,iPtOut,3), &
----------------------^
mod_dft_gridint.F90(408): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG1]
self%aoG1(:,iPtOut,3), &
----------------------^
mod_dft_gridint.F90(410): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG2]
self%aoG2(:,iPtOut,1), &
----------------------^
mod_dft_gridint.F90(410): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG2]
self%aoG2(:,iPtOut,1), &
----------------------^
mod_dft_gridint.F90(411): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG2]
self%aoG2(:,iPtOut,2), &
----------------------^
mod_dft_gridint.F90(411): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG2]
self%aoG2(:,iPtOut,2), &
----------------------^
mod_dft_gridint.F90(412): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG2]
self%aoG2(:,iPtOut,3), &
----------------------^
mod_dft_gridint.F90(412): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG2]
self%aoG2(:,iPtOut,3), &
----------------------^
mod_dft_gridint.F90(413): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG2]
self%aoG2(:,iPtOut,4), &
----------------------^
mod_dft_gridint.F90(413): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG2]
self%aoG2(:,iPtOut,4), &
----------------------^
mod_dft_gridint.F90(414): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG2]
self%aoG2(:,iPtOut,5), &
----------------------^
mod_dft_gridint.F90(414): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG2]
self%aoG2(:,iPtOut,5), &
----------------------^
mod_dft_gridint.F90(415): error #8378: Pointer array is not contiguous unless it is declared CONTIGUOUS. [AOG2]
self%aoG2(:,iPtOut,6))
----------------------^
mod_dft_gridint.F90(415): error #8372: If dummy argument is declared CONTIGUOUS, actual argument must be contiguous as well. [AOG2]
self%aoG2(:,iPtOut,6))
----------------------^
/tmp/ifortPwkdPj.i90(2699): catastrophic error: Too many errors, exiting
compilation aborted for mod_dft_gridint.F90 (code 1)
unset echo
Wed Sep 22 21:15:00 CST 2021
0.073u 0.044s 0:00.12 91.6% 0+0k 0+440io 0pf+0w

and dftgrd found no mod_grid_gridint.o thus were not compiled.
I checked the lines it complained, which are

SELECT CASE (self%nDer)
    CASE (0)
        CALL compAOv(nosp_basis, self%tolAO, &
                self%angvl, self%rsqrd, nnz, &
                self%aoV(:,iPtOut))
    CASE (1)
        CALL compAOvg(nosp_basis, self%tolAO, &
                 self%angvl, self%rsqrd, nnz, &

                 self%aoV(:,iPtOut), &

                 self%aoG1(:,iPtOut,1), &
                 self%aoG1(:,iPtOut,2), &
                 self%aoG1(:,iPtOut,3))

    CASE (2)
        CALL compAOvgg(nosp_basis, self%tolAO, &
                 self%angvl, self%rsqrd, nnz, &

                 self%aoV(:,iPtOut), &

                 self%aoG1(:,iPtOut,1), &
                 self%aoG1(:,iPtOut,2), &
                 self%aoG1(:,iPtOut,3), &
                 self%aoG2(:,iPtOut,1), &
                 self%aoG2(:,iPtOut,2), &
                 self%aoG2(:,iPtOut,3), &
                 self%aoG2(:,iPtOut,4), &
                 self%aoG2(:,iPtOut,5), &
                 self%aoG2(:,iPtOut,6))

    CASE DEFAULT
        WRITE(*,*) 'Invalid grad level in xc_engine_t % COMPAOS'
        CALL abrt
    END SELECT

Since I had very few knowledge about Fortran, I'm confused about what to do next.
The server is Red Hat Enterprise Linux Server release 6.2 (Santiago), with ifort 12.1.0 and Intel mkl 12, and built with "sockets".

@foxtran
Copy link

foxtran commented Sep 22, 2021

Please, use novel ifort. You can use ifort from oneAPI. It should work (but I never tested it)

@Makarov3821
Copy link
Author

Please, use novel ifort. You can use ifort from oneAPI. It should work (but I never tested it)

I'm so eager to use something new but assigned with an old server from university :(
But I managed to compile a newer gcc on my account. Will gcc+Intel mkl or without mkl much slower than ifort?

@saromleang
Copy link
Member

GCC + Intel MKL will be the best you can do for your situation.

@Makarov3821
Copy link
Author

I failed with gcc-10.3.0 yesterday but succeed with gcc-9.4.0 today. Thank you guys so much for helping!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants