昇腾社区首页
中文
注册

Ssyr2

功能描述

  • asdBlasMakeSsyr2Plan

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

  • asdBlasSsyr2

    接口功能:用于计算单精度向量的外积并将结果加到一个矩阵上。

计算公式

asdBlasSsyr2

  • 计算公式:
  • 示例:

    输入“x”为:

    [ 1, 2 ]

    输入“y”为:

    [ 3, 4 ]

    输入A为:

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

    输入“uplo”为: U

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

    输入“alpha”为:2.345

    调用“Ssyr2”算子后,

    输出“A”为:

    [   [ 15.07,25.45 ],
        [ 3,     41.52 ]  ].

接口原型

  • AspbStatus asdBlasMakeSsyr2Plan(asdBlasHandle handle)
  • AspbStatus asdBlasSsyr2(asdBlasHandle handle, asdBlasFillMode_t uplo, const int64_t n, const float *alpha, aclTensor *x, int64_t incx, aclTensor *y, int64_t incy, aclTensor *A, const int64_t lda)

参数列表

  • asdBlasMakeSsyr2Plan

    参数名称

    Input/Output

    类型

    描述

    handle

    Input

    asdBlasHandle

    ssyr2算子的句柄。

  • asdBlasSsyr2

    参数名称

    Input/Output

    类型

    描述

    handle

    Input

    asdBlasHandle

    ssyr2算子的句柄。

    uplo

    Input

    asdBlasFillMode_t

    指定矩阵A的存储方式。

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

    n

    Input

    const int64_t

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

    alpha

    Input

    const float *

    公式中的alpha,标量,向量乘积缩放因子。

    x

    Input

    aclTensor *

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

    incx

    Input

    const int64_t

    x相邻元素间的内存地址偏移量(当前约束为1)。

    y

    Input

    aclTensor *

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

    incy

    Input

    const int64_t

    y相邻元素间的内存地址偏移量(当前约束为1)。

    A

    Input/Output

    aclTensor *

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

    lda

    Input

    const int64_t

    矩阵A的每列元素的存储步长(当前约束为n)。

规格约束

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