- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The call in question is:
std::int64_t scratchSzF = oneapi::mkl::lapack::potrf_scratchpad_size<std::complex<double>>(_queue, oneapi::mkl::uplo::upper, nnn, nnn);
In order to run without getting an invalid exception when called the 'lda' value must be= or greater than the matrix order value 'n'. In the example above the arguments are 'nnn'.
With 'nnn' value of 100 the call is satisfied and scratchSzF value of 0 is returned.
So;
- Why does 'lda' have to be equal matrix size 'n'? In fact 'lda' it can be greater than 'n'!?
- More importantly the return value of 0?
- Running on Linux5.4.17 x86_64
- mkl installed version is 2023.0.0
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for posting in Intel Communities.
>>In the example above the arguments are 'nnn'.
Could you please provide us with the example you are referring to?
And also, could you please elaborate on your issue?
Thanks & Regards,
Varsha
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Referring to the call found at potrf_scratchpad_size (intel.com).
scratchPadSize = oneapi::mkl::lapack::potrf_scratchpad_size<std::complex<double>>(_queue, oneapi::mkl::uplo::upper, n, lda);
If the value provided for lda is < the value provided for n an exception is thrown identifying the lda as the bad argument. If the value for lda is equal to or greater than the value for n no exception is thrown however the scratchPadSize retuned is 0. In my code the value for n and lda is set to 100 to avoid the exception. The 100 value represents a 10x10 complex data matrix.
My questions are;
- Is it true/correct that lda >= n?
- When given values to avoid the exception is a return of 0 correct?
Related to this issue, and to be posted separately. This is the first 4 successive calls to MKL LAPACK routines.
- potrf_scratchpad_size
- potrf - need above to work since it uses the calculated size. If I give it a value > 100 an exception is thrown on the value provided
- potri _scratchpad_size - this exhibits the same problem.
- potri
cheers
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We are working on your issue internally, we will get back to you soon.
Thanks & Regards,
Varsha

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