【问题标题】:Deep Sort uses a lot of CPU深度排序使用大量 CPU
【发布时间】:2020-12-02 00:06:53
【问题描述】:

我正在创建一个软件,它使用 OpenCV 在不同线程中读取多个摄像头,然后使用 YOLOv4 Tensorflow 模型在主线程中处理它们。这样,我的 GPU 在 gnome-system-monitor 中的运行容量约为 40%,而我的 CPU 内核也都在 30-40% 左右。

但是,当我集成 Deep sort 时,GPU 的使用率保持不变,但每个内核的 CPU 负载达到 100%。

我的问题是,这正常吗?深度排序主要在 CPU 上运行吗?

我正在初始化并运行深度排序,就像在这个 repo 文件中一样: https://github.com/theAIGuysCode/yolov4-deepsort/blob/9e745bfb3ea5e7c7505cb11a8e8654f5b1319ad9/object_tracker.py#L48

使用:

  • Ubuntu 18.04
  • Python 3.8
  • 张量流 2.3.1
  • OpenCV Python 4.4.0.44
  • CUDA 10.1.243、cuDNN 7.6.5 和驱动程序 418.152

规格工作站笔记本电脑:

  • NVIDIA RTX Quadro 5000
  • Intel® Xeon(R) E-2276M CPU @ 2.80GHz × 12
  • 32 GB 内存

【问题讨论】:

    标签: python tensorflow opencv yolo


    【解决方案1】:

    没有。这是不正常的。这是一个错误。检查我的回购以进行修复

    https://github.com/mikel-brostrom/Yolov5_DeepSort_Pytorch/issues/48

    您需要像这样为您的 HPC 库使用的 CPU 添加限制:

    # limit the number of cpus used by high performance libraries
    import os
    os.environ["OMP_NUM_THREADS"] = "1"
    os.environ["OPENBLAS_NUM_THREADS"] = "1"
    os.environ["MKL_NUM_THREADS"] = "1"
    os.environ["VECLIB_MAXIMUM_THREADS"] = "1"
    os.environ["NUMEXPR_NUM_THREADS"] = "1"
    

    【讨论】:

      猜你喜欢
      • 2011-05-17
      • 1970-01-01
      • 2011-04-01
      • 1970-01-01
      • 2012-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-10
      相关资源
      最近更新 更多