Quantcast
Channel: Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
Viewing all articles
Browse latest Browse all 2652

Warning signs when compiling Fortran 2008 code that uses mkl_cluster_sparse_solver.f90

$
0
0

Hello, I'm compiling a code that is linked to the MKL cluster sparse solver. This code is written in Fortran 2008 and compilation uses the -stand:f08 intel Fortran compiler flag. I use the include statement at the beginning to the interfaces of cluster_sparse_solver

#include "mkl_cluster_sparse_solver.f90"

and have a module use this compiled module.

When I compile the code with debug flags -m64 -check all -fp-stack-check -warn unused -O0 -auto -WB -traceback -ggdb -fpe0 -fltconsistency -stand:f08 -no-wrap-margin -I/opt/intel/compilers_and_libraries_2016.3.170/mac/mkl/include -fpp , it gives the following warnings for the module MKL_CLUSTER_SPARSE_SOLVER:

Warnings - Compile with MPI debug:
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(27): warning #7025: This directive is not standard F2008.
!DEC$ IF .NOT. DEFINED( __MKL_CLUSTER_SPARSE_SOLVER_F90 )
------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(29): warning #7025: This directive is not standard F2008.
!DEC$ DEFINE __MKL_CLUSTER_SPARSE_SOLVER_F90
------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(61): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(82): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(103): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(124): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(145): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(166): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(187): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(208): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(235): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(256): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(277): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(298): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(319): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(340): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(361): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(382): warning #6916: Fortran 2008 does not allow this length specification.   [4]
          INTEGER*4,          INTENT(IN)    :: COMM
------------------^
/opt/intel16/compilers_and_libraries_2016.3.210/linux/mkl/include/mkl_cluster_sparse_solver.f90(388): warning #7025: This directive is not standard F2008.
!DEC$ ENDIF
------^

which is telling me that the interface directive !DEC$ and declaration INTEGER*4 don't belongto the standard 2008. I understand the library uses the standard f90. So, which options would you recommend to supress these warnings on debug mode?

Also, are you planning on moving these interfaces to be f08 compliant in the furture?

Thank you,

Marcos

 

 

 

Thread Topic: 

Question

Viewing all articles
Browse latest Browse all 2652

Trending Articles