如何在nvidia-smi中定义GPU和内存利用率?

ffl*_*wer 7 cuda gpu nvidia

我目前正在使用nvidia的驱动程序'nvidia-smi'附带的工具在GPU上进行性能监控.当我们使用'nvidia-smi -a'时,它将提供当前GPU信息的信息,包括GPU核心和内存使用情况,温度等,如下所示:

============== NVSMI LOG ==============

时间戳:星期二

2011年2月22日22:39:09

驱动程序版本:260.19.26

GPU 0:

    Product Name            : GeForce 8800 GTX
    PCI Device/Vendor ID    : 19110de
    PCI Location ID         : 0:4:0
    Board Serial            : 211561763875
    Display                 : Connected
    Temperature             : 55 C
    Fan Speed               : 47%
    Utilization
        GPU                 : 1%
        Memory              : 0%
Run Code Online (Sandbox Code Playgroud)

我很好奇GPU和内存利用率是如何定义的?例如,GPU核心的利用率为47%.这意味着有47%的SM正在运作?或者所有GPU核心在47%的时间内忙碌而闲置其他53%的时间?对于内存,利用率是指当前带宽与最大带宽之间的比率,还是上次时间单位的繁忙时间比率?

Mat*_*att 5

一个岗位由NVIDIA的论坛版主说的GPU利用率和内存利用率数字是根据过去的第二个活动:

GPU忙碌实际上是SM忙碌的最后一秒的时间百分比,内存利用率实际上是最后一秒内使用的带宽百分比.下一版本附带完整内存消耗统计信息.

  • 更具体地说:GPU忙是**任何**SM忙碌的最后一秒的时间百分比,内存利用率实际上是内存控制器**在最后一个忙的**时间的百分比第二.只需在单个SM上运行内核并在PCI-E上来回传输1个字节,就可以将利用率保持在100%附近.利用率不是"你使用资源的程度如何"统计数据,而是"如果你正在使用资源". (4认同)
  • @PrzemyslawZych那么我怎样才能获得真正的GPU使用率,就像SM总数中的活跃SM数量一样? (2认同)
  • @dizcza 那么我们谈论的不是监控而是分析,为此我建议从 NVIDIA Visual Profiler 等开始。 (2认同)