在上一篇文章,我们深入探讨了 KV 缓存的相关优化方法。这篇文章我们将转变方向,探索可能影响机器学习模型速度的各种性能瓶颈。本文所介绍的内容广泛适用于任何机器学习模型(无论是用于训练场景还是推理场景)。不过,为了便于读者理解,本文所提供的示例将专注于大语言模型(LLM)的推理场景。
阅读本文之前,我强烈推荐各位阅读参考文献[1](https://horace.io/brrr_intro.html),本文在很大程度上受到了该博文的启发。
01
模型性能瓶颈的 4 种主要类型
如若对模型现有的性能不满意,并准备投入时间进行优化,那么第一步就是确定瓶颈类型。性能瓶颈主要可分为四类,其中三类与硬件的限制相关,一类与软件相关。
先从与硬件相关的瓶颈开始探讨,每种硬件瓶颈对应于某一种特定的工作状态或操作模式(specific operational regime:):
-
计算能力受限情况(Compute bound regime):在该情况下,大部分时间(即延迟)都耗费在执行计算操作上(如图 1 所示)。与其他情况相比&#x