CoreFreq:一款强大的监控 CPU 的专业工具
创始人
2024-03-01 18:55:48
0次

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

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

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,你首先需要安装依赖程序(开发工具)来编译并从源码构建程序。

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

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

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

Build CoreFreq Program

构建 CoreFreq 程序

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

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

$ sudo insmod corefreqk.ko
$ sudo ./corefreqd

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

$ ./corefreq-cli

CoreFreq Linux CPU Monitoring

CoreFreq Linux CPU 监控

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

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

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

$ ./corefreq-cli -h

CoreFreq 选项:

CoreFreq.  Copyright (C) 2015-2017 CYRIL INGENIERIE
usage:  corefreq-cli [-option ]
-t  Show Top (default)
-d  Show Dashboard
arguments:    
-c  Monitor Counters
-i  Monitor Instructions
-s  Print System Information
-M  Print Memory Controller
-m  Print Topology
-u  Print CPUID
-k  Print Kernel
-h  Print out this message
Exit status:
0   if OK,
1   if problems,
>1  if serious trouble.
Report bugs to labs[at]cyring.fr

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

$ ./corefreq-cli -k

打印 CPU 细节信息:

$ ./corefreq-cli -u

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

$ ./corefreq-cli -i

如下启用计数器追踪:

$ ./corefreq-cli -c

有关更多信息和用法,请访问 CoreFreq 的 Github 仓库:https://github.com/cyring/CoreFreq 。

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

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


作者简介:

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


via: http://www.tecmint.com/corefreq-linux-cpu-monitoring-tool/

作者:Aaron Kili 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...