当前位置: 首页 > news >正文

昇腾GE动态维度设置API

aclmdlSetInputDynamicDims

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

产品支持情况

产品

是否支持

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Atlas A2 训练系列产品 / Atlas A2 推理系列产品

功能说明

如果模型输入的Shape是动态的、输入数据Format为ND格式(ND表示支持任意格式),在模型执行前调用本接口设置模型推理时具体维度的值。

函数原型

aclError aclmdlSetInputDynamicDims(uint32_t modelId, aclmdlDataset *dataset, size_t index, const aclmdlIODims *dims)

参数说明

参数名

输入/输出

说明

modelId

输入

模型ID。

调用aclmdlLoadFromFile接口/aclmdlLoadFromMem接口/aclmdlLoadFromFileWithMem接口/aclmdlLoadFromMemWithMem接口加载模型成功后,会返回模型ID。

dataset

输入&输出

模型推理的输入数据的指针。

使用aclmdlDataset类型的数据描述模型推理时的输入数据,输入的内存地址、内存大小用aclDataBuffer类型的数据来描述。

index

输入

标识动态维度的输入index。

需调用aclmdlGetInputIndexByName接口获取,输入名称固定为ACL_DYNAMIC_TENSOR_NAME。

dims

输入

具体某一档上的所有维度信息的指针。

此处设置的动态维度的值只能是模型构建时设置的档位中的某一档。

例如:使用ATC工具进行模型转换时,input_shape="data:1,1,40,-1;label:1,-1;mask:-1,-1" ,dynamic_dims="20,20,1,1; 40,40,2,2; 80,60,4,4",若输入数据的真实维度为(1,1,40,20,1,20,1,1),则dims结构体信息的填充示例如下(name暂不使用):

dims.dimCount = 8

dims.dims[0] = 1

dims.dims[1] = 1

dims.dims[2] = 40

dims.dims[3] = 20

dims.dims[4] = 1

dims.dims[5] = 20

dims.dims[6] = 1

dims.dims[7] = 1

如果不清楚模型构建时的动态维度档位,也可以调用aclmdlGetInputDynamicDims接口获取指定模型支持的动态维度档位数以及每一档中的值。

返回值说明

返回0表示成功,返回其他值表示失败,请参见aclError。

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

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

http://www.jsqmd.com/news/796063/

相关文章:

  • 苏州旧房翻新:苏州工业园专业的房屋拆除公司 - LYL仔仔
  • 2026年贵阳高端室内全案设计避坑指南 - 企业名录优选推荐
  • 陕西广告扇定做与西北企业画册设计印刷2026年品牌推荐:规上工厂产能对标 - 优质企业观察收录
  • CANN/ge模型卸载接口
  • 手把手教你用VirtualBox+Windows XP复现冰河木马攻击链(仅供学习防御)
  • 2026年论文降重、降AI率收藏指南:从AI检测红橙黄绿到学术清流逆袭 - 降AI实验室
  • 从适配到体验:Android Accessibility 与 TalkBack 实战进阶指南
  • 国内洗头洗脸SPA店加盟品牌综合实力排行盘点 - 奔跑123
  • 安全测试新范式:让AI扮演黑客,自动发现系统漏洞
  • Arch/Manjaro用户看过来:用AUR一键搞定Realtek RTL8852AE驱动,别再手动make了
  • 沪深北交易规则修订全景报告-2026
  • 技术深度解析:游戏帧率限制突破的原理与实践
  • Live Room Watcher技术解析:构建高效直播数据监控系统的Java解决方案
  • 43.HTML 事件处理和 React 事件处理有什么区别?
  • Go伪终端库creack/pty完全指南:10个实用技巧快速上手
  • AI写专著高效之道:4款工具大推荐,快速生成20万字专著!
  • Hover Zoom+开发者深度解析:揭秘插件系统架构与工作原理的终极指南
  • CANN/asc-devkit向量标量比较API
  • 微服务测试的终极难题:分布式链路追踪与AI根因分析实战
  • Webcamoid:60+特效让普通摄像头变身高能创意工具
  • 终极指南:Windows虚拟手柄驱动ViGEmBus - 让任何手柄在PC上完美运行 [特殊字符]
  • 告别Jtag!手把手教你将ZYNQ PL端LED程序烧写到QSPI Flash自启动
  • Remotion 渲染视频脚本 ,自动化编辑视频 Node.js 层面是“单线程 JS”,但在实际渲染时是“高度并行”的。
  • SharpShooter AMSI绕过技术深度解析:如何有效规避Windows防御机制
  • Jenkins Job DSL与Pipeline集成:现代DevOps工作流的10个最佳实践
  • 44.React 里的 Synthetic Events(合成事件)是什么?
  • 3大策略:如何用Inter字体优化方案提升网站性能300%
  • COSMIC Text入门指南:如何在Rust中实现多语言文本渲染
  • OpenClaw赚钱实录:从“养龙虾“到可持续变现的实践指南——OpenClaw一人公司-[一人公司的终极技术栈,从0到变现的完整光谱]
  • 昇腾GE动态AIPP通道最小值设置