You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mediapipe==0.10.9如何调用GPU加速?CUDA利用率为0求助

解决CUDA利用率为0及Mediapipe GPU加速问题

一、先盯紧环境版本匹配

  • TF2.10.0必须搭配CUDA 11.2和CuDNN 8.1.x,版本差一点都可能导致GPU只被识别但不实际干活。别只看能检测到CUDA,得严格对应版本号。
  • 检查系统环境变量:Windows下确认CUDA_PATH指向正确版本,PATH里包含CUDA的bin目录;Linux要确保LD_LIBRARY_PATH包含CuDNN的库路径,避免被其他版本的CUDA覆盖。

二、验证TF/Torch是否真能调用GPU

  • TensorFlow测试代码:
    import tensorflow as tf
    print(tf.config.list_physical_devices('GPU'))
    print(tf.test.is_gpu_available())
    # 运行简单GPU运算看设备
    a = tf.random.normal([1000,1000])
    b = tf.random.normal([1000,1000])
    c = tf.matmul(a,b)
    print(c.device)
    
    输出/GPU:0才算TF能正常调用GPU,否则得重新调整环境。
  • PyTorch测试代码:
    import torch
    print(torch.cuda.is_available())
    print(torch.cuda.device_count())
    # 测试GPU运算
    x = torch.randn(1000,1000).cuda()
    y = torch.randn(1000,1000).cuda()
    z = torch.matmul(x,y)
    print(z.device)
    
    输出cuda:0才是正常状态,否则排查环境配置问题。

三、Mediapipe GPU加速的核心配置

  • 安装正确的包:必须装mediapipe-gpu,而非默认的mediapipe(CPU版)。直接执行pip install mediapipe-gpu,版本不兼容时可指定具体版本,比如mediapipe-gpu==0.9.1.0。
  • 初始化时强制启用GPU:
    import mediapipe as mp
    mp_hands = mp.solutions.hands
    hands = mp_hands.Hands(
        static_image_mode=False,
        max_num_hands=2,
        min_detection_confidence=0.5,
        min_tracking_confidence=0.5,
        model_complexity=1,
        # 关键:指定使用GPU设备
        device=mp.tasks.BaseOptions.Device.GPU
    )
    
    人脸检测、姿态估计等其他Mediapipe任务同理,初始化时必须添加device=mp.tasks.BaseOptions.Device.GPU,否则默认用CPU。
  • 减少数据跨设备传输:输入图像尽量按Mediapipe要求的格式直接传入,避免在CPU和GPU之间频繁拷贝数据,批量处理时一次性将数据喂给GPU。

四、系统层面的GPU状态排查

  • 检查GPU是否被占用:用nvidia-smi命令(Windows/Linux通用)查看当前GPU使用率和运行进程,关闭占用GPU的其他程序(如游戏、其他AI训练进程)。
  • 确认显存是否充足:如果模型所需显存超过GPU剩余显存,TF/Torch会自动切换到CPU运行,导致利用率为0。用nvidia-smi查看显存使用情况,不够的话就缩小输入图像尺寸,或者把Mediapipe的model_complexity从2降到1甚至0,能大幅减少显存占用。

内容的提问来源于stack exchange,提问作者cong zeming

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 11:21:27