aclblasGemvEx
Description
Computes matrix-vector multiplication: y = αAx + βy. The data types of the input and output data are set using arguments. This API is asynchronous.
Restrictions
A, x, and y support a limited combination of data types, where α and β have the same data types as y.
|
Data Type of A |
Data Type of x |
Data Type of y |
|---|---|---|
|
float(float32) |
||
|
int8_t |
int8_t |
float(float32) |
|
int8_t |
int8_t |
int32_t |
Prototype
aclError aclblasGemvEx(aclTransType transA,
int m,
int n,
const void *alpha,
const void *a,
int lda,
aclDataType dataTypeA,
const void *x,
int incx,
aclDataType dataTypeX,
const void *beta,
void *y,
int incy,
aclDataType dataTypeY,
aclComputeType type,
aclrtStream stream);
Parameters
|
Parameter |
Input/Output |
Description |
|---|---|---|
|
transA |
Input |
Transpose flag of matrix A. |
|
m |
Input |
Number of rows in matrix A (row-major first in data storing). |
|
n |
Input |
Number of columns in matrix A. |
|
alpha |
Input |
Pointer to scalar α used for executing the multiplication operation. |
|
a |
Input |
Pointer to matrix A. |
|
lda |
Input |
Leading dimension of matrix A. For row-major transpose, lda is the number of columns of matrix A. This parameter is reserved and can only be set to –1. |
|
dataTypeA |
Input |
Data type of matrix A. |
|
x |
Input |
Pointer to vector x. |
|
incx |
Input |
Increment between successive x elements. This parameter is reserved and can only be set to –1. |
|
dataTypeX |
Input |
Data type of vector x. |
|
beta |
Input |
Pointer to scalar β used for executing the multiplication operation. |
|
y |
Input/Output |
Pointer to vector y. |
|
incy |
Input |
Increment between successive y elements. This parameter is reserved and can only be set to –1. |
|
dataTypeY |
Input |
Data type of vector y. |
|
type |
Input |
Computation precision type (high precision by default). |
|
stream |
Input |
Stream where the operator is executed. |
Returns
The value 0 indicates success, and other values indicate failure. For details, see aclError.