已开启
Ascend C Development Roadmap (2026 Q3) #938
ascendhjh创建于  6月12日
ascendhjh成员
6月12日 创建

Ascend C Development Roadmap (2026 Q3)

为提升复杂控制流、离散访存场景下向量计算的编程灵活性,Ascend950PR、Ascend950DT采用SIMD与SIMT深度融合的全新同构架构。其中,矩阵计算单元延续经典 SIMD 设计,向量计算单元在原生 SIMD 能力基础上拓展引入 SIMT 特性,最终形成了以SIMD为主、SIMT为辅的新一代同构编程模型。

2026年第三季度,我们将围绕Ascend950系列硬件持续打磨全栈开发体验。重点优化SIMD场景下基于指针的C语言编程、基于Tensor的C++编程能力,持续丰富SIMD C API、Tensor API配套开发文档与示例代码,全方位提升算子编译、调试、性能调优的整体使用体验。

Focus

  • 升级算子编程能力

    • SIMD编程:Tensor API 增强Layout表达能力,包括Compose、Flatten等接口;Tensor API支持AIV的计算能力,包括Reg矢量编程等;
    • SIMD编程: 优化TPipe/TQue框架、Tensor API、C API混合编程体验;
    • SIMD编程:语言扩展层C API优化命名,重构部分实现,提升编程体验;
    • SIMT编程:SIMT编程提升gridDim并发规模,支持65536及以上线程块配置;
    • 通信编程:asc-comm提供原语编程,支持用户从AICPU/AIV直接使用通信原语完成通信请求,编写通算算子;基于对称内存设计提供Ain接口,支持用户基于AIV+URMA完成通信请求,编写通算算子;
  • 完善开发者体验与文档体系

    • Ascend C API手册:基于 Ascend 950 全面优化 C API、Tensor API 参考手册,深度细化功能说明、核心特性与使用约束,提供精准开发指导。
    • Asc-devkit样例仓:持续迭代并丰富 C API、Tensor API 全功能示例,降低学习曲线,助力开发者快速上手并高效完成算子开发。
  • 提升算子编译体验

    • 持续丰富算子编译选项,提升 <<<>>编译体验和性能;
    • 新增一个编译命令,编译多种架构;
    • 支持CCU、AICore、AICPU混合编译;
  • 联创共建生态与社区

    • PyAsc 编程拓展:基于Ascend 950 ,支持Tensor API 与 SIMT 编程;
    • asc-stl:与社区联创,增加c++标准库中数值与数学函数、type_traits 等功能支持;
    • asc-mathdx:与社区联创支持 blasdx 初稿,支撑gemm类算子开发;

SIMD 编程

Tensor API

  • Goal:基于Layout全面升级Tensor编程能力,简化内存布局管理,匹配业界Tensor编程体验,提升C++Tensor开发易用性。
  • Key Features:
    • Tensor API增强Layout代码运算能力,包括Compose、Flatten等接口;
    • Tensor API支持AIV的计算能力,包括Reg矢量编程等;
  • Owner@wuzhaolin@hyolee@treefei
  • Issue#1316
  • PRhttps://gitcode.com/cann/asc-devkit/pull/5342

语言扩展层 C API

  • Goal:搭建命名统一、简洁易用的C语言扩展API体系,支持指针计算与数组内存分配,适配 <<<>> 直接调用能力,完全贴合业界C语言开发习惯。
  • Key Features:
    • 持续迭代优化C API命名规范与底层实现逻辑,精简冗余能力、提升接口稳定性;
    • 优化TPipe/TQue框架、Tensor API、C API混合编程适配逻辑,降低多接口协同开发成本;
  • Owner@wuzhaolin@pangfd
  • Issue#X
  • PR#X

SIMT编程

  • Goal:完善SIMT基础API体系,支持数组动态/静态内存分配,支持线程同步、内存屏障、原子操作、数学函数等核心能力。同步完善入门指南、编程模型说明、算子开发实战等配套文档与样例,打造对齐业界标准的SIMT开发体验。
  • Key Features:
    • 上调blockDim取值上限,支持65536及以上线程块尺寸,提升编程体验;
    • 联合社区搭建asc-stl初始版本(包括type_trait、常见的数学函数、常用的算法等),支持内核侧标准C++ STL编程,降低内核开发门槛;
  • Owner@zhanghao_0689@wulinyu
  • Issue#1391
  • PR#4795

通信编程

  • Goal:提供AscendC的高阶通算编程能力,完成AIV核内直接发起通信请求的能力,支持写入/读取、同步机制、一致性能力等接口。提供快速入门、编程指南、算子开发流程等配套文档样例,支撑开发者完成通算算子的开发:
  • Key Features:
    • 提供原语编程,支持用户从AICPU/AIV直接使用通信原语完成通信请求;
    • 基于对称内存设计提供Ain接口,支持用户基于AIV+URMA完成通信请求;
  • Owner@mlidongfeng@zhanghao_0689
  • Issue#X
  • PR#X

编程指南、API参考、算子实践参考

  • Goal:优化文档结构与阅读逻辑,实现内容梯度化、场景化。补充API硬件原理与场景化约束说明,充分释放芯片硬件能力;梳理典型算子开发流程与性能优化方法论,支撑开发者自主完成算子开发与调优。
  • Key Features
    • 迭代完善高级编程章节,新增独立通信编程模块,覆盖CCU全场景开发实践;
    • 基于实际开发场景优化扩充C API、Tensor API参考手册,细化接口功能、核心特性与使用限制;
  • Owner@Yifan_Wang@bianque
  • Issue#X
  • PR#X

官方示例代码

  • Goal:搭建覆盖核心API特性、典型算子实现的梯度化示例体系,通过由浅入深的实战案例,帮助开发者快速掌握开发规范,独立完成算子开发、精度优化与性能调优。
  • Key Features
    • 持续迭代扩充C API、Tensor API全功能示例代码;
    • 新增通信编程、SIMT协作组实战示例,补齐细分场景开发案例;
    • 新增SIMT协作组样例;
    • 完善典型算子精度调优、性能优化全流程实战案例,覆盖完整开发调优链路;
  • Owner@tunding@changxianyu
  • Issue#X
  • PR#X

算子编译

  • Goal:持续提升 <<<>> 自定义编译语法的完备性、稳定性与易用性,拓展多场景、多硬件异构混合编译能力,简化多架构算子编译流程。
  • Key Features
    • 丰富编译可选参数,完善 <<<>> 语法功能覆盖范围,提升编译完备度;
    • 提供统一编译命令,支持多硬件架构一键编译,简化多芯片编译流程;
    • 支持CCU、AICore、AICPU异构单元混合编译,适配复杂异构算子开发场景;
  • Owner@wk0911@xun_zhuge
  • Issue#X
  • PR#X
likedislike
Aascendhjh成员
6月12日 关联了里程碑:Ascend C Release Plan 2026Q3
zhugexun_sjtuzhugexun_sjtu成员
6月12日 置顶了issue
Aascendhjh成员
6月12日 修改了issue 的描述
Aascendhjh成员
6月12日 修改了issue 的描述
Aascendhjh成员
7月10日 修改了issue 的描述
zhanghao_0689zhanghao_0689成员
7月18日 修改了issue 的描述
Aascendhjh成员
7月22日 修改了issue 的描述
zhanghao_0689zhanghao_0689成员
7月24日 修改了issue 的描述
Wwuzhaolin成员
7月24日 修改了issue 的描述
Hhyolee成员
5 天前 修改了issue 的描述
Hhyolee成员
5 天前 修改了issue 的描述
Hhyolee成员
5 天前 修改了issue 的描述
Llouyuxuan成员
4 天前 修改了issue 的描述
Llouyuxuan成员
4 天前 修改了issue 的描述