昇腾社区首页
中文
注册

Nrm2

功能描述

  • asdBlasMakeNrm2Plan

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

  • asdBlasSnrm2

    接口功能:用于计算实数向量的欧氏范数

  • asdBlasScnrm2

    接口功能:对输入的所有元素取绝对值后求和。输入元素为复数。

计算公式

  • asdBlasSnrm2
    • 计算公式:,其中表示向量中的第个元素。
    • 示例:

      输入“x”为:

      [1, 2, -3, 4]

      调用“Snrm2”算子后,

      输出“result”为:

      5.47723
  • asdBlasScnrm2
    • 计算公式:,其中表示向量中的第个元素,是复数元素,
    • 示例:

      输入“x”为:

      [1+2i, 2-2i, -3+3i, 4-3i]

      调用“Scnrm2”算子后,

      输出“result”为:

      7.48331

接口原型

  • AspbStatus asdBlasMakeNrm2Plan(asdBlasHandle handle)
  • AspbStatus asdBlasSnrm2(asdBlasHandle handle, const int64_t n, aclTensor *x, const int64_t incx, aclTensor *result)
  • AspbStatus asdBlasScnrm2(asdBlasHandle handle, const int64_t n, aclTensor *x, const int64_t incx, aclTensor *result)

参数列表

  • asdBlasMakeNrm2Plan

    参数名称

    Input/Output

    类型

    描述

    handle

    Input

    asdBlasHandle

    nrm2算子的句柄。

  • asdBlasSnrm2 & asdBlasScnrm2

    参数名称

    Input/Output

    类型

    描述

    handle

    Input

    asdBlasHandle

    nrm2算子的句柄。

    n

    Input

    const char

    总的元素个数。

    x

    Input

    aclTensor *

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

    • Snrm2下数据类型支持FLOAT32;
    • Scnrm2下数据类型支持COMPLEX64。

    incx

    Input

    const int64_t

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

    result

    Output

    aclTensor *

    公式中的result,Device侧的Tensor,数据类型支持FLOAT32,只包含一个元素,数据格式支持ND,shape为[1]。

规格约束

  • asdBlasMakeNrm2Plan:无。
  • asdBlasSnrm2
    • 输入的元素个数n当前覆盖支持[1,6.71e+06];
    • 算子输入shape为[n],输出shape为[1];
    • 算子实际计算时,不支持ND高维度运算(不支持维度≥3的运算)。
  • asdBlasScnrm2
    • 输入的元素个数n当前覆盖支持[1,6.71e+06];
    • 算子输入shape为[n],输出shape为[1];
    • 算子实际计算时,不支持ND高维度运算(不支持维度≥3的运算)。