昇腾C SIMD API InitBufPool

发布时间:2026/9/29 13:48:37

昇腾C SIMD API InitBufPool
InitBufPool产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品 / Atlas A3 推理系列产品√Atlas A2 训练系列产品 / Atlas A2 推理系列产品√Atlas 200I/500 A2 推理产品xAtlas 推理系列产品 AI Core√Atlas 推理系列产品 Vector CorexAtlas 训练系列产品√Kirin X90√Kirin 9030√功能说明初始化TBufPool内存资源池。本接口适用于内存资源有限时希望手动指定UB/L1内存资源复用的场景。本接口初始化后在整体内存资源中划分出一块子资源池。划分出的子资源池TBufPool提供了如下方式进行资源管理TPipe::InitBufPool的重载接口指定与其他TBufPool子资源池复用;TBufPool::InitBufPool接口对子资源池继续划分TBufPool::InitBuffer接口分配Buffer关于TBufPool的具体介绍及资源划分图示请参考TBufPool。函数原型template class T __aicore__ inline bool InitBufPool(T bufPool, uint32_t len) template class T, class U __aicore__ inline bool InitBufPool(T bufPool, uint32_t len, U shareBuf)参数说明表 1模板参数说明参数名描述TbufPool的类型。UshareBuf的类型。表 2参数说明参数名输入/输出描述bufPool输入新划分的资源池类型为TBufPool。len输入新划分资源池长度单位为Byte非32Bytes对齐会自动补齐至32Bytes对齐。shareBuf输入被复用资源池类型为TBufPool新划分资源池与被复用资源池共享起始地址及长度。约束说明新划分的资源池与被复用资源池的硬件属性需要一致两者共享起始地址及长度输入长度需要小于等于被复用资源池长度其他泛用约束参考TBufPool。返回值说明无调用示例由于物理内存的大小有限在计算过程没有数据依赖的场景或数据依赖串行的场景下可以通过指定内存复用解决资源不足的问题。完整算子样例参考tbufpool_management样例。// 声明一个指向TPipe管道对象的指针 AscendC::TPipe* pipe; // 定义两个子资源池对象tbufPool1和tbufPool2 AscendC::TBufPoolAscendC::TPosition::VECCALC tbufPool1, tbufPool2; // 初始化第一个子资源池tbufPool1 pipe-InitBufPool(tbufPool1, bufSize * 3); // 初始化第二个子资源池tbufPool2并指定tbufPool2复用tbufPool1的起始地址及长度 pipe-InitBufPool(tbufPool2, bufSize * 3, tbufPool1); // 计算串行不存在数据踩踏实现了内存复用及自动同步的能力 tbufPool1.InitBuffer(srcQue0, 1, bufSize); tbufPool1.InitBuffer(srcQue1, 1, bufSize); tbufPool1.InitBuffer(dstQue0, 1, bufSize); CopyIn(); Compute(); CopyOut(); tbufPool1.Reset(); tbufPool2.InitBuffer(srcQue2, 1, bufSize); tbufPool2.InitBuffer(srcQue3, 1, bufSize); tbufPool2.InitBuffer(dstQue1, 1, bufSize); CopyIn1(); Compute1(); CopyOut1(); tbufPool2.Reset();创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Ascend C FetchEventID API文档

Ascend C FetchEventID API文档

2026/8/23 0:16:57

FetchEventID 产品支持情况 产品 是否支持 Ascend 950PR/Ascend 950DT √ Atlas A3 训练系列产品/Atlas A3 推理系列产品√ Atlas A2 训练系列产品/Atlas A2 推理系列产品√ Atlas 200I/500 A2 推理产品x Atlas 推理系列产品AI Core √ Atlas 推理系列产品Vector Core x Atlas…

Kubernetes 节点磁盘空间空了怎么办?解决 containerd overlay 100%问题

Kubernetes 节点磁盘空间空了怎么办?解决 containerd overlay 100%问题

2026/9/26 18:21:23

Kubernetes 节点磁盘空间空了怎么办?解决 containerd overlay 100%问题 当 Kubernetes 集群中的节点出现如下错误: MountVolume.SetUp failed for volume xxx: no space left on device或者执行 df -h 显示: /dev/mapper/centos-root 50G 50G 0G …

紧急!Cursor v0.43+版本视图切换逻辑重大变更:2天内必须更新的4项配置迁移清单,否则导致GitLens插件冲突率上升217%

紧急!Cursor v0.43+版本视图切换逻辑重大变更:2天内必须更新的4项配置迁移清单,否则导致GitLens插件冲突率上升217%

2026/9/3 12:48:40

更多请点击: https://kaifayun.com 第一章:Cursor v0.43视图切换架构重构的底层动因 Cursor 从 v0.43 版本起对视图切换(View Switching)机制进行了深度架构重构,其核心动因并非单纯响应 UI 层面的交互需求&#xff0…

CANN/GE ACL数据集缓冲区添加函数

CANN/GE ACL数据集缓冲区添加函数

2026/9/28 4:08:17

aclmdlAddDatasetBuffer 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te…

用ffmpeg高效批量调整图片尺寸的实战指南

用ffmpeg高效批量调整图片尺寸的实战指南

2026/9/28 16:01:49

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

2026/9/28 2:15:29

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 【免费下载链接】transformers 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and mu…

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

2026/9/28 3:14:54

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system sup…

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

2026/9/28 3:58:00

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

2026/9/28 3:47:14

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting mi…

远程协作的工作台整理

远程协作的工作台整理

2026/9/28 16:01:48

远程协作的工作台整理远程协作的核心不是再加一个工具,而是让交接信息足够完整。异步任务要写明目标、输入位置、完成标准和需要决策的人。 工作台的最小配置 将日程、待办、代码和沟通入口收拢到少数固定位置;通知按紧急程度分层。工作台不需要模仿办公…

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

2026/9/28 5:05:21

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

2026/9/28 16:01:48

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…