芯片性能具有确定性。编译器动态地重新配置硬件来执行每个计算,因此编译器和芯片之间没有抽象(abstraction)。由于编译器了解硬件和每条指令的速度,所以它可以准确地告诉硬件做什么,什么时候做。
在传统的体系架构中,将数据从 dram 移动到处理器需要大量的算力和时间,而且相同工作负载上的处理性能也是可变的。在典型的工作流中,开发人员通过反复运行工作负载或程序来对其进行配置和测试,以验证和度量其平均处理性能。由于处理器接收和发送数据的方式不同,这种处理可能会得到略有差别的结果,而开发人员的工作就是手动调整程序以达到预定的可靠性级别。
但有了 groq 的硬件和软件,编译器就可以准确地知道芯片的工作方式以及执行每个计算所需的时间。编译器在正确的时间将数据和指令移动到正确的位置,这样就不会有延迟。到达硬件的指令流是完全编排好的,使得处理速度更快,而且可预测。
开发人员可以在 groq 芯片上运行相同的模型 100 次,每次得到的结果都完全相同。对于安全和准确性要求都非常高的应用来说(如自动驾驶汽车),这种计算上的准确性至关重要。
另外,使用 groq 硬件设计的系统不会受到长尾延迟的影响,ai 系统可以在特定的功率或延迟预算内进行调整。
这种软件优先的设计(即编译器决定硬件架构)理念帮助 groq 设计出了一款简单、高性能的架构,可以加速推理流程。
该架构既支持传统的机器学习模型,也支持新的计算学习模型,目前在 x86 和非 x86 系统的客户站点上运行。
更简单的架构设计
为了满足深度学习等计算密集型任务的需求,芯片的设计似乎正在变得越来越复杂。但 groq 认为,这种趋势从根本上就是错误的。他们在白皮书中指出,当前处理器架构的复杂性已经成为阻碍开发者生产和 ai 应用部署的主要障碍。当前处理器的复杂性降低了开发者工作效率,再加上摩尔定律逐渐变慢,实现更高的计算性能变得越来越困难。
groq 的芯片设计降低了传统硬件开发的复杂度,因此开发者可以更加专注于算法(或解决其他问题),而不是为了硬件调整自己的解决方案。有了这种更加简单的硬件设计,开发者无需进行剖析研究(profiling),因此可以节省资源,更容易大规模部署 ai 应用。
与基于 cpu、gpu 和 fpga 的传统复杂架构相比,groq 的芯片还简化了认证和部署,使客户能够简单而快速地实现可扩展、单瓦高性能的系统。
让每个晶体管实现更高的性能
groq 的张量流架构可以在任何需要的地方提供算力。与当前领先的 gpu、cpu 相比,groq 处理器的每个晶体管可以