news 2026/7/11 17:09:51

CANN Runtime架构设计文档

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN Runtime架构设计文档

Runtime 架构文档

【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime

本文档集介绍 CANN Runtime 架构设计,面向希望为 Runtime 贡献代码的开发者

架构总览

文档说明
architecture.md系统架构总览,介绍 Runtime 整体设计和核心组件

模块架构文档

文档说明
modules/runtime/runtime.mdRuntime 全局管理,单例模式和资源管理
modules/device/device.mdDevice 设备管理,设备初始化、状态管理、错误处理
modules/stream/stream.mdStream 流管理,任务队列和同步机制
modules/task/task.mdTask 任务管理,任务类型和执行流程
modules/context/context.mdContext 上下文管理,与 Device/Stream 的关系
modules/memory/memory.mdMemory 内存管理,内存池和分配策略
modules/kernel/kernel.mdKernel 核函数管理,二进制加载与执行
modules/event/event.mdEvent 事件管理,同步机制

特性文档

文档说明
features/aclgraph.mdACL Graph 特性,流捕获和模型构建
features/snapshot.mdSnapshot 特性,进程状态保存和恢复
features/fusion.mdFusion 特性,算子融合执行

如何使用这些文档

阅读顺序建议

  1. 新手入门:先读 architecture.md 了解整体架构
  2. 模块开发:根据兴趣阅读对应模块文档
  3. 特性开发:参考 features/ 目录下的特性文档

不同角色的阅读路径

  • Runtime 核心开发者:architecture → runtime → device → stream → task
  • 驱动适配开发者:architecture → device → stream
  • 性能优化开发者:memory → stream → task
  • 特性开发者:architecture → 对应 feature 文档

项目结构

runtime/ ├── api/ # API 接口层 │ ├── api.hpp # Runtime API 定义 │ ├── api_c_*.cc # C 语言接口实现 │ └── api_impl/ # API 版本实现 ├── core/ │ ├── inc/ # 内部头文件 │ └── src/ # 核心实现 │ ├── runtime.cc # Runtime 全局管理 │ ├── device/ # Device 模块 │ ├── stream/ # Stream 模块 │ ├── task/ # Task 模块 │ ├── context/ # Context 模块 │ ├── kernel/ # Kernel 模块 │ ├── event/ # Event 模块 │ ├── engine/ # Engine 调度 │ ├── memory/ # Memory 模块 │ ├── profiler/ # Profiler 性能分析 │ ├── launch/ # Kernel Launch │ ├── notify/ # Notify 通知 │ ├── dfx/ # DFX 功能 │ └── api_impl/ # API 实现 ├── driver/ # 驱动适配层 │ ├── v100/ # v100 版本驱动 │ ├── v200/ # v200 版本驱动 │ └── v201/ # v201 版本驱动 ├── feature/ # 特性功能实现 │ ├── aclgraph/ # ACL Graph 流捕获 │ ├── snapshot/ # Snapshot 进程快照 │ ├── model/ # Model 模型管理 │ ├── soma/ # SOMA 特性 │ ├── ccu/ # CCU 特性 │ ├── cntnotify/ # Count Notify │ ├── xpu/ # XPU 特性 │ ├── fusion/ # Fusion 融合 │ ├── dqs/ # DQS 特性 │ └── ffts/ # FFTS 特性 ├── config/ # 硬件差异配置 │ ├── as31xm1/ # AS31XM1 芯片配置 │ ├── bs9sx1a/ # BS9SX1A 芯片配置 │ ├── 910_B_93/ # 910B 芯片配置 │ └── ... # 其他芯片配置 ├── inc/ # 公共头文件 │ ├── device/ # Device 相关头文件 │ └── sqe/ # SQE 相关头文件 └── cmake/ # 构建配置

本文档遵循开源仓架构文档模版格式。

【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/11 17:04:29

3个维度深度解析:如何用REAPER-ReaScripts重构音频工作流?

3个维度深度解析:如何用REAPER-ReaScripts重构音频工作流? 【免费下载链接】REAPER-ReaScripts X-Rayms Free and Open Source Scripts for Cockos REAPER. 项目地址: https://gitcode.com/gh_mirrors/re/REAPER-ReaScripts 在音频制作领域&#…

作者头像 李华
网站建设 2026/7/11 17:03:57

如何快速构建多模态AI应用:MiniMax-M3-MXFP4-AttnFP8终极指南

如何快速构建多模态AI应用:MiniMax-M3-MXFP4-AttnFP8终极指南 【免费下载链接】MiniMax-M3-MXFP4-AttnFP8 项目地址: https://ai.gitcode.com/hf_mirrors/amd/MiniMax-M3-MXFP4-AttnFP8 MiniMax-M3-MXFP4-AttnFP8是一款经过AMD-Quark量化优化的先进多模态AI…

作者头像 李华
网站建设 2026/7/11 17:00:28

pybind11实战:5倍性能提升,Python与C++无缝融合指南

1. 项目概述:为什么我们需要pybind11?在数据科学、机器学习乃至游戏开发领域,我们常常面临一个经典的“两难困境”:Python以其简洁的语法、丰富的库生态和极高的开发效率,成为快速原型验证和业务逻辑实现的首选&#x…

作者头像 李华
网站建设 2026/7/11 16:57:49

Gartner预言落地:低代码正式迈入AI智能体时代

很多开发者和企业数字化从业者,至今仍停留在一个认知误区:认为低代码AI,就是在可视化拖拽平台里加一个代码生成插件、智能表单填充、流程自动审批的辅助功能。 但从2026年最新行业落地形态和Gartner战略技术趋势报告来看,这种认知…

作者头像 李华