Skip to content

pandada8/llm-inference-benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LLM 推理服务吞吐测试

本仓库包含了测试常见推理服务的吞吐的代码,以及相关的测试结果。

硬件

阿里云 GPU 实例, 具体型号为 ecs.gn7i-c32g1.8xlarge

  • CPU: Intel(R) Xeon(R) Platinum 8369B CPU @ 2.90GHz * 32 vCPU
  • RAM: 188G
  • GPU: NVIDIA A10

测试的模型

Llama 2 系列:

  • TheBloke/Llama-2-7B-Chat-AWQ
  • TheBloke/Llama-2-7B-Chat-GPTQ
  • meta-llama/Llama-2-7b-chat-hf

Qwen 系列:

  • Qwen/Qwen-7B-Chat
  • Qwen/Qwen-7B-Chat-Int4
  • TheBloke/Qwen-7B-Chat-AWQ

Mistral 系列:

  • WIP

参测推理服务

  • vllm 支持 Qwen 系列模型的推理,支持 AWQ 量化方式。
  • vllm-gptq 为 vllm 添加了 GPTQ 支持,目前采用了 exllamav2 的 gptq kernel
  • text-generation-inference 没有千问的支持

压测方法

benchmark.py 为主要的压测脚本实现,实现了一个 naive 的 asyncio + ProcessPoolExecutor 的压测框架。

在发送请求时,目前基本为不做等待的直接并行发送请求,这可能无法利用好 PagedAttention 的节约显存的特性。在解读结果时可能需要读者注意。

对于不同的模型,Prompt 有一些调整,基本为让模型输出 0 ~ 100 的数字作为 benchmark。

results 文件夹下包含了脚本输出的原始的测试结果数据,可以利用 draw.ipynb 进行绘图。

结果

Llama2 7B

Qwen 7B

About

LLM 推理服务性能测试

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published