webtet 发表于 2018-6-22 07:57:41

Windows系统 CPU使用率的计算

  线程级别CPU使用率监控
  说明:在一台双CPU的主机上监控一个包含一个空循环子线程的一个进程。其中每一组数据的格式为:
  进程:进程CPU使用率
  线程ID:CPU使用率
  测试数据:
  第1组数据:
  进程:50
  452:0
  3680:50
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第2组数据:
  进程:48
  452:0
  3680:48
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第3组数据:
  进程:49
  452:0
  3680:49
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第4组数据:
  进程:50
  452:0
  3680:50
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第5组数据:
  进程:50
  452:0
  3680:50
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第6组数据:
  进程:49
  452:0
  3680:49
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第7组数据:
  进程:48
  452:0
  3680:48
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第8组数据:
  进程:49
  452:0
  3680:49
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第9组数据:
  进程:50
  452:0
  3680:50
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第10组数据:
  进程:48
  452:0
  3680:48
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第11组数据:
  进程:49
  452:0
  3680:49
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  第12组数据:
  进程:49
  452:0
  3680:49
  1712:0
  3620:0
  2860:0
  3000:0
  3800:0
  2112:0
  740:0
  2208:0
  
  数据分析:
  1.监控时所取得采样周期为1s,因为这个值与任务管理器的刷新频率一致。
  2.根据测试用例的的特殊性,被监控进程的CPU使用率在双CPU环境下被监控进程的CPU使用率的理论值应该为50%。
  3.根据测试用例的的特殊性,被监控进程的理论上应该是包含一个CPU使用率接近50%,而其他线程的CPU使用率接近0。
  4.由以上实际的测试数据,可以知道被监控进程的实际CPU使用率与理论值基本一致;
  5.根据以上测试数据,可知进程中各线程CPU使用率以及进程的CPU用率也符合理论上的分析,都是一个线程的CPU使用率接近50%,而其他线程的CPU使用率接近0;
  补充说明:
  1.有关总的CPU使用率监控,由于采集到的数据不具备可比性,所以只能人工的在测试的时候对比程序得到的总的CPU使用率和由任务管理器中得到的CPU使用率。对比的结论是:基本上与任务管理器中得到的数据一致的。
  2.同理有关进程CPU使用率的监控,也只能人工的通过对比程序得到的进程CPU使用率和任务管理器以及JConsole中的数据。对比的结论是:基本上与任务管理器和JConsole中得到的数据一致的。
  3.在运行Windows平台下有关CPU使用率的监控功能,得将Win32CpuTimeUtil.dll这个动态链接库放到java.library.path目录之下。其中Win32CpuTimeUtil.dll使用C语言实现的。
页: [1]
查看完整版本: Windows系统 CPU使用率的计算