PLASMA  2.8.0
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
void CORE_dgemv ( PLASMA_enum  trans,
int  m,
int  n,
double  alpha,
const double *  A,
int  lda,
const double *  x,
int  incx,
double  beta,
double *  y,
int  incy 
)

CORE_dgemv performs one of the matrix-vector operations

y := alpha*A*x + beta*y, or y := alpha*A**T*x + beta*y, or y := alpha*A**T*x + beta*y,

where alpha and beta are scalars, x and y are vectors, and A is an m by n matrix.

Parameters
[in]trans
  • PlasmaNoTrans: y := alpha*A*x + beta*y
  • PlasmaTrans: y := alpha*A**T*x + beta*y
  • PlasmaTrans: y := alpha*A**T*x + beta*y
[in]mNumber of rows of matrix A.
[in]nNumber of columns of matrix A.
[in]alphaScalar alpha.
[in]AOn entry, m by n matrix A. Dimension (lda,n).
[in]ldaLeading dimension of array A. lda >= max(1,m).
[in]xOn entry, vector x. If trans == PlasmaNoTrans, the n vector x has dimension 1 + (n-1)*abs(incx). Else, the m vector x has dimension 1 + (m-1)*abs(incx).
[in]incxIncrement between elements of x. incx must not be zero.
[in]betaScalar beta.
[in,out]yOn entry, vector y. On exit, y is overwritten by updated vector y. If trans == PlasmaNoTrans, the m vector y has dimension 1 + (m-1)*abs(incy). Else, the n vector y has dimension 1 + (n-1)*abs(incy).
[in]incyIncrement between elements of y. incy must not be zero.