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

Question about sparse matrix

kim__seongik
Beginner
748 Views

1. Is there an appropriate subroutine in mkl with respect to matrix assembly?
    I made and used by myself, but it takes too long.
    I want to something like below expression in fortran
   (example-matlab case) global_matrix(dof,dof) = global_matrix(dof,dof) + element_matrix

 

2. Is there any subroutine in mkl to create a sparse matrix format?

 

3. Which subroutine should be used for sparse matrix multiplication?
    I want to something like below expression in fortran

   (example -matlab case) A*x=b  (A : sparse matrix, x: vector, b:vector)

 

4. Is there a subroutine that can do in fortran mkl how to delete certain rows and columns?

   I want to something like below expression in fortran

   (example -matlab case)  matrix(dof,dof) = [];

 

 

5.  I want to use scalapack of intel mkl, but can't I use it except cluster??
    When I used scalapack's dlasrt2 on the desktop, error lnk 2019 occurred.

0 Kudos
1 Solution
Gennady_F_Intel
Moderator
739 Views

1. there are no such routines

2. you can try to use conversion from/to dense - CSR, CSC, and others supported sparse formats. Please refer to use MKL Reference to see more details

3.  please refer to the documentation follow with this link https://software.intel.com/content/www/us/en/develop/documentation/mkl-developer-reference-c/top/blas-and-sparse-blas-routines/sparse-blas-level-2-and-level-3-routines/sparse-blas-level-2-and-level-3-routines-1.html

You may see a lot of m*v  routines with different sparse formal, e.x - tmkl_?csrgemv
4. There is no such routine. 
5. you can build and run on the SMP system as well.  
how did you link the case? how did you run it? 

View solution in original post

0 Kudos
5 Replies
Gennady_F_Intel
Moderator
740 Views

1. there are no such routines

2. you can try to use conversion from/to dense - CSR, CSC, and others supported sparse formats. Please refer to use MKL Reference to see more details

3.  please refer to the documentation follow with this link https://software.intel.com/content/www/us/en/develop/documentation/mkl-developer-reference-c/top/blas-and-sparse-blas-routines/sparse-blas-level-2-and-level-3-routines/sparse-blas-level-2-and-level-3-routines-1.html

You may see a lot of m*v  routines with different sparse formal, e.x - tmkl_?csrgemv
4. There is no such routine. 
5. you can build and run on the SMP system as well.  
how did you link the case? how did you run it? 

0 Kudos
Gennady_F_Intel
Moderator
738 Views

regarding the #5 - please check the mkl linker adviser how to properly link with the ScaLAPACK components

0 Kudos
kim__seongik
Beginner
726 Views

Thank you for your reply !!

In number 5 my setting is below figure::

질문1.PNG

0 Kudos
Gennady_F_Intel
Moderator
719 Views
0 Kudos
Gennady_F_Intel
Moderator
718 Views

I missed that you use windows:

the linking would look like as follows: /Qmkl=cluster

0 Kudos
Reply