Efficient INT8 Inference of Small NLP Models on Server CPUs with PyTorch Native Stack
本文提出了一种用于在服务器 CPU 上进行小型 NLP 模型 INT8 推理的原生 PyTorch 实现的 SmoothQuant,通过图级融合和优化的算子选择,实现了高达 5.8 倍的吞吐量提升且精度损失微乎其微,该方案现已合并至 PyTorch 和 TorchAO 中。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
在人工智能领域,一场无声的革命正与那些关于庞大、全知聊天机器人的喧嚣头条新闻并行发生。当公众的目光聚焦在能够撰写诗歌或解决复杂逻辑谜题的巨型模型时,驱动互联网日常流量(搜索结果、产品推荐和垃圾邮件过滤器)的引擎却依赖于更小、更专门化的程序。这些程序通常基于被称为 BERT 的一类设计,是数字经济中的主力军。它们运行在标准的计算机服务器上——即分布在全球数据中心里的那种——而非专门且昂贵的图形显卡。对于这些系统而言,速度和成本比原始规模更为重要。工程师们长期以来的挑战在于,如何在不牺牲维持其可用性的准确性的前提下,让这些模型运行得更快。实现这一目标的一种强有力的方法是简化计算机执行的数学运算,即通过一种被称为“量化”(quantization)的技术,用极小的精度损失换取巨大的速度提升。
英特尔公司(Intel Corporation)的一个研究小组现在搭建了一座桥梁,允许这些较小的语言模型直接在当今开发者最常用的主流软件工具中使用这种简化的数学运算。他们的工作专注于一种称为 SmoothQuant 的特定方法,该方法旨在让模型在处理简化数学运算的同时,不会丧失理解语言的能力。通过将这种方法集成到标准的 PyTorch 软件栈中,他们创建了一条路径,无需特殊的第三方工具或复杂的重写。其结果是,该系统可以获取一个标准的语言模型,并使其在现代服务器处理器上运行速度显著提升,同时保持其给出的答案与之前一样准确。
研究人员从一个常见问题入手:尽管现代计算机处理器拥有处理简化数学运算的内置指令,但用于构建这些模型的软件工具往往不知道如何高效地使用它们。当一个模型为了追求速度而进行准备时,软件往往会卡在转换数据或管理简化计算所需的步骤上,从而浪费了硬件所承诺的速度。为了解决这个问题,该团队将三种不同的技术整合进了一个无缝的工作流中。首先,他们使用了一个名为 TorchAO 的工具来准备模型,通过平滑数据使其可以被安全地简化。接着,他们使用了一个名为 TorchInductor 的编译器来观察模型计算的整个流程并将其合并,从而移除通常会减慢速度的冗余步骤。最后,他们教会了系统如何根据计算机处理器是拥有先进能力的较新型号还是仍广泛使用的较旧可靠型号,来选择执行核心数学运算的最快方式。
为了测试他们的成果,该团队在两代不同的英特尔服务器处理器上进行了实验。他们在三种不同类型的语言模型上进行了测试,涵盖了从大型复杂版本到小型紧凑版本的不同规模。结果令人瞩目。在较新的处理器上,该系统的运行速度比标准的、未经优化的版本快了多达 5.8 倍。在较旧的处理器上,它仍能实现近三倍的速度提升。或许最重要的一点是,速度的提升并没有以质量为代价。当研究人员在现实任务(如回答文本问题或判断句子情感)上测试这些模型时,简化后的模型给出正确答案的频率与原先较慢的版本完全一致。在许多情况下,准确性的差异微小到甚至无法测量。
团队还利用一种绘制计算机移动数据速度与计算速度之间限制关系的方法,仔细研究了速度提升的原因。他们发现,对于较新的处理器,速度受限于数据的移动速度;而对于较旧的处理器,则受限于数学运算的速度。他们的系统有效地应对了这两种限制。他们发现,通过预先准备数据并消除计算机在工作时停下来重新组织信息的需求,他们可以释放硬件的全部潜力。他们甚至为缺乏特定简化数学指令的旧处理器找到了一个巧妙的变通方法,使其能够使用另一种可用的指令来实现类似的结果。
这项工作之所以重要,是因为它为想要高效部署这些模型的公司消除了一个显著障碍。此前,获得这种水平的性能通常意味着需要使用难以维护的专门工具,或者需要脱离标准的软件环境。现在,开发者只需使用他们已知的工具即可获得同样的高性能。研究人员已向更广泛的社区分享了他们的代码,这意味着任何使用这些标准工具的人现在都可以立即获得这种速度提升。这项研究证实,在不改变模型或其运行软件的基本性质的前提下,使互联网的主力军变得更快、更高效是完全可能的。通过精心优化计算机处理数学运算的方式,该团队证明了在标准服务器上实现高效人工智能的未来不仅是一种可能,而且是一个在今天即可投入使用的现实。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。