高性能推理框架漫谈

传统模型分布式推理框架

  • Tensorflow serving:仍然是搜索广告推理系统的主流推理框架
  • Pytorch Serving:随着pytorch 的流行,慢慢从算法的开发到部署都采用pytorch,但目前大模型包括传统模型还比较少见到直接采用pytorch serving进行业务上线部署的情况

大语言模型的推理框架

在这里插入图片描述

  • 其中, VLLM 后端接入了Ray 框架, 作为调度请求的分发处理;
    • 到目前为止,使用 vLLM 进行推理是最快的可用选项;
    • 高吞吐量服务——各种解码算法,包括并行采样、beam搜索等
    • OpenAI 兼容的 API 服务器 — 如果使用 OpenAI API,则只需替换端点的 URL
  • 除此之外,还包括Nvidia 最新推出的TensorRT-LLM, 增加了对LLM 的支持

目前应用比较多的是VLLM 和DeepSpeed, 关于二者的比较:
在这里插入图片描述

Fast-Transformer

在这里插入图片描述

  • 与 NVIDIA TensorRT 等其他编译器相比,FT 的显着特点是它支持以分布式方式推断大型Transformer模型。
  • 上图显示了如何使用张量并行 (TP) 和流水线并行 (PP) 技术将具有多个经典transformer/attention的神经网络拆分到多个 GPU 和节点上。
    = 在底层,启用节点间/节点内通信依赖于 MPI 和 NVIDIA NCCL。使用此软件堆栈,您可以在多个 GPU 上以张量并行模式运行大型Transformer,以减少计算延迟
    同时,TP 和 PP 可以结合在一起,在多 GPU 和多节点环境中运行具有数十亿和数万亿个参数(相当于 TB 级权重)的大型 Transformer 模型。
  • 使用 MPI 和 NCCL 实现节点间/节点内通信并支持模型并行性在 GPT 模型中
  • FasterTransormer 同时提供张量并行和流水线并行。 对于张量并行性,
    对于自注意力块和前馈网络块,FT 按行拆分第一个矩阵的权重,并按列拆分第二个矩阵的权重。
  • 通过优化,FT 可以将每个 Transformer 块的归约操作减少到两倍。对于流程并行性,FasterTransformer 将整批请求拆分为多个微批,隐藏了通信的bubble。 FasterTransformer 会针对不同情况自动调整微批量大小。

TensorRT-LLM

Reference

  • https://medium.com/@plthiyagu/comparing-llm-serving-frameworks-llmops-f02505864754
  • https://blog.vllm.ai/2023/11/14/notes-vllm-vs-deepspeed.html
  • https://github.com/NVIDIA/FasterTransformer/
  • https://developer.nvidia.com/zh-cn/blog/accelerated-inference-for-large-transformer-models-using-nvidia-fastertransformer-and-nvidia-triton-inference-server/
  • Benchmarking LLM Inference Backends: vLLM, LMDeploy, MLC-LLM, TensorRT-LLM, and TGI
  • LLM推理后端性能大比拼,来自BentoML团队的深度评估:https://cloud.tencent.com/developer/article/2428575
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值