大模型的推理速度,仅仅一个月就提高了一倍!
英伟达近日官宣给H100推出了“鸡血包”——专用于LLM推理的加速程序。
或许这下可以不用空等明年才能交付的GH200了。
GPU的运算能力一直影响着大模型的表现,无论是硬件提供者还是使用者都希望能算得更快些。
而作为大模型背后硬件的最大供应商,英伟达一直在研究怎么给大模型硬件加速。
通过与多家AI公司合作,英伟达终于推出了大模型推理优化程序TensorRT-LLM(暂且简称TensorRT)。
TensorRT不仅能让大模型的推理速度翻番,使用起来也十分方便。
无需深入了解C++和CUDA,也能快速定制优化策略,在H100上更快地跑大模型。
英伟达科学家范麟熙(Jim Fan)转发并评论称,英伟达的“另一项优势”就是可以最大化利用GPU性能的配套软件。
英伟达通过软件给产品打鸡血,仿佛在实践老黄的那句“买的越多省的越多”,但这也并不妨碍有人嫌贵:
除了价格,也有网友对其运行效果提出了质疑:
我们总是看到(宣传中的)多少倍的性能提升,但自己运行Llama 2的时候每秒还是只能处理几十个token。
到底是不是真的有效可能还需要继续检验,我们先来具体了解一下TensorRT。
大模型推理速度翻倍
TensorRT-LLM优化之后的H100,跑大模型到底有多快呢?
英伟达的通告中给出了Llama 2和GPT-J-6B两种模型的数据。
在优化后的H100上,跑Llama 2的推理速度则是A100的4.6倍、八月份未优化版H100的1.77倍。
而GPT-J-6B的推理速度是A100上的8倍、八月未优化版的2倍。
TensorRT还提供了开源的模块化Python API,根据不同LLM的需求,可以快速定制优化方案。
这个API将深度学习编译器、内核优化、预/后处理和多节点通信功能集成到了一起。
其中针对GPT(2/3)、Llama等常见模型,还有已经定制好的版本,可以“开箱即用”。
通过TensorRT中最新的开源AI内核,开发者还可以对模型自身进行优化,其中就包括了让Transformer大大提速的注意力算法FlashAttention。
那么TensorRT又是如何对LLM推理速度进行优化的呢?
首先要得益于TensorRT对多节点协同工作方式进行了优化。
像Llama这样庞大的模型,在单卡上是跑不起来的,需要多块GPU一起跑才能带动。
过去,这一工作需要人们手工把模型拆开来实现。
而有了TensorRT,系统可以自动化地对模型进行拆分,并通过NVLink在多GPU间高效运行。
其次,TensorRT还利用了一种名为动态批处理的优化调度技术。
LLM在推理过程中,实际上是在多次执行模型迭代。
动态批处理技术会将已完成的序列立即踢出,而不是等待整批任务完成后再处理下一组请求。
实际测试中,动态批处理将LLM的GPU请求吞吐量减少了一半,大大降低了运行成本。
另一个关键点则是将16位精度浮点数转换为8位精度,从而降低内存消耗。
FP8与训练阶段的FP16相比消耗的资源更低,同时精确度又高于INT-8,在提高性能的同时不影响模型的准确性。
通过Hopper Transformer引擎,FP16到FP8的转化编译由系统自动完成,无需人工对模型中的任何代码进行修改。
目前,TensorRT-LLM的早鸟版已经可以下载,正式版将于几周内推出并集成到NeMo框架中。
One More Thing
每当大事件出现,总少不了“列文虎克”的身影。
英伟达的公告中提到了“在与Meta等AI头部公司合作”,但没有提及OpenAI。
从这则通告中,就有网友发现了这个华点,并发到了OpenAI论坛上:
让我康康是谁没被老黄cue到(手动狗头)
你还期待老黄带给我们什么样的“惊喜”呢?