QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

旷视天元 MegEngine 开源 CUDA INT4 量化源码实现

  • 2022-09-05
    北京
  • 本文字数:889 字

    阅读完需:约 3 分钟

旷视天元MegEngine开源 CUDA INT4 量化源码实现

当下人工智能技术正加速发展,渗透到云、边、端和应用的各个层面,与海量 IoT 设备进行深度融合,不断拓展应用场景。然而在 AIoT 场景中,嵌入式设备往往算力有限,难以承载庞大的 AI 模型。如何在资源有限的终端场景实现 AI 模型的有效部署,是加速 AI 落地的重要问题。


AI 工程师们研发了各种试图缩小模型大小并保持性能的办法,例如量化和蒸馏。其中,模型量化是将浮点计算转成低比特定点计算的一种模型压缩技术,可以有效减少模型算力消耗并提升计算速度,当前已经在工业界发展比较成熟。


目前相对成熟的模型量化方案是 INT8 量化。以 ResNet-50 模型为例,原本需要用 float 32 表示的权重,量化后只需要使用  INT8 表示,通过这样的处理,模型体积可以减少到原来的 1/2,再加上 TensorCore 的加持,还会有近 8 倍的网络加速。而如果更进一步,将模型用 INT4 表示,可以带来更多的速度提升。


为了推动低比特量化技术的发展,旷视天元MegEngine 团队开源了 INT4 的源码实现,这也让 MegEngine 成为首个开源 CUDA INT4 源码实现的深度学习框架


MegEngine采用均匀线性量化方案,实现了非对称量化和对称量化两种 INT4 的数据类型,同时通过算子融合优化、kernel 优化等方法,使得量化后的模型可以依然保持较高的精度以及良好的运行速度。同样以 ResNet-50 为例,INT4 相比 INT8 有 1.3 倍的加速。


具体代码实现可以访问 GitHub 链接(https://github.com/MegEngine/examples)了解详情。


随着 CUDA INT4 的开源,目前 MegEngine 框架不仅支持浮点数 FP32 和 FP16,而且支持 INT8 和 INT4 的对称和非对称量化推理。


此外,MegEngine 框架开发了诸多工具,帮助用户提升模型推理性能、简化部署流程,包括自动代码裁剪功能,支持用户全自动的针对算子进行代码裁剪;TracedModule 方案以及 MegEngine Lite,基于旷视业务打磨出的模型推理最佳实践,化解模型转换部署难题;流程管理工具 FastRun, 可以为每个计算自动选择最快的算法,从而保证整个网络的运行时间最短,让 MegEngine 用户运行不同的网络时都能收获最好性能。


据悉,自开源以来,MegEngine 不断优化,已先后发布 29 个版本,推出一系列实用功能,降低 AI 算法生产门槛,助力 AI 应用快速落地。

2022-09-05 19:595570
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 543.4 次阅读, 收获喜欢 1978 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第三周作业

大丁💸💵💴💶🚀🐟

看完这篇 HashMap,和面试官扯皮就没问题了

苹果看辽宁体育

Java 源码分析

设计模式与敏捷开发

架构师 架构是训练营

架构师训练营第三周作业

好名字

作业

【架构师训练营】第三周总结

Mr.hou

极客大学架构师训练营

观察者模式详解

Seven七哥

设计模式 观察者模式

架构师训练营 - 第三周 - 作业

韩挺

架构师训练营作业 --Week3

吴炳华

极客大学架构师训练营

锦囊篇|一文摸懂Glide

ClericYi

Kotlin实现组合模式

Acker飏

极客大学架构师训练营

是时候扔掉 Postman 了,Apifox 真香!

狐哥说技术

Postman 面向接口编程 Apifox 接口文档 接口测试

架构师训练营第 3 周作业

在野

极客大学架构师训练营

BIGO全球计算平台的技术挑战

DT极客

week03 单例作业以及组合模式

李锦

极客大学架构师训练营

架构师训练营 - 作业 - 第三周

心在飞

极客大学架构师训练营

拍一拍,微信史上最短一行代码,是如何被网友玩坏的!

程序员生活志

c++ 微信

腾讯健康码16亿亮码背后的Elasticsearch系统调优实践

腾讯云大数据

大数据 elasticsearch

Apache Zeppelin:可能是开源届最好的Flink开发平台

Geek_8o1tcx

大数据 flink 流计算 Zeppelin

架构师训练营 - 第三周 - 学习总结

韩挺

macOS Big Sur、iOS14测试版描述文件

Winann

iOS14 macOS Big Sur 描述文件

架构师训练营 - 第三课作业 -20200624- 单例及组合模式

👑👑merlan

架构设计 极客大学架构师训练营

如何学习设计模式

elfkingw

极客大学架构师训练营

设计模式代码实现

dony.zhang

冒泡排序

wjchenge

冒泡排序

为什么建议你使用枚举?

王磊

Java 枚举

Linux性能优化实战-第一天学习

程序员老王

c++ 性能调优

漫画通信:有了它,终于可以放心买买买了

阿里云Edge Plus

云通信 短信 语音 通信云

week03 架构师培训营总结

李锦

手写一个单例

Acker飏

极客大学架构师训练营

作业 - 第三周

Happy-Coming

读懂一个 demo,入门机器学习

陈东泽 EuryChen

人工智能 tensorflow 学习 AI

旷视天元MegEngine开源 CUDA INT4 量化源码实现_AI&大模型_刘燕_InfoQ精选文章