Conv3D模板参数
【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit
产品支持情况
- Ascend 950PR/Ascend 950DT:不支持
- Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
- Atlas A2 训练系列产品/Atlas A2 推理系列产品:支持
- Atlas 200I/500 A2 推理产品:不支持
- Atlas 推理系列产品AI Core:不支持
- Atlas 推理系列产品Vector Core:不支持
- Atlas 训练系列产品:不支持
功能说明
创建Conv3D对象时需要传入:
- Input、Weight、Output和Bias(可选)的参数类型信息,类型信息通过ConvType来定义,包括:内存逻辑位置、数据格式、数据类型。
- Conv3dParam信息(可选),用于开启不同场景的性能优化模板。当前暂不支持使用。
函数原型
template <class INPUT_TYPE, class WEIGHT_TYPE, class OUTPUT_TYPE, class BIAS_TYPE = biasType, class CONV_CFG = Conv3dParam> using Conv3D = Conv3dIntfExt<Config<ConvApi::ConvDataType<INPUT_TYPE, WEIGHT_TYPE, OUTPUT_TYPE, BIAS_TYPE, CONV_CFG>>, Impl, Intf>参数说明
表1模板参数说明
| 参数名 | 输入/输出 | 描述 |
|---|---|---|
| INPUT_TYPE | 输入 | ConvType类型模板参数,指定Input的参数类型信息。 |
| WEIGHT_TYPE | 输入 | ConvType类型模板参数,指定Weight的参数类型信息。 |
| OUTPUT_TYPE | 输入 | ConvType类型模板参数,指定Output的参数类型信息。 |
| BIAS_TYPE | 可选输入 | ConvType类型模板参数,指定Bias的参数类型信息。 |
| CONV_CFG | 可选输入 | ConvParam类型模板参数,用于开启不同场景的性能优化模板,当前版本只支持基础模板,不开启性能优化。 |
返回值说明
无
约束说明
无
调用示例
#include "lib/conv/conv3d/conv3d_api.h" using inputType = ConvApi::ConvType<AscendC::TPosition::GM, ConvFormat::NDC1HWC0, bfloat16_t>; using weightType = ConvApi::ConvType<AscendC::TPosition::GM, ConvFormat::FRACTAL_Z_3D, bfloat16_t>; using outputType = ConvApi::ConvType<AscendC::TPosition::GM, ConvFormat::NDC1HWC0, bfloat16_t>; // 可选参数,如果不带Bias场景,可以不传 using biasType = ConvApi::ConvType<AscendC::TPosition::GM, ConvFormat::ND, float>; struct ConvCustom : public ConvApi::ConvParam { __aicore__ inline ConvCustom(){}; }; // 可选参数,当前版本只支持基础模板,不开启性能优化,可以不传 Conv3dApi::Conv3D<inputType, weightType, outputType, biasType, ConvCustom> conv3dApi;【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考