CoreFreq:一款监控CPU的强大专业工具

简介:

CoreFreq:一款监控 CPU 的强大专业工具

CoreFreq 是一个用于英特尔 64 位处理器的 CPU 监控程序,并且支持 Atom、Core2、Nehalem、SandyBridge 及以上、还有 AMD 0F 家族。

它的核心建立在内核模块上,用于从每个 CPU 核心检索内部性能计数器,并且与收集数据的守护进程一起工作,一个小型控制台客户端连接到该守护程序并显示收集的数据。 

CoreFreq CPU Monitoring

CoreFreq CPU Monitoring

它提供了高精度的重新捕获 CPU 数据的基础工作:

  1. 核心频率和比率;SpeedStep(EIST)、Turbo Boost、超线程(HTT)以及基本时钟(Base Clock)。
  2. 性能计数器结合时间戳计数器(Time Stamp Counter)(TSC)、非停机核心周期(Unhalted Core Cycles)(UCC)、非停机引用周期(Unhalted Reference Cycles)(URC)。
  3. 每周期或每秒的指令数:IPS、IPC 或 CPI。
  4. CPU C 状态: C0 C1 C3 C6 C7 - C1E - C1、C3 的自动/非降级(UnDemotion)。
  5. 带有 Tjunction Max 的 DTS 温度、热监测(Thermal Monitoring) TM1、TM2 状态。
  6. 包括用于自举的高速缓存和应用程序 CPU 拓扑图。
  7. 处理器特性、品牌、架构字符串。

注意:此工具更适用于 Linux 专家用户和经验丰富的系统管理员,但新手用户可以逐步学习如何使用它。

CoreFreq 如何工作

它通过调用一个 Linux 内核模块实现,它使用了:

  1. 汇编代码保持尽可能接近性能计数器读数。
  2. 按每个 CPU 影响的 slab 数据内存加上高分辨率定时器。
  3. 支持 CPU 暂停/恢复和 CPU 热插拔。
  4. 使用共享内存来保护内核免受来自用户空间程序的损害。
  5. 使用原子级同步的线程来消除互斥和死锁。

如何在 Linux 中安装 CoreFreq

要安装 CoreFreq,你首先需要安装依赖程序(开发工具)来编译并从源码构建程序。

 
 
  1. $ sudo yum group install 'Development Tools'           [On CentOS/RHEL] 
  2. $ sudo dnf  group install 'Development Tools'          [On Fedora 22+ Versions] 
  3. # sudo apt-get install dkms git libpthread-stubs0-dev  [On Debian/Ubuntu]  

接下来克隆 Github 上 CoreFreq 源码,进入下载文件夹并编译构建程序:

 
 
  1. $ git clone https://github.com/cyring/CoreFreq.git 
  2. $ cd CoreFreq 
  3. $ make   

构建 CoreFreq 程序

构建 CoreFreq 程序

注意:Arch Linux 用户可以从 AUR 中安装 corefreq-git。

现在运行以下命令从本地目录加载 Linux 内核模块,接着运行守护程序:

 
 
  1. $ sudo insmod corefreqk.ko 
  2. $ sudo ./corefreqd 

接着使用普通用户启动客户端。

 
 
  1. $ ./corefreq-cli  

CoreFreq Linux CPU 监控

CoreFreq Linux CPU 监控

在上面的界面中,你可以使用这些快捷键:

  1. 使用 F2 显示屏幕顶部显示的使用菜单。
  2. 使用 右 和 左 箭头移动菜单选项卡。
  3. 使用 上和 下 箭头选择菜单项,然后单击回车。
  4. 使用 F4 关闭程序。
  5. 使用 h 打开快速参考。

要查看所有的使用选项,请输入以下命令:

 
 
  1. $ ./corefreq-cli -h 

CoreFreq 选项:

 
 
  1. CoreFreq.  Copyright (C) 2015-2017 CYRIL INGENIERIE 
  2. usage:  corefreq-cli [-option <arguments>] 
  3. -t  Show Top (default
  4. -d  Show Dashboard 
  5. arguments: <left> <top> <marginWidth> <marginHeight> 
  6. -c  Monitor Counters 
  7. -i  Monitor Instructions 
  8. -s  Print System Information 
  9. -M  Print Memory Controller 
  10. -m  Print Topology 
  11. -u  Print CPUID 
  12. -k  Print Kernel 
  13. -h  Print out this message 
  14. Exit status: 
  15. 0   if OK, 
  16. 1   if problems, 
  17. >1  if serious trouble. 
  18. Report bugs to labs[at]cyring.fr 

要打印内核的信息,运行:

 
 
  1. $ ./corefreq-cli -k 

打印 CPU 细节信息:

 
 
  1. $ ./corefreq-cli -u 

你也可以实时监控 CPU 指令:

 
 
  1. $ ./corefreq-cli -i 

如下启用计数器追踪:

 
 
  1. $ ./corefreq-cli -c 


在本文中,我们评估了一个强大的 CPU 监控工具,这对于 Linux 专家或经验丰富的系统管理员来说可能比新手用户更有用。

通过下面的评论栏与我们分享你对这个工具或任何相关的想法。

作者简介:

Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux 系统管理员和网络开发人员,目前是 TecMint 的内容创作者,他喜欢用电脑工作,并坚信分享知识。





作者:Aaron Kili
来源:51CTO
目录
相关文章
|
1月前
|
监控 Linux 测试技术
【 C/C++ 性能分析工具 CPU 采样分析器 perf 】掀开Linux perf性能分析的神秘面纱
【 C/C++ 性能分析工具 CPU 采样分析器 perf 】掀开Linux perf性能分析的神秘面纱
63 0
|
6月前
|
监控 Ubuntu 数据可视化
如何使用各种工具和命令来检查 Ubuntu 中的 CPU 使用情况?
如何使用各种工具和命令来检查 Ubuntu 中的 CPU 使用情况?
371 0
如何使用各种工具和命令来检查 Ubuntu 中的 CPU 使用情况?
|
3月前
|
监控 Ubuntu
百度搜索:蓝易云【如何使用各种工具和命令来检查Ubuntu中的CPU使用情况?】
这些工具和命令可以帮助你实时监控和检查Ubuntu系统中的CPU使用情况。你可以根据需要选择合适的工具来查看CPU使用情况,并根据情况采取相应的措施来优化系统性能。
58 1
|
8月前
|
监控 小程序
利用PowerShell写的一个CPU监控小程序
业务部门需要,所以写的一个CPU监控小程序,有窗口显示,同时会在当前目录生成日志,有需要的自取,复制代码,TXT另存为xx.ps1即可。 仅供学习交流。
125 0
|
4月前
|
传感器 监控 Linux
Linux|奇怪的知识---CPU温度监控
Linux|奇怪的知识---CPU温度监控
97 0
|
10月前
|
监控 Python
【python】实现cpu/内存监控的功能(非常简单)
【python】实现cpu/内存监控的功能(非常简单)
429 0
|
10月前
|
存储 监控 Linux
windows下cpu和性能指标监控Top10的实现
windows下cpu和性能指标监控Top10的实现
windows下cpu和性能指标监控Top10的实现
|
4月前
|
监控 数据可视化 Java
双CPU监控的目的以及主流编程语言实现代码示例
监控CPU使用率可以帮助检测系统瓶颈和性能问题,有助于及时识别并解决故障。
421 2
|
5月前
|
监控 调度 Python
电脑监控软件所含的CPU资源监控的代码(使用psutil库)
本文使用psutil库来获取CPU使用率、运行的进程、CPU温度、风扇速度和CPU核心的工作情况。这些信息可用于自定义电脑监控软件的CPU资源监控功能
484 1
|
8月前
|
存储 开发工具 Python
Pyside6-QtCharts+psutil实战-绘制一个CPU监测工具
Pyside6-QtCharts+psutil实战-绘制一个CPU监测工具
170 0

热门文章

最新文章