vllm减小显存 | vllm小模型大显存问题

INFO 07-16 20:48:26 model_runner.py:928] CUDA graphs can take additional 1~3 GiB memory per GPU. If you are running out of memory, consider decreasing `gpu_memory_utilization` or enforcing eager mode. You can also reduce the `max_num_seqs` as needed to decrease memory usage.

vllm日志输出的内容,你可以设置gpu_memory_utilizationmax_num_seqs来减少显存开销

  • --gpu-memory-utilization:模型执行器使用 GPU 内存的比例,范围从 0 到 1。例如,0.5 表示 GPU 内存使用率为 50%。如果未指定,将使用默认值 0.9。

    这也是为什么有时候你跑1.5b模型也会显存拉满

  • --max-model-len: 模型上下文长度。如果未指定,将自动从模型配置中导出。

实际测试也是如此,我使用下述命令,会报错cuda out of memory

python -m vllm.entrypoints.openai.api_server --model ./qwen2-72b-Instruct-GPTQ-Int4

但是当我设置max_num_seqs时,则可以在48g显存上运行:

python -m vllm.entrypoints.openai.api_server --model ./qwen2-72b-Instruct-GPTQ-Int4 --max-model-len 5000 

具体参数含义参考vllm-args文档

Logo

NVIDIA官方入驻,分享最新的官方资源以及活动/会议信息,精选收录AI相关技术内容,欢迎大家加入社区并参与讨论。

更多推荐