- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
In the mkl_pblas.h, the prototypes for p*trmv are of the form, e.g., single precision,
void pstrmv( const char *uplo, const char *trans, const char *diag, const MKL_INT *n, const float *a, const MKL_INT *ia, const MKL_INT *ja, const MKL_INT *desca, float *x, const MKL_INT *ix, const MKL_INT *jx, const MKL_INT *descx, const MKL_INT *incx );
However, the interface according to netlib ( http://www.netlib.org/scalapack/pblas_qref.html ) is
PvTRMV( UPLO, TRANS, DIAG, M, N, A, IA, JA, DESCA, X, IX, JX, DESCX, INCX )
Notice that the MKL is missing the 'const MKL_INT *m' for the fourth argument.
I have MKL 11.3.3 for Windows.
This seems to be a mistake in the MKL header. Can anyone confirm this for me or am I misinterpreting the netlib reference?
Thanks,
John
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
thanks for this point. There is inconsistency between MKL's documentation and this function declaration. We will fix that. With regard to netlib is as follow: SUBROUTINE PvTRMV( UPLO, TRANS, DIAG, N, A, IA, JA, DESCA, X, IX, JX, DESCX, INCX )
I see no problem in this case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks. It seems that the netlib page is in error at the top (where the quick summary is) but is correct farther down where the details are given.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
we fixed the issue into version of MKL 2017 update 1

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