CANN/ops-tensor项目目录
项目目录【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensor本章罗列的部分目录是可选的请以实际交付件为准。尤其单算子目录不同场景下交付件有差异。项目全量目录层级介绍如下├── cmake # 项目工程编译目录 │ ├── func.cmake # 公共函数 │ ├── init_env.cmake # 环境初始化 │ ├── makeself_built_in.cmake # makeself内置配置 │ ├── package.cmake # 打包配置 │ ├── variables.cmake # 变量定义 │ └── third_party # 第三方依赖配置 │ └── makeself-fetch.cmake # makeself获取脚本 ├── docs # 项目相关文档目录 │ ├── README.md # 文档目录索引 │ ├── implementation.md # 实现说明文档 │ └── zh # 中文文档目录 │ ├── op_list.md # 算子列表 │ ├── context # 公共文档目录 │ ├── invocation # 算子调用文档目录 │ ├── develop # 算子开发文档目录 │ └── debug # 调试调优文档目录 ├── include # 头文件目录 │ ├── cann_ops_tensor.h # API头文件 │ └── cann_ops_tensor_types.h # 类型定义头文件 ├── lib # 框架代码目录 │ ├── CMakeLists.txt # 库编译配置 │ ├── core # 核心功能模块 │ │ ├── handle.cpp/hpp # 句柄管理 │ │ ├── operation_descriptor.cpp/hpp # 操作描述符 │ │ ├── plan.cpp/hpp # 计划管理 │ │ ├── plan_preference.cpp/hpp # 计划偏好设置 │ │ └── tensor_descriptor.cpp/hpp # 张量描述符 │ ├── elementwise # 逐元素运算模块 │ │ ├── elementwise.cpp/hpp # 逐元素运算基础 │ │ └── elementwise_binary.cpp # 二元逐元素运算 │ └── utils # 工具模块 │ ├── type_utils.hpp # 类型工具 │ ├── utils.cpp # 通用工具函数 │ ├── validation.cpp/hpp # 参数验证 ├── scripts # 脚本目录包含自定义算子、Kernel构建相关配置文件 │ ├── check_build_dependencies.py # 构建依赖检查脚本 │ ├── generate_version_info.py # 版本信息生成脚本 │ └── package # 打包相关脚本 │ ├── common # 公共打包脚本 │ ├── latest_manager # 版本管理 │ ├── module # 模块化打包 │ ├── package.py # 打包Python脚本 │ └── ops_tensor/ # ops_tensor打包配置 │ ├── ops_tensor.xml # 打包配置文件 │ └── scripts/ # 安装/卸载脚本 ├── src # 源码目录 │ ├── CMakeLists.txt # 算子编译入口 │ ├── add # add算子目录 │ │ ├── CMakeLists.txt # 算子编译配置文件 │ │ ├── add_kernel.cpp # Kernel实现文件 │ │ ├── add_solution.cpp # Solution实现文件 │ │ ├── arch35 # Ascend950特有算子代码 │ │ └── tests # 算子测试用例目录 │ └── [其他算子目录...] # 其他算子遵循相同结构 ├── tests # 项目级测试目录 │ ├── CMakeLists.txt # 测试编译配置 │ ├── all_tests.cpp.in # 测试入口模板 │ ├── test_common.cpp/h # 测试公共代码 │ └── test_elementwise.cpp # 逐元素运算测试 ├── CMakeLists.txt # 项目工程cmakelist入口 ├── CHANGELOG.md # 变更日志 ├── CONTRIBUTING.md # 项目贡献指南文件 ├── LICENSE # 许可证文件 ├── OAT.xml # OAT测试配置 ├── QUICKSTART.md # 快速入门指南 ├── README.md # 项目工程总介绍文档 ├── SECURITY.md # 安全声明文件 ├── build.sh # 项目工程编译脚本 ├── install_deps.sh # 项目依赖安装脚本 ├── requirements.txt # Python依赖列表 ├── Third_Party_Open_Source_Software_List.yaml # 第三方开源软件列表 ├── Third_Party_Open_Source_Software_Notice # 第三方开源软件声明 ├── version.cmake # 版本信息(CMake格式) ├── version.info # 版本信息文件 ├── .clang-format # 代码风格配置 ├── .gitignore # Git忽略规则 └── classify_rule.yaml # 分类规则配置目录说明核心目录目录/文件说明src/算子源码目录包含所有算子的实现代码src/add/add算子目录实现张量加法运算lib/框架代码目录提供核心基础功能lib/core/核心功能模块包含句柄、描述符、计划等lib/elementwise/逐元素运算模块提供基础元素级操作lib/utils/工具模块包含类型工具、验证等include/API头文件目录cmake/CMake编译配置文件文档目录目录/文件说明docs/项目文档目录docs/zh/中文文档目录docs/zh/context/公共文档如环境部署、目录介绍等docs/zh/invocation/算子调用相关文档docs/zh/develop/算子开发相关文档docs/zh/debug/调试调优相关文档docs/implementation.md实现说明文档测试目录目录/文件说明tests/项目级测试目录tests/test_common.cpp/h测试公共代码src/*/tests/各算子测试用例目录构建相关目录/文件说明build.sh项目编译脚本支持多种编译选项install_deps.sh项目依赖安装脚本CMakeLists.txtCMake配置文件version.info版本信息文件version.cmake版本信息(CMake格式)脚本目录目录/文件说明scripts/脚本目录scripts/check_build_dependencies.py构建依赖检查脚本scripts/generate_version_info.py版本信息生成脚本scripts/package/打包相关脚本scripts/package/package.py打包Python脚本配置文件文件说明.clang-format代码风格配置.gitignoreGit忽略规则classify_rule.yaml分类规则配置requirements.txtPython依赖列表OAT.xmlOAT测试配置算子目录结构每个算子目录如src/add/的典型结构如下${op_name}/ # 算子名的小写下划线形式 ├── CMakeLists.txt # 算子编译配置文件 ├── ${op_name}_kernel.cpp # Kernel实现文件 ├── ${op_name}_solution.cpp # Solution实现文件 ├── arch35/ # Ascend950特有实现 │ └── ${op_name}_struct.h # 算子结构定义 └── tests/ # 测试用例目录 ├── ${op_name}_test.cpp # 算子测试用例 └── ${op_name}_test.h # 测试头文件说明不同算子的交付件可能有差异请以实际目录为准。框架目录结构lib/目录包含框架层的基础功能模块为所有算子提供统一的抽象接口和基础设施lib/ ├── CMakeLists.txt # 库编译配置 ├── core/ # 核心功能模块 │ ├── handle.cpp/hpp # 句柄管理 │ ├── operation_descriptor.cpp/hpp # 操作描述符 │ ├── plan.cpp/hpp # 计划管理 │ ├── plan_preference.cpp/hpp # 计划偏好设置 │ └── tensor_descriptor.cpp/hpp # 张量描述符 ├── elementwise/ # 逐元素运算模块 │ ├── elementwise.cpp/hpp # 逐元素运算基础 │ └── elementwise_binary.cpp # 二元逐元素运算 └── utils/ # 工具模块 ├── type_utils.hpp # 类型工具 ├── utils.cpp # 通用工具函数 └── validation.cpp/hpp # 参数验证核心功能模块说明模块文件说明句柄管理handle.cpp/hpp管理库的上下文句柄维护全局状态操作描述符operation_descriptor.cpp/hpp描述算子操作的参数和属性计划管理plan.cpp/hpp管理算子执行计划支持计划缓存计划偏好plan_preference.cpp/hpp设置计划生成的偏好选项张量描述符tensor_descriptor.cpp/hpp描述张量的形状、数据类型等属性逐元素运算elementwise/提供通用的逐元素运算实现工具函数utils/提供类型转换、参数验证等工具函数【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考