
ES (Eager Style) Generator【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge前置要求通过安装指导正确安装toolkit包并按照指导正确配置环境变量通过安装指导正确安装算子ops包ES 依赖算子原型进行 API 生成并按照指导正确配置环境变量环境变量要求gen_esb 所需环境变量列表ASCEND_OPP_PATH: 指向安装目录下的opp路径LD_LIBRARY_PATH: 指定动态链接库搜索路径的环境变量注上述环境变量无需也不推荐单独配置默认前置要求中已经配置过的环境变量即满足要求功能说明本程序支持两种生成模式代码生成模式 生成 ES 图构建器的 C、C、Python 代码包括所有支持的算子(ops)的C接口所有支持的算子的C接口所有支持的算子的Python接口聚合头文件方便用户一次性包含所有算子聚合Python文件方便用户一次性导入所有算子历史原型库生成模式 生成历史原型结构化数据包括版本索引版本元信息该版本的算子原型数据使用方法代码生成模式gen_esb [--output_dirDIR] [--module_nameNAME] [--h_guard_prefixPREFIX] [--exclude_opsOP_TYPE1,OP_TYPE2] [--history_registryPKG_DIR] [--release_versionVER]历史原型库生成模式gen_esb --es_modeextract_history --release_versionVER [--output_dirDIR] [--release_dateYYYY-MM-DD] [--branch_nameBRANCH]注因为前置要求中已经配置过环境变量此时gen_esb已经被添加到了PATH环境变量中因此可直接执行参数说明--es_mode可选参数指定生成模式支持codegen和extract_history如果不指定默认codegen--output_dir可选参数指定生成的目标目录 如果不指定默认输出到当前目录--module_name可选参数控制聚合头文件的命名math - es_math_ops_c.h, es_math_ops.h, es_math_ops.pyall - es_all_ops_c.h, es_all_ops.h, es_all_ops.py不传递 - 默认为all--h_guard_prefix可选参数控制生成的头文件保护宏前缀用于可能的内外部算子同名情况的区分如果不指定使用默认前缀指定时拼接默认前缀python文件不感知此参数同名场景通过不同的路径避免冲突--exclude_ops可选参数控制排除代码生成的算子根据,分隔算子名--history_registry可选参数指定代码生产的历史原型库目录如果不指定默认不启用历史原型库指定时生成的C接口会包含历史原型库中兼容的版本信息--release_version代码生成模式可选参数与--history_registry配合使用指定当前版本号生成的C接口包含该版本的兼容版本信息如果不指定生成当前日期为基准兼容的历史版本历史原型库生成模式必填参数指定当前历史原型数据对应的版本号--release_date可选参数控制历史原型结构化数据的发布日期格式YYYY-MM-DD如果不指定使用当前日期--branch_name可选参数控制历史原型结构化数据的发布分支名输出文件说明代码生成模式输出es_ _ops_c.hC接口聚合头文件es_ _ops.hC接口聚合头文件es_ _ops.pyPython接口聚合文件es_op_type_c.h单个算子的C接口头文件es_op_type.cpp单个算子的C接口实现文件es_op_type.h单个算子的C接口头文件es_op_type.py单个算子的Python接口文件历史原型库生成模式输出index.json版本索引registry/ /metadata.json版本元信息registry/ /operators.json该版本算子原型数据使用示例生成代码到当前目录使用默认模块名all默认保护宏前缀gen_esb生成代码到指定目录使用默认模块名all默认保护宏前缀gen_esb --output_dir./output生成代码到指定目录使用math模块名默认保护宏前缀gen_esb --output_dir./output --module_namemath生成代码到指定目录使用all模块名默认保护宏前缀gen_esb --output_dir./output --module_nameall生成代码到指定目录使用math模块名自定义保护宏前缀MY_CUSTOMgen_esb --output_dir./output --module_namemath --h_guard_prefixMY_CUSTOM生成代码到指定目录使用math模块名自定义保护宏前缀MY_CUSTOM并排除 Add 算子生成gen_esb --output_dir./output --module_namemath --h_guard_prefixMY_CUSTOM --exclude_opsAdd生成代码到指定目录使用math模块名默认保护宏前缀生成的C接口会包含math历史原型目录中以当前日期为基准筛选的兼容版本信息./gen_esb --output_dir./output --module_namemath --history_registry/${CANN_INSTALL_PATH}/cann/opp/history_registry/math生成代码到指定目录使用math模块名默认保护宏前缀生成的C接口会包含math历史原型目录中8.0.RC2版本兼容的历史版本信息./gen_esb --output_dir./output --module_namemath --history_registry/${CANN_INSTALL_PATH}/cann/opp/history_registry/math --release_version8.0.RC2生成历史原型结构化数据到当前目录发布版本为8.0.RC1默认发布日期为当前日期./gen_esb --es_modeextract_history --release_version8.0.RC1生成历史原型结构化数据到指定目录发布版本为8.0.RC1默认发布日期为当前日期./gen_esb --es_modeextract_history --release_version8.0.RC1 --output_dir/${CANN_INSTALL_PATH}/cann/opp/history_registry/math生成历史原型结构化数据到指定目录发布版本为8.0.RC1自定义发布日期2024-09-30分支名为master./gen_esb --es_modeextract_history --release_version8.0.RC1 --output_dir/${CANN_INSTALL_PATH}/cann/opp/history_registry/math --release_date2024-09-30 --branch_namemaster注意事项确保环境变量已正确设置确保有足够的磁盘空间存储生成的代码文件生成的代码文件数量取决于系统中注册的算子数量保护宏前缀应该以大写字母和下划线组成避免与C关键字冲突错误处理如果环境变量未设置程序会提示错误并退出如果输出目录创建失败会回退到当前目录不支持的算子会被记录在生成的代码注释中【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考