Nrm2
产品支持情况
硬件型号 |
支持情况 |
---|---|
|
不支持 |
|
不支持 |
|
不支持 |
|
支持 |
|
支持 |
功能描述
接口功能
- asdBlasMakeNrm2Plan:初始化该句柄对应的Nrm2算子配置。
- asdBlasSnrm2:用于计算实数向量的欧氏范数。
- asdBlasScnrm2:对输入的所有元素取绝对值后求和。输入元素为复数。
计算公式
函数原型
- 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的运算)。
调用示例
算子的调用示例参见Nrm2。
父主题: BLAS