文档
注册

TilingData结构注册

函数功能

注册定义的TilingData结构体并和自定义算子绑定。

函数原型

REGISTER_TILING_DATA_CLASS(op_type, class_name)

#define REGISTER_TILING_DATA_CLASS(op_type, class_name)
  class op_type##class_name##Helper {
  public:
    op_type##class_name##Helper() {
      CTilingDataClassFactory::RegisterTilingData(#op_type, op_type##class_name##Helper::CreateTilingDataInstance);
    }
    static std::shared_ptr<TilingDef> CreateTilingDataInstance() {
      return std::make_shared<class_name>();
    }
  };
  op_type##class_name##Helper g_tilingdata_##op_type##class_name##helper;

约束说明

使用时需要包含头文件register/tilingdata_base.h。

调用示例

#include "register/tilingdata_base.h"

// 定义tilingdata类
namespace optiling {
BEGIN_TILING_DATA_DEF(AddCustomTilingData)      // 注册一个tiling的类,以tiling的名字作为入参
  TILING_DATA_FIELD_DEF(uint32_t, blkDim);    // 添加tiling字段,参与计算核数
  TILING_DATA_FIELD_DEF(uint32_t, totalSize); // 添加tiling字段,总计算数据量-输入shape大小
  TILING_DATA_FIELD_DEF(uint32_t, splitTile); // 添加tiling字段,每个core处理的数据分块计算
END_TILING_DATA_DEF;                          // 定义结束
// 注册算子tilingdata类到对应的AddCustom算子
REGISTER_TILING_DATA_CLASS(AddCustom, AddCustomTilingData) 
}
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词