Skip to content

PaddleOCR-VL循环predict请求时内存增加不释放问题 #4753

@fhkankan

Description

@fhkankan

Checklist:

描述问题

addleOCR-VL采用vllm部署后,300多张图片循环请求predict时,出现内存由2G占用不断增加到10G不释放,是否存在内存泄漏?如何改善?

客户端和服务端是k8s中的一个pod,2个容器,每个容器都用了一张A100的卡。

发现客户端的内存增长不释放,客户端的容器内,使用nvidia-smi看了下GPU是有资源使用的(由此可知是正常使用了显存,非用内存替代))

实测,在predict后加gc.collect(),上涨降低(2G到6G),但是还是逐个累加

复现

from paddleocr import PaddleOCRVL

pipeline = PaddleOCRVL(
    layout_detection_model_name="PP-DocLayoutV2",
    layout_deteection_model_dir="/models/PP-DocLayoutV2",
    vl_rec_backend="vllm-server",
    vl_rec_server_url="http://127.0.0.1:8000/v1",
)

async def parse_file(file_base64):
    result = pipeline.predict(file_base64)
    result = [res.json for res in result]
    return result

环境

  1. 请提供您使用的PaddlePaddle和PaddleX的版本号
    paddlepaddle-gpu==3.2.1

  2. 请提供您使用的操作系统信息,如Linux/Windows/MacOS
    linux

  3. 请问您使用的Python版本是?
    python=3.12

  4. 请问您使用的CUDA/cuDNN的版本号是?
    CUDA=12.2

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions