Visible to Intel only — GUID: GUID-BB2F2890-53BE-4073-9202-2586BE7015A8
Visible to Intel only — GUID: GUID-BB2F2890-53BE-4073-9202-2586BE7015A8
mkl_?bsrgemv
Computes matrix - vector product of a sparse general matrix stored in the BSR format (3-array variation) with one-based indexing (deprecated).
Syntax
void mkl_sbsrgemv (const char *transa , const MKL_INT *m , const MKL_INT *lb , const float *a , const MKL_INT *ia , const MKL_INT *ja , const float *x , float *y );
void mkl_dbsrgemv (const char *transa , const MKL_INT *m , const MKL_INT *lb , const double *a , const MKL_INT *ia , const MKL_INT *ja , const double *x , double *y );
void mkl_cbsrgemv (const char *transa , const MKL_INT *m , const MKL_INT *lb , const MKL_Complex8 *a , const MKL_INT *ia , const MKL_INT *ja , const MKL_Complex8 *x , MKL_Complex8 *y );
void mkl_zbsrgemv (const char *transa , const MKL_INT *m , const MKL_INT *lb , const MKL_Complex16 *a , const MKL_INT *ia , const MKL_INT *ja , const MKL_Complex16 *x , MKL_Complex16 *y );
Include Files
- mkl.h
Description
This routine is deprecated. Use mkl_sparse_?_mvfrom the Intel® oneAPI Math Kernel Library (oneMKL) Inspector-executor Sparse BLAS interface instead.
The mkl_?bsrgemv routine performs a matrix-vector operation defined as
y := A*x
or
y := AT*x,
where:
x and y are vectors,
A is an m-by-m block sparse square matrix in the BSR format (3-array variation), AT is the transpose of A.
This routine supports only one-based indexing of the input arrays.
Input Parameters
- transa
-
Specifies the operation.
If transa = 'N' or 'n', then the matrix-vector product is computed as y := A*x
If transa = 'T' or 't' or 'C' or 'c', then the matrix-vector product is computed as y := AT*x,
- m
-
Number of block rows of the matrix A.
- lb
-
Size of the block in the matrix A.
- a
-
Array containing elements of non-zero blocks of the matrix A. Its length is equal to the number of non-zero blocks in the matrix A multiplied by lb*lb. Refer to values array description in BSR Format for more details.
- ia
-
Array of length (m + 1), containing indices of block in the array a, such that ia[i] - ia[0] is the index in the array a of the first non-zero element from the row i. The value of the last element ia[m] - ia[0] is equal to the number of non-zero blocks. Refer to rowIndex array description in BSR Format for more details.
- ja
-
Array containing the column indices plus one for each non-zero block in the matrix A.
Its length is equal to the number of non-zero blocks of the matrix A. Refer to columns array description in BSR Format for more details.
- x
-
Array, size (m*lb).
On entry, the array x must contain the vector x.
Output Parameters
- y
-
Array, size at least (m*lb).
On exit, the array y must contain the vector y.