- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hi,
I notice that MKL has special support for symmetric dense matrix production. Also MKL inspector-executor sparse BLAS routine supports sparse matrix-matrix production. My task is to conduct matrix production of two sparse symmetric matrix. I am wondering if there is any special routines supporting for this kind of special case?
Thank you very much!
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hello, we don't have (or, more precisely, don't need) special routines for this case. Optimizations are done internally inside our functionality for sparse matrix-matrix product, like mkl_sparse_spmm (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-spmm) and mkl_sparse_sp2m (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-sp2m). Also, if you actually want to compute A * A^T or a triple product, you can use mkl_sparse_syrk(https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-syrk) or mkl_sparse_sypr (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-sypr).
You can also find the list of all routines present in IE Sparse BLAS in the documentation.
Hope this helps!
Best,
Kirill
Ссылка скопирована
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hello, we don't have (or, more precisely, don't need) special routines for this case. Optimizations are done internally inside our functionality for sparse matrix-matrix product, like mkl_sparse_spmm (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-spmm) and mkl_sparse_sp2m (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-sp2m). Also, if you actually want to compute A * A^T or a triple product, you can use mkl_sparse_syrk(https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-syrk) or mkl_sparse_sypr (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-sypr).
You can also find the list of all routines present in IE Sparse BLAS in the documentation.
Hope this helps!
Best,
Kirill
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
hello , I learned that mkl provides the mkl_sparse_syrk interface, but it does not seem to support C:=(A^T)*B*A When the matrix is a complex . I have this requirement. When can I support it?
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hi!
Could you please be a bit more precise with describing your case?
First of all, the routine for triple product is mkl_sparse_sypr https://software.intel.com/content/www/us/en/develop/documentation/onemkl-developer-reference-c/top/blas-and-sparse-blas-routines/inspector-executor-sparse-blas-routines/inspector-executor-sparse-blas-execution-routines/mkl-sparse-sypr.html.
Second, it supports complex data types. However, there is a set of possible input options coming from descrB argument. E.g. the routine supports only symmetric/hermitian matrices B. Maybe, your matrix is not hermitian? Or anything else which does not meet the requirements listed in the documentation?
Thanks,
Kirill
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Voronin, Kirill (Intel) wrote:Hello, we don't have (or, more precisely, don't need) special routines for this case. Optimizations are done internally inside our functionality for sparse matrix-matrix product, like mkl_sparse_spmm (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-spmm) and mkl_sparse_sp2m (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-sp2m). Also, if you actually want to compute A * A^T or a triple product, you can use mkl_sparse_syrk(https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-syrk) or mkl_sparse_sypr (https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-sypr).
You can also find the list of all routines present in IE Sparse BLAS in the documentation.
Hope this helps!
Best,
Kirill
Hi Kirill,
OK, I understand. Thank you very much!
Best,
Hanrui
- Подписка на RSS-канал
- Отметить тему как новую
- Отметить тему как прочитанную
- Выполнить отслеживание данной Тема для текущего пользователя
- Закладка
- Подписаться
- Страница в формате печати