高阶API
=====

高阶API一般是基于单核对常见算法的抽象和封装，用于提高编程开发效率，通常会调用多种基础API实现。高阶API当前仅支持Matmul。

如下图所示，实现一个矩阵乘操作，使用基础API需要的步骤较多，需要关注格式转换、数据切分等逻辑；使用高阶API则无需关注这些逻辑，直接传入输入矩阵，调用接口获取输出即可。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/c4/v3/x4RdoKRwT1ymFUsvsTqh-g/zh-cn_image_0000002594669536.png?HW-CC-KV=V1&HW-CC-Date=20260612T073658Z&HW-CC-Expire=86400&HW-CC-Sign=66C6675C896F50860DFDCEDD53259439034B324911BA2EA1FE592517C01E5FB5)

注意，在程序中调用高阶API的Tiling接口或者使用高阶API的Tiling结构体参数时，需要引入依赖的头文件，示例如下。

#include "register/tilingdata\_base.h"
#include "lib/tiling\_api.h"
 
namespace optiling {
BEGIN\_TILING\_DATA\_DEF(MatmulCustomTilingData)
TILING\_DATA\_FIELD\_DEF\_STRUCT(TCubeTiling, cubeTilingData);
END\_TILING\_DATA\_DEF;
REGISTER\_TILING\_DATA\_CLASS(MatmulCustom, MatmulCustomTilingData);
} // namespace optiling