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

Yolov8未调用CUDA求助:已装CUDA12.1,如何让模型用GPU/VRAM

YOLOv8 调用 GPU 及 VRAM 的配置与验证

核心修正与验证步骤

  • 简化GPU设置:你的代码中model.to("cuda")和predict(device="cuda")属于重复设置,只需在predict方法中指定device="cuda"即可,YOLOv8会自动完成模型与推理数据的GPU加载:

    from ultralytics import YOLO
    model = YOLO('yolov8n.pt')
    results = model.predict(source="videoplayback.mp4", show=True, device="cuda")
    
  • 确认GPU运行状态:添加以下代码验证模型和推理结果是否确实在GPU上:

    # 查看模型所在设备
    print(f"Model device: {model.device}")
    # 查看单条推理结果的设备
    print(f"Result device: {results[0].device}")
    

    正常输出应为cuda:0,说明GPU已被正确调用。

  • 验证VRAM占用情况:

    • 命令行方式:执行nvidia-smi(Windows/Linux通用),查看Used GPU Memory列数值,推理过程中该数值会明显上升。
    • 代码内统计:在推理前后添加显存监控代码:
      import torch
      # 推理前已分配显存
      print(f"Pre-inference allocated memory: {torch.cuda.memory_allocated()/1024**2:.2f} MB")
      results = model.predict(source="videoplayback.mp4", show=True, device="cuda")
      # 推理后已分配显存
      print(f"Post-inference allocated memory: {torch.cuda.memory_allocated()/1024**2:.2f} MB")
      # 推理后显存预留总量
      print(f"Post-inference reserved memory: {torch.cuda.memory_reserved()/1024**2:.2f} MB")
      

常见问题排查

  • 若未使用GPU:确认ultralytics与torch版本适配,CUDA 12.1需搭配支持该版本的PyTorch(建议安装2.0及以上版本)。
  • VRAM占用过低:可能是视频分辨率低或模型规格过小(如yolov8n是最小量级模型),可尝试切换yolov8s/m/l/x等更大模型提升显存利用率。

内容的提问来源于stack exchange,提问作者Erik Orosz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 12:50:02