阿里巴巴|优化深度学习框架,TensorRT优化神器新版玩大了

阿里巴巴|优化深度学习框架,TensorRT优化神器新版玩大了

现在的人工智能深度学习程序 , 依赖并行计算和大量数据 , 所以很多情况是不是不能实现 , 而是实现的成本太大 。 以至于时有理论上都存在 , 现实中划不来的情况 。 想必关注这些领域的朋友也知道机智客的意思 。 因此这也让很多特别是大型的深度学习程序不便落地而只能出现在实验室里或者在巨头有钱人的手里 , 毕竟海量的数据和惊人的算力硬件往往只有有钱人或巨头才能负担得起 。
尾大不掉 , AI本身庞大 , 别说部署麻烦 , 就连相应的推理也变得很不友好 , 尤其是在线的应用 , 其延迟多一点就可能让用户体验大打折扣 。 因此 , 对现有的框架、算法、模型进行优化、推理优化就成了一个很重要的问题 。 相应的优化工具、算法也被研究者们相继推出 。

而英伟达近日发布的TensorRT 8.2新版本 , 正是这样一个高性能的深度学习推断(Inference )的优化器和运行的引擎 , 而且这次 , 还是一个重磅的更新 。 因为 , 这款让AI应用拥有低延迟、高吞吐量的推理能力的高性能的深度学习推理优化器 , 可以对高达10亿级参数的NLP模型进行了优化 , 以至于可以实现实时运行NLP应用程序了 。
具体而言 , 就是新版TensorRT框架为知名深度学习框架比如PyTorch和TensorFlow提供一套简单的API , 带来强大的FP16和INT8优化功能 , 往往一句代码 , 模型在NVIDIA GPU上就能实现高达6倍的性能提升 。
那么它是怎么构成的 , 以Torch-TensorRT编译器为例 , 它是由三个模块阶段组成的:简化TorchScript模块、转换、执行 。 关于TensorRT的优势 , 我们可以用T5来解释说明 。 T5 , 即Text-To-Text Transfer Transformer , 文本到文本转换Transformer , 是谷歌创建的将所有自然语言处理(NLP)任务重新组织成统一的文本到文本格式 , 其中输入和输出总是文本字符串的架构 。 目前 , 已发布的预训练T5的参数最多高达3B和11B 。
【阿里巴巴|优化深度学习框架,TensorRT优化神器新版玩大了】当我们从Hugging Face模型中心下载Hugging Face PyTorch T5模型及其相关的tokenizer , 然后转化为通用格式ONNX后 , 就可以将其转换为经过优化的TensorRT执行引擎中了 。 之后将准备好的T5 ONNX编码器和解码器转换为优化的TensorRT引擎 , 最后就是用T5的TensorRT引擎进行推理了 。 通过将T5转换为TensorRT引擎与PyTorch模型在GPU上的推断时间相比 , TensorRT延迟降低了3到6倍 。 可以说大大优化了 。 当然 , 这仅仅是T5 , 对其他模型比如GPT-2也类似 。