昇腾社区首页
中文
注册
开发者
下载

asdMul

产品支持情况

硬件型号

支持情况

Atlas 200I/500 A2 推理产品

不支持

Atlas 推理系列产品

不支持

Atlas 训练系列产品

不支持

Atlas 800I A2 推理产品 / Atlas A2 训练系列产品

支持

Atlas A3 推理系列产品 / Atlas A3 训练系列产品

支持

功能说明

接口功能:支持向量逐元素乘积(Hadamard)能力,返回一个和输入同样形状大小的复数矩阵。

计算公式:

  • 计算公式:

    即两个矩阵对应位置的元素相乘

  • 示例:

    输入“A”为:

    [ [ 1+1i, 1+1i ],
      [ 2+2i, 2+2i ] ]

    输入“B”为:

    [ [ 1+1i, 1+1i ],
      [ 2+2i, 2+2i ] ]

    调用“asdMul”算子后,

    输出“result”为:

    [ [ 0+2i, 0+2i ],
      [ 0+8i, 0+8i ] ]

函数原型

AspbStatus asdMul(int n, const void *x, const void *y, const void *z, void *stream, void *workspace = nullptr)

参数说明

asdMul

参数名称

Input/Output

类型

描述

n

Input

int

输入的元素个数。

x

Input

const void *

公式中的A,Device侧的tensor,数据类型支持COMPLEX32、COMPLEX64,数据格式支持ND,shape为[n]。

y

Input

const void *

公式中的B,Device侧的tensor,数据类型支持COMPLEX32、COMPLEX64,数据格式支持ND,shape为[n]。

z

Input

const void *

公式中的result,Device侧的tensor,数据类型支持COMPLEX32、COMPLEX64,数据格式支持ND,shape为[n]。

stream

Input

void*

NPU执行流。

workspace

Input

void *

asdMul算子所需要的workspace。

返回值说明

返回值相关说明参见返回值

约束说明

asdMul

  • 支持的CANN版本为CANN8.0及以上。
  • 输入支持的数据类型为COMPLEX32、COMPLEX64。
  • 输出支持的数据类型为COMPLEX32、COMPLEX64。
  • 输入的元素个数n理论支持[1,9.22e+18];
  • 算子输入shape为[n]、[n],输出shape为[n]。

调用示例

算子的调用示例参见asdmul_complex32或者asdmul_complex64