- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

First of all, the CSR representation of A is a compact representation, and may have only a few or no diagonal elements at all. Therefore, if you wish to modify the diagonal, you must already have a full diagonal, possibly many or all elements of which are filled with zero values.

If you wish to do the diagonal update repeatedly, it would be efficient to pre-compute and store a separate array, say, ID(1:N), containing the column indices of the diagonal elements -- the subset of JA corresponding to the diagonal.

Link Copied

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

First of all, the CSR representation of A is a compact representation, and may have only a few or no diagonal elements at all. Therefore, if you wish to modify the diagonal, you must already have a full diagonal, possibly many or all elements of which are filled with zero values.

If you wish to do the diagonal update repeatedly, it would be efficient to pre-compute and store a separate array, say, ID(1:N), containing the column indices of the diagonal elements -- the subset of JA corresponding to the diagonal.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Hi Franz,

It is an expected behavior in your case.

IE SpBLAS perform a lot of different optimizations on a user's data. However, the data itself will not be changed during calls (one exception here is mkl_sparse_order routine).

mkl_sparse_?_export_csr allows one to export the initial pointers or to get CSR representation of resulting matrix (e.g. after mkl_sparse_spmm).

If you need to change several values in the handle you can use mkl_sparse_?_set_value routine. Please, refer to https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-set-value

Hope, this will help!

Best regards,

Maria

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page