腾讯深度学习编译器BlazerML项目技术分享

图灵汇官网

Apache TVM是一款面向CPU、GPU及机器学习加速器的开源机器学习编译器框架。它兼容TensorFlow、Pytorch、MXNet、ONNX等主流框架,旨在优化模型在各类硬件平台上的执行效率。TVM提供从模型定义到部署的全链路自动化解决方案,涵盖深度学习模型的编译、优化和实施。

近期,TVM社区举办了一场名为TVMCon2023的活动,腾讯的BlazerML深度学习编译器团队在此分享了题为《TVM在腾讯的应用》的演讲。BlazerML是基于开源深度学习编译器(TVM/XLA)开发的端到端推理和训练加速方案,致力于降低深度学习编译器的使用门槛,促进编译优化技术在业务场景中的应用。

分享内容围绕强化学习推理加速与CPU上高性能卷积算子优化两大主题展开。强化学习是通过奖励与惩罚机制提升AI性能的方法。通过可视化图解展示,强化学习训练框架中的Learner部署于GPU集群,负责模型训练并接收Actor生成的样本;而Actor则部署在CPU集群,利用实时策略生成样本数据。高效推理框架的引入,旨在加快样本生成速度。

强化学习推理加速部分,BlazerML通过一系列优化,实现了模型性能的显著提升,将Actor的推理时间占比控制在总时间的30%至40%,并节省了6%至16%的机器资源。此外,通过记录并直接操作模型权重,BlazerML减少了资源消耗,提高了服务器性能。

在高性能卷积算子优化方面,BlazerML针对Winograd算法进行了专门优化。该算法通过输入变换、权重变换、核心矩阵乘法和输出变换四步完成计算过程。优化重点在于降低变换计算量和数据排布变换的开销。通过分析理论复杂度,BlazerML调整了数据块大小的选择逻辑,特别是在特定形状下,采用大小为4的数据块获得了更高的加速比。

未来,BlazerML将聚焦于改进Cost Model,以减少在Winograd模板自动调优过程中出现的性能波动。团队已识别出当前Cost Model设计中存在的问题,并正探索更精确的Cost Model方案,以期在未来提供更多的高性能算子支持。

本文来源: 互联网 文章作者: 洪雅丹
    下一篇

导读:理论与实践相互印证,且密不可分。 作者 | 陈彩娴 编辑 | 岑峰 自2019年美国对华为制裁以来,芯片的研发一度成为举国聚焦的卡脖子难题。 芯片开发难度高,高端人才紧缺,研发时间长,投入大,要