Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7129 Discussions

compiler option /4I8 , MPI input parameters , cluster_sparse_solver_64

Mehdi_M_1
Beginner
505 Views

Hello all,

I have a question regaarding the Compiler Option /4I8:

I am dealing with very very larg Matrix and I have to use Cluster_sparse_solver_64 (some components of the ia exceeds the 2^31-1). So I must use /4I8 when I compile the program (using mpiifort).

When I use /4I8, I recieve a warning that

parallel01.f90(77): warning #6075: The data type of the actual argument does not match the definition.   [IERR]
        CALL MPI_INIT( ierr )
-----------------------^
parallel01.f90(79): warning #6075: The data type of the actual argument does not match the definition.   [MKL_COMM]
        CALL MPI_COMM_RANK( MKL_COMM, myid, ierr )
----------------------------^
parallel01.f90(79): warning #6075: The data type of the actual argument does not match the definition.   [MYID]
        CALL MPI_COMM_RANK( MKL_COMM, myid, ierr )
--------------------------------------^
parallel01.f90(79): warning #6075: The data type of the actual argument does not match the definition.   [IERR]
        CALL MPI_COMM_RANK( MKL_COMM, myid, ierr )
--------------------------------------------^

and when I Change the data type of myid, ierr and mkl_comm from integer(4) to integer(8), i get another error that:

parallel01.f90(283): error #6285: There is no matching specific subroutine for this generic subroutine call.   [CLUSTER_SPARSE_SOLVER_64]
        CALL CLUSTER_SPARSE_SOLVER_64 (CPT,CMAXFCT, CMNUM, CMTYPE, CPHASE,CN,M_SPARSE,cum_row_index,col_index8,CPERM,CNRHS,CIPARM,CMSGLVL,RHS,X,MKL_COMM,CERROR)
-------------^

Also, when I do not use /4I8, every Thing is fine, but when running the program I get a runtime error.

Can somebody help me in this regard or give me an example for using Cluster_sparse_solver_64 (this is not provided i Intel document).

Stay cool

Mehdi

0 Kudos
1 Reply
Gennady_F_Intel
Moderator
505 Views

Cluster_sparse_solver_64  -- You need to link with LP64 libs ( that's mean all others mkl functions would be use 4bit integer ) but all input integer parameters have to be declare as long long or integer(8). We don’t provide the examples with this API, but thanks for the tips, we will add this into future. Meantime, You may try find out similar example into this forum.

0 Kudos
Reply