- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
What is the most efficient way to calculate vTAv where A is a CRS sparse matrix and v is a vector using Intel MKL (Fortran)?
Thanks in advance.
Carlos
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear customer,
The quadratic form x'*A*x is actually calculated as a sum of n^2
terms A(i,j)*x(i)*x(j)
, where i
and j
runs from 1
to n.
Are you going to use CSR format for matrix A? If so, you could split the quadratic form into two equations. You could use mkl_?csrsymv to calculate y:=A*x first and then use ?dot to calculate sum of dot multiplication of two vectors res=x' * y. Hope it would be useful to you.
Best regards,
Fiona
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for the reply, I was wondering if there was a built-in function for such calculation in MKL, thus my question.
Best regards
Carlos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear customer,
I am afraid there might no real quadratic form function for matrix with sparse storage format. The good way is to separate calculation. Thanks.
Best regards,
Fiona

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