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

CANN Triton GE后端实现

README

【免费下载链接】triton-inference-server-ge-backendge-backend基于triton inference server框架实现对接NPU生态,快速实现传统CV\NLP等模型的服务化。项目地址: https://gitcode.com/cann/triton-inference-server-ge-backend

新版本特性 v2.3.0

  1. 支持对全局、session、graph 的options进行添加,从而进一步调优模型,相关案例请参考 性能调优方法论。
  2. 支持采用分档模式将符合条件模型转化为静态图,提高吞吐性能。
  3. 补充如何采用分档模式+锁核+调整精度,进一步提高性能。
  • 在AscendHub下载镜像时需确认好版本,若使用旧版本镜像,需要手工下载源码编译生成新的backend后才能支持新特性。

版本特性 v2.2.0

  1. 支持从onnx文件读取模型输入输出信息, config中若无指定input,output,将会自动从文件中读取;
  2. 调整动态图在多实例下使用多Session方式,提高并发吞吐(显存占用会增高);
  3. 支持动态batch场景小batch动态合并特性,配合多Session,提高吞吐;
  4. 补充调优方法论以及cnclip模型的最佳实践;
  5. 支持多模型特性,可支持同时拉起多个模型,提高现存利用率;
  6. 支持非0轴动态shape场景;
  7. 支持TensorFlow的pb文件。

介绍

ge-backend基于triton inference server框架实现对接NPU生态,快速实现传统CV\NLP模型的服务化。
triton inference server相关介绍请参考: https://docs.nvidia.com/deeplearning/triton-inference-server/user-guide/docs/index.html

实现原理

triton inference server 提供了Custom backend 接口,允许通过自定义backend实现NPU设备接入。

  1. 将本工程编译的backend文件libnpu_ge.so安装到 {Triton-server源码安装目录}/backends/npu_ge/, 启动triton-inference-server服务端, server在拉起模型过程中根据模型设置,选择npu_ge后端对推理请求进行分发。
  2. ge_backend 采用 GE组图方式进行推理,基于C++实现,支持GE的图优化、UB融合、多流并行等诸多特性,以便更好的为服务化模型提供更高吞吐。
  3. 模型在使用该框架时需要统一转换为Onnx格式,并基于triton-inference-server规范,配置模型相关config以及版本信息。

特性支持情况

特性名称介绍支持情况
多模型可支持一个server启动多个模型
多实例模型可同时处理多个请求,此特性需搭配多流并行或多卡使用
多卡支持一个模型可同时跑在多张卡上,每张卡可配置>1 的实例
多卡负载均衡多卡情况下能根据每张卡上任务数量动态分配请求目前仅支持所有请求shape一致场景
动态batch支持input、output 的0轴为可变场景
GE静态图通过shape固定,实现初始化图时分配好所有显存,提高图执行效率
多流并行多实例场景下NPU支持多Stream,提高NPU利用率
锁核配置每一条stream使用Cube以及Vector核心数量,以便多stream情况下提高吞吐
非0轴动态支持非0轴情况下的动态shape√ *
自动配置支持onnx模型自动读取input、output免配置√ *
  • *若output中包含动态轴,在导出onnx时需指定其与input中轴的关系,详情请查看 Torch模型转换为onnx

快速入门

用户可参考 快速入门 文档,从0-1掌握如何使用该backend快速接入NPU,实现小模型服务化。

问题定位&工具

在服务启动、推理过程中遇到问题,可参考问题定位 文档,定位具体问题

性能调优方法论

用户可参考此文档逐步提高模型吞吐,将性能调整至最优,文章最后以cnclip模型迁移为例,展示模型从转换至接入、运行、调优全流程,请点击 性能调优方法论 查看

相关信息

  • 贡献指南
  • 许可证
  • 所属SIG

联系我们

本项目功能和文档正在持续更新和完善中,建议您关注最新版本。

  • 问题反馈:通过GitCode【Issues】提交问题。
  • 社区互动:通过GitCode【讨论】参与交流。
  • 微信交流群:通过添加【GE小助手】,并反馈需要加入【triton-ge-backend交流群】,小助手会将您添加至相应交流群:

【免费下载链接】triton-inference-server-ge-backendge-backend基于triton inference server框架实现对接NPU生态,快速实现传统CV\NLP等模型的服务化。项目地址: https://gitcode.com/cann/triton-inference-server-ge-backend

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

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

相关文章:

  • CANN/opbase算子定义接口
  • Arch Linux自动化部署与深度定制:从脚本化安装到系统优化实战
  • SpiderDemo第一关
  • AArch64虚拟内存系统地址转换与参数配置详解
  • ViGEmBus驱动实战指南:从内核级模拟到性能调优的完整解决方案
  • Taotoken的用量看板让我们的月度AI支出变得清晰可预测
  • Hitboxer:如何用开源工具解决游戏按键冲突的终极方案
  • 三份假文档如何轻取AI知识库?RAG系统漏洞大揭秘!
  • STM32F103 学习笔记-21-串口通信(第5节)—串口2345代码移植和讲解
  • CANN/ops-rand API 实现状态
  • React聊天机器人组件集成指南:从UI定制到AI后端连接
  • 从特征工程到深度学习:AI视网膜疾病诊断的技术演进与工程实践
  • 脑机接口与LLM融合:EEGChat项目实现脑电信号到文本的意图解码
  • 【C++】stackqueuedequepriority_queue深度剖析
  • Codex Mac 安装报错解决教程(应用程序“Codex“无法打开)
  • 第一行代码--初步学习--UI开发--ListView
  • 自动化立体仓库系统项目施工要点
  • Win系统实现网络转发与端口映射:从 IPEnableRouter 到 RRAS 完整步骤
  • 如何快速掌握Blender插件io_scene_psk_psa:虚幻引擎PSK/PSA格式完整指南
  • 数据泄露已成网络安全新热点!成因、危害、溯源防御全方位深度解析
  • 从黑盒模型到因果反事实解释:构建可解释AI的实践路径
  • AI定价算法中的市场分配与合谋机制解析
  • Vatee外汇合规资质值得信赖吗?监管框架完善吗?
  • 基于大语言模型的互动游戏:提示词工程与AI游戏引擎设计
  • CANN/catlass GEMM恒等块调度
  • 2026年Q2北京铝镁锰板实力厂家盘点:廊坊铝硕金属制品有限公司深度解析 - 2026年企业推荐榜
  • JavaScript while 循环详解
  • Chainlit:快速构建AI应用界面的Python框架,无缝集成LangChain与OpenAI
  • 基于粒子群优化算法的微电网调度(光伏、储能、电动车、电网交互)(Matlab代码实现)
  • 线上推广公司怎么选?2026五家主流服务商全景评测与商家决策手册 - GEO优化