TensorRT - 喜大普奔,TensorRT8.2 EA起开始支持Einsum爱因斯坦求和算子
1 TensorRT 8.2 EA版本支持爱因斯坦求和算子EinsumNVIDIA在2021年10月6日发布的TensorRT新版本 8.2 Early Access版本终于开始支持爱因斯坦求和算子Einsum,这个消息真是为模型工业化部署的同学省了不少的时间。TensorRT中具体可支持的Onnx算子可参考:https://github.com/onnx/onnx-tensorrt/blob/m
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/,更多干货!

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)