栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

TensorRT - 喜大普奔,TensorRT8.2 EA起开始支持Einsum爱因斯坦求和算子

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

TensorRT - 喜大普奔,TensorRT8.2 EA起开始支持Einsum爱因斯坦求和算子

1 TensorRT 8.2 EA版本支持爱因斯坦求和算子Einsum

NVIDIA在2021年10月6日发布的TensorRT新版本 8.2 Early Access版本终于开始支持爱因斯坦求和算子Einsum,这个消息真是为模型工业化部署的同学省了不少的时间。

TensorRT中具体可支持的Onnx算子可参考:https://github.com/onnx/onnx-tensorrt/blob/master/docs/operators.md,

但是目前Einsum也是支持大部分等式,暂不支持省略号和对角线操作。

目前我已经使用TensorRT 8.2 EA版本对einsum算子转换进行了测试,真的是可以用了!

1.1 Tensor 8.2 EA支持Einsum算子的意义

在TensorRT 8.2 Early Access发布之前,如果深度学习模型中包含Einsum操作,比如pytorch中的torch.einsum或者Tensorflow中的tf.einsum的操作,那么可以成功转换成onnx模型,但是使用TensorRT的trtexec工具将onnx模型转换成TensorRT模型时,就会出现找不到Plugin:Einsum的操作,需要我们自定义插件去支持Einsum算子,

目前在Github上也有人开源自己写的Einsum插件:https://github.com/xn1997/TensorRT-EinsumPlugin/,但是这个插件目前只支持nctkv,kvw->nctw的算子操作,其他的需要自己去实现。

还有的方式是将这种Einsum算子在python层面直接改写成Pytorch或者Tensorflow的常规算子操作,具体可参考https://www.stubbornhuang.com/1741/或者 https://stubbornhuang.blog.csdn.net/article/details/120654252。

现在NVIDIA官方开始支持Einsum算子操作,为深度学习模型的工业化部署节省了太多的时间。虽然省略号和对角线操作暂不支持,但是在深度学习模型中大部分使用的是矩阵乘积或者batch乘积的功能,影响还是比较小的。

如果有兴趣,可以访问我的个站:https://www.stubbornhuang.com/,更多干货!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/322012.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号