昇腾社区首页
中文
注册

Strmv

功能描述

  • asdBlasMakeStrmvPlan

    接口功能:初始化该句柄对应的Strmv算子配置。

  • asdBlasStrmv

    接口功能:单精度,用于计算一个三角矩阵与一个向量的矩阵乘法。

计算公式

asdBlasStrmv
  • 计算公式:
  • 示例:

    输入“A”为:

    [   [ 1, 2 ], 
        [ 3, 4 ]  ]

    输入“x”为:

    [1,2]

    输入“uplo”为:U,输入“trans”为:T,输入“diag”为:N,

    输入“n”为:2,输入“lda”为:2,输入“incx”为:1,

    调用“Strmv”算子后,

    输出“x”为:

    [7,10]

接口原型

  • AspbStatus asdBlasMakeStrmvPlan(asdBlasHandle handle, asdBlasFillMode_t uplo, asdBlasOperation_t trans, int64_t n)
  • AspbStatus asdBlasStrmv(asdBlasHandle handle, asdBlasFillMode_t uplo, asdBlasOperation_t trans, asdBlasDiagType_t diag,const int64_t n, aclTensor* A, const int64_t lda, aclTensor* x, const int64_t incx)

参数列表

  • asdBlasMakeStrmvPlan

    参数名称

    Input/Output

    类型

    描述

    handle

    Input

    asdBlasHandle

    strmv算子的句柄。

    uplo

    Input

    asdBlasFillMode_t

    指定矩阵A的存储方式。

    ASDBLAS_FILL_MODE_LOWER  // 下三角
    ASDBLAS_FILL_MODE_UPPER  // 上三角

    trans

    Input

    asdBlasOperation_t

    指定是否对矩阵A进行转置。

    ASDBLAS_OP_N  // 不转置
    ASDBLAS_OP_T  // 转置

    n

    Input

    int64_t

    矩阵A的行数和列数,向量x的元素个数。

  • asdBlasStrmv

    参数名称

    Input/Output

    类型

    描述

    handle

    Input

    asdBlasHandle

    strmv算子的句柄。

    uplo

    Input

    asdBlasFillMode_t

    指定矩阵A的存储方式。

    ASDBLAS_FILL_MODE_LOWER  // 下三角
    ASDBLAS_FILL_MODE_UPPER  // 上三角

    trans

    Input

    asdBlasOperation_t

    指定是否对矩阵A进行转置。

    ASDBLAS_OP_N  // 不转置
    ASDBLAS_OP_T  // 转置

    diag

    Input

    asdBlasDiagType_t

    指定是否假定矩阵A的对角线元素为1。

    ASDBLAS_DIAG_NON_UNIT  // 不假定为1
    ASDBLAS_DIAG_UNIT      // 假定为1

    n

    Input

    const int64_t

    矩阵A和行数和列数,向量x的元素个数。

    A

    Input

    aclTensor*

    公式中的A,Device侧的Tensor,数据类型仅支持FLOAT32,数据格式支持ND,shape为[n,n]。

    lda

    Input

    const int64_t

    表示张量A中元素的间隔。

    x

    Input/Output

    aclTensor*

    公式中的x,Device侧的Tensor,数据类型仅支持FLOAT32,数据格式支持ND,shape为[n]。

    incx

    Input

    const int64_t

    表示向量x中元素的间隔。

规格约束

  • asdBlasMakeStrmvPlan:无。
  • asdBlasStrmv
    • 输入的元素个数n当前覆盖支持[1,8192];
    • 算子输入shape为[n,n]、[n],输出shape为[n];
    • 算子实际计算时,不支持ND高维度运算(不支持维度≥3的运算)。