The runtime errors I get are the runtime manifestation of some of the following compilation warnings, especially about bounds.
I’m assuming that the code combination (CROCO-PISCES-AGRIF, v2.1.1) works OK on other systems. The System I’m using is a Cray-HP system using AMD EPYC chips, and I’m using the gfortran compiler.
Any suggestions are most welcome. I’m conscious that some debugging suggests editing the code significantly which could have cascading effects.
I’m wondering would anyone else be able to trial my configuration on a different HPC system with gfortran and then with ifort?
295 | call MPI_SEND(sendtoproc(k),1,MPI_LOGICAL,k,etiquette,Agrif_mpi_comm,code)
| 1
…
623 | call MPI_SEND( tab3D( imin(1):imax(1), &
| 2
Warning: Type mismatch between actual argument at (1) and actual argument at (2) (LOGICAL(4)/REAL(8)).
AGRIF_FILES/modmpp.F90:308:22:
308 | call MPI_RECV(res,1,MPI_LOGICAL,k,etiquette,Agrif_mpi_comm,statut,code)
| 1
…
463 | call MPI_RECV(temprecv%array1,datasize,Agrif_MPI_prec,k,etiquette, &
| 2
Warning: Type mismatch between actual argument at (1) and actual argument at (2) (LOGICAL(4)/REAL(8)).
AGRIF_FILES/modinterp.F90:340:27:
319 | call MPI_ALLGATHER(tab3,4nbdim,MPI_INTEGER,tab4,4nbdim,MPI_INTEGER,Agrif_mpi_comm,code)
| 2
…
340 | call MPI_ALLGATHER(memberin1,1,MPI_LOGICAL,memberinall,1,MPI_LOGICAL,Agrif_mpi_comm,code)
| 1
Warning: Type mismatch between actual argument at (1) and actual argument at (2) (LOGICAL(4)/INTEGER(4)).
AGRIF_FILES/modupdate.F90:579:27:
567 | call MPI_ALLGATHER(tab3,4nbdim,MPI_INTEGER,tab4,4nbdim,MPI_INTEGER,Agrif_mpi_comm,code)
| 2
…
579 | call MPI_ALLGATHER(memberin1,1,MPI_LOGICAL,memberinall,1,MPI_LOGICAL,Agrif_mpi_comm,code)
| 1
Warning: Type mismatch between actual argument at (1) and actual argument at (2) (LOGICAL(4)/INTEGER(4)).
rm -f AGRIF_YOURFILES/modbcfunction.f90
:3015:27: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
:2098:39: warning: missing terminating ’ character
:2099:39: warning: missing terminating ’ character
:2100:39: warning: missing terminating ’ character
:2101:39: warning: missing terminating ’ character
ncjoin._.f:1876:72:
1876 | & start1,count1, vdims(i))
| 1
Warning: Type mismatch in argument ‘buff’ at (1); passed REAL(8) to CHARACTER(1)
ncjoin._.f:1880:72:
1880 | & start1,count1, vdims(i))
| 1
Warning: Type mismatch in argument ‘buff’ at (1); passed REAL(8) to INTEGER(1)
ncjoin._.f:1884:72:
1884 | & start1,count1, vdims(i))
| 1
Warning: Type mismatch in argument ‘buff’ at (1); passed REAL(8) to INTEGER(2)
ncjoin._.f:1888:72:
1888 | & start1,count1, vdims(i))
| 1
Warning: Type mismatch in argument ‘buff’ at (1); passed REAL(8) to INTEGER(4)
ncjoin._.f:1892:72:
1892 | & start1,count1, vdims(i))
| 1
Warning: Type mismatch in argument ‘buff’ at (1); passed REAL(8) to REAL(4)
WARNING : The dimension of the character blk_vname
is upper than 200. You must change
the dimension of carray2
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 163. Replace 200 with 350.
WARNING : The dimension of the character blk_vname
is upper than 200. You must change
the dimension of carray2
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 163. Replace 200 with 350.
WARNING : The dimension of the character bulkfilename
is upper than 200. You must change
the dimension of carray1
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 162. Replace 200 with 350.
WARNING : The dimension of the character bulkfilename
is upper than 200. You must change
the dimension of carray1
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 162. Replace 200 with 350.
-comdirin ./ -comdirout AGRIF_MODELFILES/. -convfile setup_kwds.F)
WARNING : The dimension of the character Coptions
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
WARNING : The dimension of the character Coptions
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
WARNING : The dimension of the character Coptions
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
WARNING : The dimension of the character srcs
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
WARNING : The dimension of the character Coptions
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
WARNING : The dimension of the character Coptions
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
WARNING : The dimension of the character srcs
is upper than 2400. You must change
the dimension of carray0
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 161. Replace 2400 with 5100.
put_global_atts_.f:2712:64:
2695 | & 1, theta_s)
| 2
…
2712 | & sc_w)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
put_global_atts_.f:2716:64:
2695 | & 1, theta_s)
| 2
…
2716 | & Cs_w)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
put_global_atts_.f:2719:63:
2695 | & 1, theta_s)
| 2
…
2719 | ierr=nf_put_att_double(ncid,nf_global,‘s_rho’,nf_ftype,N,sc_r)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
put_global_atts_.f:2722:64:
2695 | & 1, theta_s)
| 2
…
2722 | ierr=nf_put_att_double(ncid,nf_global,‘Cs_rho’,nf_ftype,N,Cs_r)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
put_global_atts_.f:2737:64:
2695 | & 1, theta_s)
| 2
…
2737 | ierr=nf_put_att_double(ncid,nf_global,‘tnu4’, nf_ftype, 1,tnu4)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
put_global_atts_.f:2749:61:
2695 | & 1, theta_s)
| 2
…
2749 | & Akt_bak)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2449:47:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2449 | ierr=nf_def_var (ncid, ‘h’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2459:46:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2459 | ierr=nf_def_var (ncid,‘f’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2469:48:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2469 | ierr=nf_def_var (ncid, ‘pm’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2478:48:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2478 | ierr=nf_def_var (ncid, ‘pn’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2487:53:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2487 | ierr=nf_def_var (ncid, ‘lon_rho’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2494:53:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2494 | ierr=nf_def_var (ncid, ‘lat_rho’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2502:51:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2502 | ierr=nf_def_var (ncid, ‘lon_u’, nf_ftype, 2, u2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2510:51:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2510 | ierr=nf_def_var (ncid, ‘lat_u’, nf_ftype, 2, u2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2519:51:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2519 | ierr=nf_def_var (ncid, ‘lon_v’, nf_ftype, 2, v2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2527:51:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2527 | ierr=nf_def_var (ncid, ‘lat_v’, nf_ftype, 2, v2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2536:51:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2536 | ierr=nf_def_var (ncid, ‘angle’, nf_ftype, 2, r2dgrd,varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_grid_3d_.f:2543:54:
2361 | ierr=nf_def_var (ncid, ‘spherical’, nf_char, 0, 0, varid)
| 2
…
2543 | ierr=nf_def_var (ncid, ‘mask_rho’, nf_ftype, 2, r2dgrd, varid)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
def_his_.f:6251:48:
6244 | ierr=nf_def_var (ncid, ‘time_step’, nf_int, 2, auxil,
| 2
…
6251 | & NF_DOUBLE, 1, timedim, avgTime)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (rank-1 and scalar)
def_his_.f:6267:48:
6244 | ierr=nf_def_var (ncid, ‘time_step’, nf_int, 2, auxil,
| 2
…
6267 | & NF_DOUBLE, 1, timedim, avgTime2)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (rank-1 and scalar)
def_his_.f:2686:48:
2686 | & NF_DOUBLE, 1, timedim, hisTime)
| 1
…
6244 | ierr=nf_def_var (ncid, ‘time_step’, nf_int, 2, auxil,
| 2
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (rank-1 and scalar)
def_his_.f:2701:48:
2701 | & NF_DOUBLE, 1, timedim, hisTime2)
| 1
…
6244 | ierr=nf_def_var (ncid, ‘time_step’, nf_int, 2, auxil,
| 2
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (rank-1 and scalar)
def_rst_.f:2629:50:
2622 | ierr=nf_def_var (ncid, ‘time_step’, nf_int, 2, auxil,
| 2
…
2629 | & NF_DOUBLE, 1, timedim, rstTime)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (rank-1 and scalar)
def_rst_.f:2644:50:
2622 | ierr=nf_def_var (ncid, ‘time_step’, nf_int, 2, auxil,
| 2
…
2644 | & NF_DOUBLE, 1, timedim, rstTime2)
| 1
Warning: Rank mismatch between actual argument at (1) and actual argument at (2) (rank-1 and scalar)
WARNING : The dimension of the character blk_vname
is upper than 200. You must change
the dimension of carray2
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 163. Replace 200 with 350.
WARNING : The dimension of the character bulkfilename
is upper than 200. You must change
the dimension of carray1
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 162. Replace 200 with 350.
WARNING : The dimension of the character blk_vname
is upper than 200. You must change
the dimension of carray2
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 163. Replace 200 with 350.
WARNING : The dimension of the character blk_vname
is upper than 200. You must change
the dimension of carray2
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 163. Replace 200 with 350.
WARNING : The dimension of the character bulkfilename
is upper than 200. You must change
the dimension of carray1
in the file AGRIF/AGRIF_FILES/modtypes.F90
line 162. Replace 200 with 350.
MessPass2D_.f:1725:15:
1723 | do jpts=1,Npts
| 2
1724 | do i=imin,imax
1725 | A(i,jpts-Npts)=ibuf_revS(i-imin+(jpts-1)*ishft)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1734:15:
1732 | do jpts=1,Npts
| 2
1733 | do i=imin,imax
1734 | A(i,jpts-Npts)=A(i,jpts)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1765:22:
1763 | do jpts=1,Npts
| 2
1764 | do ipts=1,Npts
1765 | A(ipts-Npts,jpts-Npts)=buf_rev1(ipts+Npts*(jpts-1))
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1765:12:
1764 | do ipts=1,Npts
| 2
1765 | A(ipts-Npts,jpts-Npts)=buf_rev1(ipts+Npts*(jpts-1))
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1775:23:
1773 | do jpts=1,Npts
| 2
1774 | do ipts=1,Npts
1775 | A(ipts-Npts,jpts-Npts)=A(ipts,jpts)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1775:13:
1774 | do ipts=1,Npts
| 2
1775 | A(ipts-Npts,jpts-Npts)=A(ipts,jpts)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1807:25:
1805 | do jpts=1,Npts
| 2
1806 | do ipts=1,Npts
1807 | A(Lmmpi+ipts,jpts-Npts)=buf_rev3(ipts+Npts*(jpts-1))
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1817:25:
1815 | do jpts=1,Npts
| 2
1816 | do ipts=1,Npts
1817 | A(Lmmpi+ipts,jpts-Npts)=A(Lmmpi+ipts-Npts,jpts)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1828:14:
1827 | do ipts=1,Npts
| 2
1828 | A(ipts-Npts,Mmmpi+jpts)=buf_rev4(ipts+Npts*(jpts-1))
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass2D_.f:1838:14:
1837 | do ipts=1,Npts
| 2
1838 | A(ipts-Npts,Mmmpi+jpts)=A(ipts,Mmmpi+jpts-NPts)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1828:18:
1826 | do jpts=1,Npts
| 2
1827 | do i=imin,imax
1828 | A(i,jpts-Npts,k)=ibuf_revS_3D(k+nmax*(i-imin+(jpts-1)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1873:26:
1871 | do jpts=1,Npts
| 2
1872 | do ipts=1,Npts
1873 | A(ipts-Npts,jpts-Npts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1873:16:
1872 | do ipts=1,Npts
| 2
1873 | A(ipts-Npts,jpts-Npts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1886:26:
1884 | do jpts=1,Npts
| 2
1885 | do ipts=1,Npts
1886 | A(ipts-Npts,jpts-Npts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1886:16:
1885 | do ipts=1,Npts
| 2
1886 | A(ipts-Npts,jpts-Npts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1923:27:
1921 | do jpts=1,Npts
| 2
1922 | do ipts=1,Npts
1923 | A(Lmmpi+ipts,jpts-Npts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1936:28:
1934 | do jpts=1,Npts
| 2
1935 | do ipts=1,Npts
1936 | A(Lmmpi+ipts,jpts-Npts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1948:16:
1947 | do ipts=1,Npts
| 2
1948 | A(ipts-Npts,Mmmpi+jpts,k)=
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)
MessPass3D_.f:1961:16:
1960 | do ipts=1,Npts
| 2
1961 | A(ipts-Npts,Mmmpi+jpts,k)=A(ipts,Mmmpi+jpts-Npts,k)
| 1
Warning: Array reference at (1) out of bounds (-2 < -1) in loop beginning at (2)