# metadef **Repository Path**: jiangchengcheng-on/metadef ## Basic Information - **Project Name**: metadef - **Description**: Ascend Metadata Definition - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 423 - **Created**: 2024-05-17 - **Last Updated**: 2024-05-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # metadef metadef,即昇腾元数据定义,即相关数据结构以及对外接口定义. ## 目录结构介绍 ```angular2html metadef ├── error_manager # 相关错误码定义 ├── exe_graph | ├── lowering # 执行图构图接口相关实现 | ├── runtime # 执行图执行接口相关实现 ├── graph # 图相关接口实现,包括图缓存模块、序列化 ├── inc | ├── common # 一些公共头文件 | ├── exe_graph # 执行图头文件 | ├── external # 对外发布的头文件(保证兼容性) | ├── graph # 图接口相关头文件 | ├── register # 算子注册头文件 ├── proto # 图相关proto定义 ├── register # 算子注册实现 ├── tests # 开发者测试目录 ``` ## 环境准备 在源码编译前,请确保环境满足如下要求: - 编译环境已安装CANN开发套件包(Ascend-cann-toolkit_\\_linux\_\),CANN开发套件软件包请从[Link](https://www.hiascend.com/developer/download/community/result?module=cann)获取。支持的操作系统、安装依赖及安装步骤请参见对应的[用户手册](https://hiascend.com/document/redirect/CannCommunityInstSoftware)的“CANN软件包支持的操作系统”与“安装开发环境”章节。 **说明:** Metadef仓源代码与CANN软件包存在配套关系,源码编译前请获取并安装对应版本的CANN软件包。 - 源码编译依赖如下依赖,若环境中不存在,请自行安装。 - gcc:7.5.0版本及以上 (建议7.5.0) - cmake:3.20.0版本及以上 (建议3.20.0) - compile cache,编译器缓存优化工具,加快二次编译速度 ``` sudo apt-get install ccache ``` - `graph-easy` (可选) ```bash sudo apt-get install libgraph-easy-perl ``` ## 编译 Metadef仓提供一键式编译能力,具体可以通过`bash build.sh -h`查看: ```bash bash build.sh --ascend_custom_path=${CANN_INSTALL_PATH} ``` `ascend_custom_path`默认路径为`/usr/local/Ascend/latest`,编译完成后会在output目录下生成`CANN-metadef-linux.{x86_64/aarch64}.run`包 ## 本地验证(UT/ST) Metadef仓提供一键式编译执行开发者测试,详细配置可通过`bash tests/run_test.sh -h`查看 ```bash bash tests/run_test.sh -u --ascend_custom_path=${CANN_INSTALL_PATH} ``` `ascend_custom_path`默认路径为`/usr/local/Ascend/latest` ## 安装 编译完成后,可通过如下命令安装或回滚: ```shell # 安装: ./CANN-metadef-linux.{x86_64/aarch64}.run --full --quiet --install-path=${CANN_INSTALL_PATH} # 回滚: ./CANN-metadef-linux.{x86_64/aarch64}.run --rollback --quiet --install-path=${CANN_INSTALL_PATH} ``` ## 贡献指南 针对Metadef仓,开发者准备本地代码与提交PR时需要重点关注如下几点: 1. 请输出满足Google编程规范的代码,详细可参见[Google 开源项目风格指南 ](https://zh-google-styleguide.readthedocs.io/en/latest/)。 2. 提交PR时,请按照PR模板仔细填写本次PR的业务背景、目的、方案等信息。 3. 若您的修改不是简单的bug修复,而是涉及到新增特性、新增接口、新增配置参数或者修改代码流程等,请务必先通过Issue进行方案讨论,以避免您的代码被拒绝合入。若您不确定本次修改是否可被归为“简单的bug修复”,亦可通过提交Issue进行方案讨论。