这两天国内外人工智能圈子都在热议Groq:这个硅谷公司的产品基于自研芯片可以做到在大模型推理时每秒处理将近500个token。


500个token什么概念,大概就是一句话的响应时间只需要不到2秒,如此这般的文字生成速度,甚至比翻译软件还快。当我们习惯了看GPT们慢悠悠地吐出答案时,第一次使用它看到那大模型生成的答案突突突地往外喷,或是更短的答案瞬间生成就像打开一个网页一样快的时候,确实会惊得呆住一下。


它一时间被冠以game changer的地位,被人们形容为即将干翻英伟达的存在。


一、如何实现的?


在对Groq的讨论里有人把它叫做大模型,有人叫它芯片,它自己叫自己LPU。这些眼花缭乱的形容让人很好奇,它到底是个啥,这么逆天的速度又是如何实现的?


根据Groq此前发布的论文,它的核心技术其实是一个名叫TSP的微架构设计,全称叫做张量流处理器,Tensor Streaming Processor,TSP。用一句话概括这个微架构就是,TSP通过独特的功能切片设计、确定性执行以及软件定义的方法来实现高性能和高效率的张量计算。


所谓微架构,指的是计算机处理器内部的设计和实现细节,微架构决定了处理器如何执行指令集架构(ISA)定义的指令。由微架构组成的产品才叫做处理器。(Groq成立于好几年前,直到大模型出来的今天它才想出了LPU,语言处理器单元这么个名字。)


那这个独特的“功能切片”又是怎么回事呢?


其实TSP的核心思想是将传统的多核处理器组织结构进行功能切片重组,并围绕张量计算这一抽象概念构建。TSP的内存单元与向量和矩阵深度学习功能单元是交织在一起的,充分利用深度学习操作的数据局部性。基于此,TSP的优势就变成了发掘机器学习负载中固有的各种并行性,包括指令级并行、内存并发、数据并行和模型并行,并通过消除硬件中的所有反应式元素来确保确定性执行。


那光有微架构肯定不行,你要把这个微架构做成服务器能用的产品才行。于是Groq就想到了把TSP变成专用集成电路,也就是ASIC。ASIC的特点在于特定的应用或算法进行了高度优化,以实现最佳性能、最低功耗和最小面积等目标。由于它们专门用于执行一种或一组相关任务,因此在完成这些任务时往往比非定制化的芯片更高效。


Groq公司设计的第一款TSP ASIC实现了超过每平方毫米硅片1万亿次操作/秒的计算密度,在900 MHz的标称时钟频率下,这款25×29 mm的14nm芯片运行时表现卓越。在ResNet50图像分类任务上,TSP能够在批次大小为1的情况下达到每秒处理20.4K张图片的速度,相较于现代GPU和其他加速器,性能提升了4倍。而Groq也因此确定了最终的产品形态——LPU(语言处理器单元)


TSP的关键创新在于其将传统二维核网格组织形式重新划分为按功能切分的瓦片布局,其中每个瓦片专门执行特定功能,并在垂直方向上堆叠形成“切片”。TSP使用流处理模型进行张量计算,空间上根据函数排列计算元件以利用张量流动过程中的数据流局部性优势。


估计你读到这里就会发现“好像缺了点啥”。


无论是英伟达的H200也好,还是谷歌的TPU也好,他们运行大模型的方法绝对不是仅靠一张卡来实现的。而TSP也是如此,每个TSP提供220 MB的本地存储,并且当TSP数量增加时,它们共同贡献的全球内存容量也随之扩大,物理上分散但逻辑上共享的SRAM芯片内存在整个系统中构成了分布式全局内存。


那么为了将这些个TSP组织在一起,Groq又设计了一个Dragonfly网络。这个网络采用多级层次化结构,其核心思想是将整个系统分割成多个子组,并通过几个层次的路由器连接这些子组。这种设计可以提供高的带宽容量,特别是对于跨节点间的全局通信,确保了在整个系统规模扩大时,每个TSP仍能保持相当水平的带宽接入。Dragonfly网络致力于减少网络直径,即从任意一个端点到另一个端点所需经过的最小跳数。较小的网络直径意味着更低的通信延迟,这对于要求实时响应和紧密同步的机器学习任务至关重要。


如果你想更简单粗暴的理解它,有人用了一个比喻,就是在一个交通复杂的城市里,LPU收集了所有人早上上班的方向,然后用软件来决定红绿灯,关掉了一条路上所有的交通灯让所有同一方向的车子在这条路上只管往前开。那当然快多了。


二、可用性如何?


我们也抱着好奇心尝试了一下。我向Groq和ChatGPT提了同一个问题,关于奥威尔一部著名小说里的一个具体意向的涵义。




对比可以看到,Groq的回答比较简单,无法挖掘书中所代表的更深的复杂的意味。而ChatGPT可以回答出更深层次的宿命意味的解读,而且有意思的是,作为慕名而来体验极速出文的我发现,Groq的回答其实耗时一共21.5秒。并不快。同样的问题给Chat GPT 3.5,哪怕是用中文问,只需要不到10秒就能得到答案。


然后我又找了个问题问他,我说《黑暗之心》里面的刚果河之旅又象征了怎样的隐喻?



这回确实生成得非常快了,只花费了2秒钟就给出了答案!


但答案方面,乍一看是那么回事,但是了解这本小说的人仔细看完会发现,Groq这回可能依然没答到点子上,跟上个问题给人的感觉差不多。所以,看来有些问题快是真的快,可是大部分给的回复都不太准确。而且我后来又试了试,我发现Groq在绝大多数情况下都能保证非常快速地给出结果,偶尔依然会“卡壳”,10秒,甚至20秒才能给出结果。


为什么会这样?


快速是Groq的优化带来的,而质量确实和调用的模型相关,但也与Groq的优化有关。


快速来自上面提到的TSP的优化,除此之外,Groq上面的模型也是他们自己微调过的,它并没有公开微调过程,所以对于模型本身的看法来源于我的推测:它上面可以选用的所有的模型后面都有“小尾巴”,比如Llama 2 70B-4K啊、Mixtral 8x7B-32k啊。


这个小尾巴是内容长度(Content Length)的意思,这个指标用来衡量模型生成的文本的长度,以便评估其生成内容的丰富程度或详细程度,这个数字越大输出的内容就越复杂。看起来Groq应该是没有在输出结果上进行微调,而是对模型处理过程进行微调,缩短了模型推理的时间限制,减少了它充分进行推理的时间,这样再配合TSP本身固有的加速,形成了最后的结果。


在社交媒体上,也有很多人在被这闪电般的速度震撼后,开始发现它生成的质量似乎总是不合乎人意。


从技术和性能上来看,Groq目前还不能撼动英伟达的地位。原因很简单,英伟达的GPU产品是通用的,而Groq的产品形态是ASIC,它不是通用产品,而是一个定制产品。简单点来说,任何一个人工智能算法都可以使用英伟达的H200,但只有Mixtral和Llama 2才能使用Groq的LPU。大模型公司想要使用Groq的产品,还需要先确定需求和指定规格,再进行功能验证,最后生产出来的产品才能使用。


这还带来了实际使用中的价格问题。


Lepton AI的贾扬清也做了一个详细的计算,发现如果运行三年的话,Groq的硬件采购成本是1144万美元,运营成本是76.2万美元或更高。8卡H100的硬件采购成本是30万美元,运营成本是7.2万美元或略低。


事实上Groq背后的概念也不新鲜了。2015年到2019年期间,随着人工智能这个概念被炒起来,诞生了很多“加速卡”公司,他们在PCIe插槽上制作类似GPU的产品,给当时的人工智能算法提供定制的物理加速服务,性质跟Groq差不太多。虽然有不少那样的公司在当时沸沸扬扬,然而才过了几年的工夫,你又能回想起几个这样的公司呢?希望这一次Groq的惊艳也不是一时的。


本文来自微信公众号:硅星人Pro(ID:Si-Planet),作者:苗正