昇腾社区首页
中文
注册

EnableFallBack

功能说明

通过本接口启用fallback配置,启用后将自动生成一个fallback函数并注册给GE。fallback函数的核心逻辑是将GE的输入、输出及属性转换为aclnn单算子API所需的参数格式,随后调用aclnn接口。动态图场景下,GE可直接调用fallback函数(函数中调用了aclnn接口),从而简化调度流程。关于fallback下发算子的详细介绍请参考基于fallback形式下发算子章节。

函数原型

1
OpDef &EnableFallBack(void)

参数说明

返回值说明

OpDef算子定义,OpDef请参考OpDef

约束说明

  • 算子需要注册并实现InferShape函数。
  • 算子需要注册并实现InferDataType函数。

调用示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
class AddCustom : public OpDef {
public:
    AddCustom(const char* name) : OpDef(name)
    {
        this->Input("x").ParamType(REQUIRED).DataType({ge::DT_FLOAT}).Format({ge::FORMAT_ND});
        this->Input("y").ParamType(REQUIRED).DataType({ge::DT_FLOAT}).Format({ge::FORMAT_ND});
        this->Output("z").ParamType(REQUIRED).DataType({ge::DT_FLOAT}).Format({ge::FORMAT_ND})
        this->AICore().AddConfig("ascendxxx");
        this->SetInferShape(ge::InferShapeFunc);
        this->SetInferDataType(ge::InferDataTypeFunc);
        this->EnableFallBack();
    }
};
OP_ADD(AddCustom);