互转换关系
当一个API(如aclnnAdd、aclnnMul等)输出的Tensor数据类型与输入的数据类型推导后的计算类型不一致时,API内部就会将计算结果转换成输出类型对应的数据类型。
数据类型转换需要满足以下规则,不满足规则的将不能进行转换,调用API时会出现参数校验失败。
- 浮点数据类型:ACL_FLOAT16、ACL_FLOAT、ACL_DOUBLE、ACL_BF16间可以互相转换。
- 整型数据类型:ACL_INT8、ACL_UINT8、ACL_INT16、ACL_UINT16、ACL_INT32、ACL_UINT32、ACL_INT64、ACL_UINT64间可以互相转换。
- 整型数据类型可以往浮点类型转换。
- 浮点数据类型不可以向整型转换。
- BOOL类型可以向非BOOL类型转换,但非BOOL类型不可以往BOOL类型转换。
- 复数类型:ACL_COMPLEX64、ACL_COMPLEX128间可以转换,复数类型不可以和非复数类型互转。