complex32/complex64
产品支持情况
- Ascend 950PR/Ascend 950DT:支持
- Atlas A3 训练系列产品/Atlas A3 推理系列产品:不支持
- Atlas A2 训练系列产品/Atlas A2 推理系列产品:不支持
- Atlas 200I/500 A2 推理产品:不支持
- Atlas 推理系列产品AI Core:不支持
- Atlas 推理系列产品Vector Core:不支持
- Atlas 训练系列产品:不支持
复数类型,其中complex32表示实部和虚部都是half类型的复数,位宽为32位;complex64表示实部和虚部都是float类型的复数,位宽为64位。
具体定义如下:
namespace AscendC {
template<class T>
struct Complex {
T real;
T imag;
};
} // namespace AscendC
using complex32 = AscendC::Complex<half>;
using complex64 = AscendC::Complex<float>;
表1 Complex模板参数说明
表2 Complex结构体参数说明
使用示例如下:
// value0代表实部为1,虚部为2的复数,即1+2j
complex32 value0(1, 2);
// value1代表实部为3,虚部为0的复数,即3+0j
complex32 value1(3);
// value2代表实部为4,虚部为0的复数,即4+0j
complex64 value2 = 4;