Ascend C API列 表
Ascend C 提 供 了 一 套 层 次 化 的 API 体 系,涵 盖 了 从 底 层 C 扩 展 到 高 阶 C++ 类 库 的 完 整 能 力。它 支 持 开 发 者 以 标 准 C/C++ 语 法 为 基 础,在 AI Core(SIMD/SIMT) 及 AI CPU 等 多 种 编 程 模 型 下,灵 活 实 现 精 细 化 的 内 存 管 理 与 高 效 的 矢 量/矩 阵 运 算。
API分 类 总 览
下 表 展 示 了 Ascend C API 的 总 体 分 类,帮 助 开 发 者 根 据 编 程 模 型 和 功 能 需 求 快 速 定 位 所 需API。
| API一 级 分 类 | API二 级 分 类 | 分 类 说 明 |
|---|---|---|
| SIMD API | 基 础API | 实 现 对 硬 件 能 力 的 抽 象,开 放 芯 片 的 能 力,保 证 完 备 性 和 兼 容 性。标 注 为ISASI(Instruction Set Architecture Special Interface,硬 件 体 系 结 构 相 关 的 接 口)类 别 的API,不 能 保 证 跨 硬 件 版 本 兼 容。 |
| SIMD API | C API | 纯C接 口,开 放 芯 片 完 备 编 程 能 力,支 持 数 组 分 配 内 存,一 般 基 于 指 针 编 程,提 供 与 业 界 一 致 的C语 言 编 程 体 验。 |
| SIMD API | 高 阶 API | 实 现 一 些 常 用 的 计 算 算 法,用 于 提 高 编 程 开 发 效 率,通 常 会 调 用 多 种 基 础API实 现。高 阶API包 括 数 学 库、Matmul、Softmax等API。高 阶API可 以 保 证 兼 容 性。 |
| SIMT API | - | 对 标 业 界,提 供 单 指 令 多 线 程API。以 单 条 指 令 多 个 线 程 的 形 式 来 实 现 并 行 计 算。SIMT编 程 主 要 用 于 向 量 计 算,特 别 适 合 处 理 离 散 访 问、复 杂 控 制 逻 辑 等 场 景。SIMT API支 持 两 种 编 程 模 型:SIMT编 程、SIMD与SIMT混 合 编 程,具 体 支 持 的API请 分 别 参 见SIMT编 程API列 表、SIMD与SIMT混 合 编 程API列 表。 |
| AI CPU API | - | 通 常 作 为 上 述API的 补 充,主 要 承 担 非 矩 阵 类、逻 辑 比 较 复 杂 的 分 支 密 集 型 计 算。 |
| Utils API | - | 丰 富 的 通 用 工 具 类,涵 盖 标 准 库(目 前 仅 支 持SIMD)、平 台 信 息 获 取、运 行 时 编 译 及 日 志 输 出 等 功 能,支 持 开 发 者 高 效 实 现 算 子 开 发 与 性 能 优 化。 |