H100推理飙升8倍!英伟达官宣开源TensorRT-LLM,支持10+模型
来源:51CTO.COM
时间:2023-09-10 14:33:24 235浏览 收藏
偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《H100推理飙升8倍!英伟达官宣开源TensorRT-LLM,支持10+模型》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!
「GPU贫民」即将告别困境!
刚刚,英伟达发布了一款名为TensorRT-LLM的开源软件,可以加速在H100上运行的大型语言模型的推理过程
那么,具体能提升多少倍?
在添加了TensorRT-LLM及其一系列优化功能后(包括In-Flight批处理),模型总吞吐量提升8倍。
使用和不使用TensorRT-LLM的GPT-J-6B A100与H100的比较
另外,以Llama 2为例,相比独立使用A100,TensorRT-LLM能够将推理性能提升4.6倍
对比Llama 2 70B、A100和H100在使用和不使用TensorRT-LLM的情况下的比较
网友表示,超强H100,再结合上TensorRT-LLM,无疑将彻底改变大型语言模型推理现状!
TensorRT-LLM:大模型推理加速神器
当前,由于大模型有着巨大的参数规模,使得「部署和推理」难度和成本一直居高不下。
英伟达开发的TensorRT-LLM旨在通过GPU来显著提高LLM的吞吐量,并降低成本
具体而言,TensorRT-LLM将TensorRT的深度学习编译器、FasterTransformer的优化内核、预处理和后处理以及多GPU/多节点通信封装在一个简单的开源Python API中
英伟达对FasterTransformer进行了进一步的增强,使其成为一个产品化的解决方案。
可见,TensorRT-LLM提供了一个易用、开源和模块化的Python应用编程接口。
不需要深入了解C++或CUDA专业知识的码农们,可以部署、运行和调试各种大型语言模型,并且能够获得卓越的性能表现,以及快速定制化的功能
根据英伟达官方博客的报道,TensorRT-LLM采用了四种方法来提升Nvidia GPU上的LLM推理性能
首先,为当前10+大模型,引入TensorRT-LLM,让开发者们能够立即运行。
其次,TensorRT-LLM作为一个开源软件库,允许LLM在多个GPU和多个GPU服务器上同时进行推理。
这些服务器分别通过,英伟达的NVLink和InfiniBand互连连接。
第三点是关于「机内批处理」,这是一项全新的调度技术,它允许不同模型的任务独立于其他任务进入和退出GPU
最后,TensorRT-LLM经过优化,可以利用H100 Transformer Engine来降低模型推理时的内存占用和延迟。
下面我们来详细看一下TensorRT-LLM是如何提升模型性能的
支持丰富LLM生态
TensorRT-LLM为开源模型生态提供了出色的支持
需要重写的内容是:具有最大规模和最先进的语言模型,例如Meta推出的Llama 2-70B,需要多个GPU协同工作才能实时提供响应
以前,要实现LLM推理的最佳性能,开发人员必须手动重写AI模型,并将其分解成多个片段,然后在GPU之间进行协调执行
TensorRT-LLM使用张量并行技术,将权重矩阵分配到各个设备上,从而简化了这一过程,可以实现大规模高效推理
每个模型可以在通过NVLink连接的多个GPU和多个服务器上并行运行,无需开发人员干预或模型更改。
随着新模型和模型架构的推出,开发人员可以使用TensorRT-LLM中开源的最新NVIDIA AI内核(Kernal)来优化模型
需要进行改写的内容是:支持的内核融合(Kernal Fusion)包括最新的FlashAttention实现,以及用于GPT模型执行的上下文和生成阶段的掩码多头注意力等
此外,TensorRT-LLM还包括了目前流行的许多大语言模型的完全优化、可立即运行的版本。
这些模型包括Meta Llama 2、OpenAI GPT-2和GPT-3、Falcon、Mosaic MPT、BLOOM等十多个。所有这些模型都可以使用简单易用的TensorRT-LLM Python API来调用
这些功能可帮助开发人员更快、更准确地搭建定制化的大语言模型,以满足各行各业的不同需求。
In-flight批处理
现如今大型语言模型的用途极其广泛。
一个模型可以同时用于多种看起来完全不同的任务——从聊天机器人中的简单问答响应,到文档摘要或长代码块的生成,工作负载是高度动态的,输出大小需要满足不同数量级任务的需求。
任务的多样性可能会导致难以有效地批处理请求和进行高效并行执行,可能会导致某些请求比其他请求更早完成。
为了管理这些动态负载,TensorRT-LLM包含一种称为「In-flight批处理」的优化调度技术。
大语言模型的核心原理在于,整个文本生成过程可以通过模型的多次迭代来实现
通过in flight批处理,TensorRT-LLM运行时会立即从批处理中释放出已完成的序列,而不是等待整个批处理完成后再继续处理下一组请求。
在执行新请求时,上一批还未完成的其他请求仍在处理中。
通过进行机上批处理和进行额外的内核级优化,可以提高GPU的利用率,从而使得H100上LLM的实际请求基准的吞吐量至少增加一倍
使用FP 8的 H100 Transformer引擎
TensorRT-LLM还提供了一个名为H100 Transformer Engine的功能,能有效降低大模型推理时的内存消耗和延迟。
因为LLM包含数十亿个模型权重和激活函数,通常用FP16或BF16值进行训练和表示,每个值占用16位内存。
然而,在推理时,大多数模型可以使用量化(Quantization)技术以较低精度有效表示,例如8位甚至4位整数(INT8或 INT4)。
量化(Quantization)是在不牺牲准确性的情况下降低模型权重和激活精度的过程。使用较低的精度意味着每个参数较小,并且模型在GPU内存中占用的空间较小。
这样做可以使用相同的硬件对更大的模型进行推理,同时在执行过程中减少在内存操作上的时间消耗
通过H100 Transformer Engine技术,配合TensorRT-LLM的H100 GPU使户能够轻松地将模型权重转换为新的FP8格式,并能自动编译模型以利用优化后的FP8内核。
而且这个过程不需要任何的代码!H100引入的FP8数据格式使开发人员能够量化他们的模型并从大幅度减少内存消耗,而且不会降低模型的准确性。
与INT8或INT4等其他数据格式相比,FP8量化保留了更高的精度,同时实现了最快的性能,并且实现起来最为方便。 与INT8或INT4等其他数据格式相比,FP8量化保留了更高的精度,同时实现了最快的性能,并且实现起来最为方便
如何获取TensorRT-LLM
尽管TensorRT-LLM尚未正式发布,但用户现在已经可以提前体验了
申请链接如下:
https://developer.nvidia.com/tensorrt-llm-early-access/join
英伟达也说会将TensorRT-LLM很快集成到NVIDIA NeMo框架中。
这个框架是最近由英伟达推出的AI Enterprise的组成部分,为企业客户提供了一个安全、稳定、可管理性极强的企业级AI软件平台
开发人员和研究人员可以通过英伟达NGC上的NeMo框架或GitHub上的项目来访问TensorRT-LLM
但是需要注意的是,用户必须注册英伟达开发者计划才能申请抢先体验版本。
网友热议
Reddit上的用户对TensorRT-LLM的发布进行了激烈的讨论
难以想象专门针对LLM对硬件做出优化之后,效果将会有多大的提升。
但也有网友认为,这个东西的意义就是帮助老黄卖更多的H100。
有些网友对此持不同意见,他们认为Tensor RT对于本地部署深度学习的用户也是有帮助的。只要拥有RTX GPU,将来在类似的产品上也有可能受益
从更宏观的角度来看,也许对于LLM而言,会出现一系列专门针对硬件级别的优化措施,甚至可能会出现专门为LLM设计的硬件来提升其性能。这种情况在许多流行的应用中已经出现过,LLM也不会例外
终于介绍完啦!小伙伴们,这篇关于《H100推理飙升8倍!英伟达官宣开源TensorRT-LLM,支持10+模型》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布科技周边相关知识,快来关注吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
139 收藏
-
137 收藏
-
377 收藏
-
277 收藏
-
385 收藏
-
193 收藏
-
150 收藏
-
352 收藏
-
212 收藏
-
285 收藏
-
364 收藏
-
292 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习