ShawnALiu

Results 9 comments of ShawnALiu

> 可能我没注意。 重命名一下文件应该就行了 好的,谢谢大佬

> 我解决了,之前安装的是paddle 2.6.0-post 117 后面换成了最新的paddle 3.0.0 b2 cu118版本的(我的显卡驱动最高支持到12.1 paddle官方还有个cu123的 那个没试过) 然后之前的现象是 我解析一批pdf shape 各不相同 最大长边应该在2000左右 ,然后我的检测最长边设置的是min 736 ,但是理论上说2000左右的最长边 最大显存开销应该不大,但是很奇怪 ,在推理了好几个不同的pdf后 显存涨到了15个 g左右, 然后我换了paddle3.0.0 b2版本后 先保持min 736不变 然后讲一张4000×4000的图拿进去推理 经过det与rec 观测到显存来到4g左右 ,接下来我根据2.6.0版本paddle...

(1)paddleocr=2.8.1、paddlepaddle-gpu=2.6.1,显存一直增长。 (2)paddleocr=2.7.3、paddlepaddle-gpu=2.6.1,显存一直增长。 (3)paddleocr=2.8.1、paddlepaddle-gpu=3.0.0b2,显存一直增长,但是增长幅度较小,每次增长0.1~0.14G左右,已经跑了2天,显存增长了2.5G左右,还在继续观察。另外,我开了一个服务,里面把ocr部分关掉,显存稳定了,不会增长,已经运行半天,还在继续观察。 (4)接下来尝试一下,paddleocr=2.7.3、paddlepaddle-gpu=3.0.0b2,希望能解决问题吧。。。。

> 我这用2.8.1的,内存也是只增不减,一直崩溃 现在解决了吗?

> @ShawnALiu 你的ocr检测设置里,图片的大小上线设置的是多少,目前我的paddle版本是3.0.0b2,有部分显存增长是正常的,理论上跟paddleocr版本是无关的,跟paddlepaddle核心有关,给你举个例子再说下 paddleocr默认的是max 960 也就是说超过960分辨率的图片会resize到960进行推理 (当然如果你设置的是min,那么随着推理图片大小的变化,显存肯定是会慢慢往上涨的,并且输入足够大的图后会直接oom,并且oom后这部分显存不会释放出来),我设置的是2048(为了适应某些输入分辨率较大的图片,如果默认是960,本来原图就大,resize后目标就更小了,所以设置的是2048),当我输入图片一开始是1000分辨率左右的时候显存会增加(显存会初始化一部分,然后第一次推理进来会增加,这个时候输入一部分低于1000分辨率的图显存不变),然后我输入超过2048分辨率的图片后,显存也会增加(因为图片超过了1000分辨率,超过的部分显存会继续cache增加),当我继续输入图片并且图片分辨率超过2048后显存不会再增加了(因为设置了max,无论多大都会resize到2048,并且输入低于2048分辨率的图也不会造成显存增加了),目前是比较稳定的,这也跟深度学习的推理原理是吻合的,只要设置了上限,不管你图片有多大有多小,显存应该都是稳定不变的了,只要你输入有一次超过了你设置max上限后, 显存就会cache这部分的size,理论上不会再增加了,你可以再多测测。 ---- 谢谢你举得例子,是符合认知的,我的使用场景比较复杂,我开了n个进程,每个进程里初始化了1个paddleocr。 以下是我的初始化方式: PAD_OCR = PaddleOCR(det_model_dir=det_model_dir, rec_model_dir=rec_model_dir, cls_model_dir=cls_model_dir, det_limit_side_len=det_limit_side_len, show_log=False, use_gpu=True) 其中 det_limit_side_len当前设置为960,可以作为配置项,自行调整。由于参考文档里det_limit_type默认为max,因此我并没有在初始化时设置。 ![image](https://github.com/user-attachments/assets/d4d115bb-222b-4001-a7a2-a5c8b0231b74) 以下是我的使用方式: lines = pad_ocr.ocr(img_rgb, det=True, rec=True, cls=False) 目前运行2天,每过几个小时,显存会有0.1~0.15左右的增长,还不知道会不会增长到一定程度就稳定,现在已经9小时没有增长可,算是好消息吧。

> 你的增长有可能是每个进程处理图片不一样导致的呢,应该是当每个进程都接收了超过max 960的图片后 所有的总显存是不会再变化才对 是的,为了验证这个,我重新起了1个服务,只开1个进程,去处理图片,看看最终显存变化。

> 我也遇到了此类的情况,请问目前除了更改版本外有其他的解决方式吗 我的还是会爆显存,没有解决问题

> paddle框架换成3.0呢 (1)paddleocr=2.8.1、paddlepaddle-gpu=2.6.1,显存一直增长。 (2)paddleocr=2.7.3、paddlepaddle-gpu=2.6.1,显存一直增长。 (3)paddleocr=2.8.1、paddlepaddle-gpu=3.0.0b2,显存一直增长,但是增长幅度较小,每次增长0.1~0.14G左右,已经跑了2天,显存增长了2.5G左右,还在继续观察。另外,我开了一个服务,里面把ocr部分关掉,显存稳定了,不会增长,已经运行半天,还在继续观察。 求求你们把这个问题解决了吧。

还是存在显存不断增长的情况嚯,3.5号2.01G增长到3.12号2.38G。 ![Image](https://github.com/user-attachments/assets/b41268cc-7e44-4a7e-83d7-41be05fd39c7) 另外,使用的ppocr-v4,识别结果和paddleocr的有点差异,但是没有大量去测试,博主有相关的精度测试工作吗?