新闻中心

EEPW首页 > 智能计算 > 设计应用 > 加速基于 Arm Neoverse N2 的大语言模型推理

加速基于 Arm Neoverse N2 的大语言模型推理

作者: 时间:2024-07-09 来源:Arm 收藏

人工智能 (AI) 正在众多行业掀起浪潮,尤其是在 (LLM) 问世后,AI 发展呈现井喷之势。LLM 模型不仅极大改变了我们与技术的交互方式,并且在自然语言理解和生成方面展现出了惊人的能力。虽然 GPU 在训练生成式 AI 模型方面发挥了重要作用,但在推理领域,除了 GPU 和加速器之外,还有其他可行的选择。长期以来,CPU 一直被用于传统的 AI 和机器学习 (ML) 用例,由于 CPU 能够处理广泛多样的任务且部署起来更加灵活,因此当企业和开发者寻求将 LLM 集成到产品和服务中时,CPU 成了热门选择。

本文引用地址://www.cazqn.com/article/202407/460787.htm

在本文中,我们将探讨基于 N2 的阿里巴巴倚天 710 CPU 在运行 Llama 3 [1] 和 Qwen1.5 [2] 等业内标准 LLM 时所展现的灵活性和可扩展性。此外,本文还将通过比较分析,展示倚天 710 CPU 相较于其他基于 CPU 架构的服务器平台所具备的主要优势。


 

阿里云倚天 710 云实例上的 LLM 性能

 

通用矩阵乘法 (General Matrix Multiplications, GEMM) 是深度学习计算(包括 LLM 中的计算)中广泛使用的一项基本运算。它对两个输入矩阵进行复杂的乘法运算,得到一个输出。v8.6-A 架构增加了 SMMLA 指令,该指令将第一个源矢量中的 2x8 有符号 8 位整数值矩阵与第二个源矢量中的 8x2 有符号 8 位整数值矩阵相乘。然后将生成的 2x2 的 32 位整数矩阵乘积加到目标矢量中的 32 位整数矩阵累加器中。这相当于对每个目标元素执行 8 路点积运算。SMMLA 指令已添加到基于 N2 的阿里巴巴倚天 710 CPU 中。

在过去几个月内, 软件团队与合作伙伴紧密协作,利用上述 SMMLA 指令,优化了在 llama.cpp 中实现的 int4 和 int8 GEMM 内核。最近,我们在阿里云倚天 710 云实例上进行了多次实验,采用了最新的优化 [3][4] ,以评估 llama.cpp 在不同场景下的性能表现。

所有实验均在阿里云 ecs.g8y.16xlarge 实例上进行,该实例带有 64 个虚拟 CPU (vCPU) 和 256 GB 的内存。所用的模型是经过 int4 量化的 Llama3-8B 和 Qwen1.5-4B。

 
 

提示词处理

提示词词元 (Token) 通常是并行处理的,即使对于单次操作 (batch=1),也会使用所有可用核心,而且随着批量大小的增加,提示词处理速率基本不变。在这方面,经过 Arm 优化,每秒处理的词元数提升了 2.7 倍。

 
 

词元生成

词元生成以自回归的方式进行,词元生成的总时间与需要生成的输出长度相关。在这方面,经过 Arm 优化,在处理更大批量的数据时提升效果更为明显,吞吐量最多可提高 1.9 倍。

 
 

延迟

词元生成的延迟对 LLM 的交互式部署非常重要。对于下个词元响应时间 (time-to-next-token),100ms 的延迟是关键的目标指标,这是基于人们每秒 5-10 个单词的典型阅读速度计算得出的。在下方图表中,我们看到在单次操作和批量处理的场景下,阿里云倚天 710 云实例都能满足 100ms 的延迟要求,因此是常规体量 LLM 的合适部署目标。我们使用了两组不同的新模型 Llama3-8B 和 Qwen1.5-4B,以展示实际部署中不同体量的常规 LLM 的延迟情况。

 

性能比较

 

此外,我们使用经过 int4 量化的 Llama3-8B 模型,比较了它在倚天 710 与在阿里云上其他服务器 CPU 的性能 [注] 。

阿里云倚天 710:ecs.g8y.16xlarge,64 个 vCPU,256 GB 内存,12.8 人民币/小时

Intel Icelake:ecs.g7.16xlarge,64 个 vCPU,256 GB 内存,16.74 人民币/小时


Intel Sapphire Rapids:ecs.g8i.16xlarge,64 个 vCPU,256 GB 内存,17.58 人民币/小时

[注] 阿里云倚天 710 采用了 [3][4] 中的优化,Intel Icelake 和 Sapphire Rapids 使用了现有的 llama.cpp 实现。

我们发现,与其他两款 CPU 相比,阿里云倚天 710 的提示词处理表现出最高达 3.2 倍的性能优势,词元生成性能最高达 2.2 倍的优势。

同样值得注意的是,阿里云倚天 710 平台的成本效益高于 Icelake 和 Sapphire Rapids,这在阿里云倚天 710 实例相对较低的定价中就有所体现。这使得阿里云倚天 710 在 LLM 推理的总体拥有成本方面具有显著优势,与其他两款 CPU 相比,每元词元数量最高多了近三倍,这为希望在采用 LLM 的过程中逐步扩大规模的用户提供了令人信服的优势。

 

结论

 

当开发者想要在应用中部署专用 LLM 时,服务器 CPU 为开发者提供了灵活、经济和简化的部署流程。Arm 集成了几项关键的增强功能,大幅提高了 LLM 的性能。得益于此,基于 Arm 的服务器处理器(如阿里云倚天 710)能够提供优于其他服务器 CPU 的 LLM 性能。此外,它们还有助于降低采用 LLM 的门槛,使更多应用开发者能够轻松将 LLM 部署于各种场景。



评论


相关推荐

技术专区

关闭