CANN/asc-devkit数据依赖配置API
ValueDepend【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit功能说明标识该输入是否为“数据依赖输入”数据依赖输入是指在Tiling/InferShape等函数实现时依赖该输入的具体数据。该输入数据为host侧数据开发者在Tiling函数/InferShape函数中可以通过TilingContext类的/InferShapeContext类的获取这个输入数据。函数原型OpParamDef ValueDepend(Option value_depend) OpParamDef ValueDepend(Option value_depend, DependScope scope)参数说明参数输入/输出说明value_depend输入value_depend有以下两种取值REQUIRED表示算子的输入必须是Const类型。在调用算子的SetCheckSupport时会校验算子的输入是否是Const类型。若校验通过则将此输入的值下发到算子否则报错。OPTIONAL表示算子的输入可以是Const类型也可以不是Const类型。如果输入是Const类型则将输入的值下发到算子否则不下发。scope输入scope类型为枚举类型DependScope支持的取值为ALL指在Tiling/InferShape等函数实现时都依赖该输入的具体数据行为与调用单参数ValueDepend重载接口一致。TILING指仅在Tiling时依赖Tensor的值可以支持Tiling下沉。返回值说明OpParamDef算子定义OpParamDef请参考OpParamDef。约束说明仅支持对算子输入配置输入的参数数据类型可以配置为DT_FLOAT/DT_BOOL/DT_INT64/DT_UINT64/DT_INT32/DT_UINT32/DT_INT16/DT_UINT16/DT_INT8/DT_UINT8且必须满足以下三种情况之一输入的参数数据类型配置全为DT_FLOAT对应生成的输出类型aclFloatArrayaclnn数据类型。输入的参数数据类型配置全为DT_BOOL对应生成的输出类型aclBoolArrayaclnn数据类型。输入的参数数据类型配置全为整数类型即DT_INT64/DT_UINT64/DT_INT32/DT_UINT32/DT_INT16/DT_UINT16/DT_INT8/DT_UINT8对应生成的输出类型aclIntArrayaclnn数据类型。当数据类型配置含有DT_INT64以外的数据类型时需要增加一组DT_INT64对应的输入/输出数据类型组合。【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考