PaddleOCR infer 指定 gpu device 的问题

thtygnil  于 2023-02-04  发布在  其他
关注(0)|答案(2)|浏览(599)

请教一下
用 gpu 运行下面代码的时候,发现永远运行在 device 0 上

ocr = PaddleOCR(use_gpu=True, ...)
ocr.ocr(img)

是不是因为这段代码
PaddleOCR/tools/infer/utility.py

Lines 161 to 167 in 8b3b787

| | ifargs.use_gpu: |
| | gpu_id=get_infer_gpuid() |
| | ifgpu_idisNone: |
| | raiseValueError( |
| | "Not found GPU in current device. Please check your device or set args.use_gpu as False" |
| | ) |
| | config.enable_use_gpu(args.gpu_mem, 0) |

设置 device_id 永远是 0 导致的?

可以有什么方法手动设置 device 吗?谢谢

nkhmeac6

nkhmeac61#

可以有什么方法手动设置 device 吗?谢谢

需要设置环境变量CUDA_VISIBLE_DEVICES,比如在1号GPU上运行
export CUDA_VISIBLE_DEVICES=1
python inference.py ....

vwkv1x7d

vwkv1x7d2#

设置 CUDA_VISIBLE_DEVICES=1 确实可以让 get_infer_gpuid() 返回 1

但是如上面贴的代码 (PaddleOCR/tools/infer/utility.py:167)
config.enable_use_gpu(args.gpu_mem, 0)
这里参数写死了使用的 device 是 0,这会导致始终使用 0 卡

相关问题