#llm

Bilibili 技术: 大模型推理加速的研究与分析

加速方案的主要思路

1 - 算子层优化

● Operator Fusion:通过将多个算子融合为一个复杂算子,减少内存访存次数,加快计算速度。
● High-Performance Acceleration Library:使用如ONNX Runtime、TVM、cuBLAS、FasterTransformer等高性能加速库,优化常见的神经网络算子的计算性能。
● Layer Fusion:在多头注意力机制中,将所有操作合并到一个计算核中,减少数据传输并提高数学密度。

2 - 算法层优化

● Quantization Techniques:使用精度更低的单位来表示模型的权重或激活值,以节省空间和加速模型推理速度。
● Speculative Decoding:通过使用一个简洁且反应迅速的小型模型来辅助解码,提升推理速度。
● Sharding Strategy Optimization:通过模型分片将不同部分的计算任务分布到多个设备上,减少单个设备的内存压力和计算瓶颈。

3 - 框架层优化

● Contiguous Batching:通过在推理过程中保持请求的连续批量处理,减少上下文切换和内存调度带来的开销。
● PageAttention:优化Attention机制中的KV存储,减少内存占用,提高内存访问效率。
● TensorRT-LLM和MindelIE-LLM框架:通过支持多种Attention机制和流水线并行、跨层并行等技术,提高推理的吞吐量和响应速度。

via Memos