Parallel processing GPU MHZ利用率

Parallel processing GPU MHZ利用率,parallel-processing,cuda,gpu,nvidia,nvml,Parallel Processing,Cuda,Gpu,Nvidia,Nvml,我正在为GPU卡开发一个监控代理,它能够使用CUDA和NVML库提供实时遥测 我想了解更多关于GPU内核操作与Intel/AMD CPU内核工作原理的信息 可用于CPU的一个公式是(cpumhz或工作负载平均峰值CPU利用率(MHz)),如下所示: ((CPUSPEED * CORES) /100) * CPULOAD = Workload average peak CPU utilization 更多细节在这里 那么,同样的公式可以应用于GPU是否正确呢。例外情况是CUDA cores/S

我正在为GPU卡开发一个监控代理,它能够使用CUDA和NVML库提供实时遥测

我想了解更多关于GPU内核操作与Intel/AMD CPU内核工作原理的信息

可用于CPU的一个公式是(cpumhz或工作负载平均峰值CPU利用率(MHz)),如下所示:

((CPUSPEED * CORES) /100) * CPULOAD = Workload average peak CPU utilization
更多细节在这里

那么,同样的公式可以应用于GPU是否正确呢。例外情况是CUDA cores/Shader代替了“cores”,或者我可以将当前时钟速度乘以实际gpu时钟使用量,因为gpu的1000个cores/Shader有一个core时钟

例如:

((GRAPHICS_MHZ * CUDA_CORES) /100) * GPU_LOAD = GPU MHZ utilization
请查看,它是nvidia smi的包装


而且,它可以获取GPU的最大电流相对负载

我想我找到了基于GPU卡工作原理的答案。由于每个内核都是并行运行的,所以它们的工作效率比我读到的CPU内核要高很多

对于CPU核心,您可以使用上述公式,但如果您希望看到gpu卡上使用的mhz,您可以简单地使用:

(GRAPHICS_MHZ * /100) * GPU_LOAD = GPU MHZ utilization

好的方面是,您得到的GPU负载与您从CPU卡得到的计算结果不同,GPU卡提供的计算结果也不同。如果有人有不同的意见,我很乐意听听。

您好,谢谢您的回复。我知道如何获得gpuload和内存负载。我试图验证我对gpu内核如何工作和cpu内核的理解,当你想知道基于gpu负载和当前图形mhz消耗了多少mhz利用率时。我可以生成这样的数据:`“gpu图形处理器时钟频率”:139,“gpu图形处理器负载”:76,“gpu内存带宽”:192.192,“gpu内存带宽使用”:19.44,“gpu内存总线”:192,“gpu内存时钟频率”:405,“gpu内存加载”:46,“gpu内存总量”:3072,“gpu内存使用”:262.49`我会检查这些工具;-)对于GPU,您可以使用SM利用率或SM调度程序(SMSP)作为(SM[sp]\uuuuuu活动\u周期/SM[sp]\uuuuu已用\u周期*100)。已用\u周期除以GPU时间\u持续时间即为SM时钟频率。给出的度量名称是PerfWorks度量。类似信息可通过CUPTI SDK收集,但仅限于单个CUDA上下文。我相信对于所有的NVIDIA GPU,NVIDIA smi将报告单线程内核发布的100%利用率。