CoreFreq - 适用于 Linux 系统的强大 CPU 监控工具
CoreFreq是一款针对Intel 64位处理器的CPU监控程序,支持Atom、Core2、Nehalem、SandyBridge及以上、AMD Family 0F等架构。
其核心建立在内核模块上,该模块有助于从每个 CPU 内核检索内部性能计数器,并与收集数据的守护程序和链接到守护程序并显示收集的数据的小型控制台客户端相关联。
它为高精度地重新捕获 CPU 数据提供了基础:
- 核心频率和比率; SpeedStep (EIST)、Turbo Boost、超线程 (HTT) 以及基础时钟。
- 性能计数器与时间戳计数器 (TSC)、未暂停核心周期 (UCC)、未暂停参考周期 (URC) 结合使用。
- 每周期或每秒的指令数、IPS、IPC 或 CPI。
- CPU C 状态 C0 C1 C3 C6 C7 – C1E – C1 C3 自动/取消降级。
- DTS 温度以及 Tjunction Max、热监控 TM1 TM2 状态。
- 拓扑图,包括用于 boostrap 的缓存以及应用程序 CPU。
- 处理器功能、品牌加架构字符串。
注意:这个工具对于 Linux 专家和经验丰富的系统管理员来说更有用、更合适,但是新手用户可以逐渐学习如何有目的地使用它。
CoreFreq 的工作原理
它通过调用 Linux 内核模块来运行,然后使用:
- asm 代码以保持性能计数器的读数尽可能接近。
- 每个 CPU,效果板数据存储器加上高分辨率计时器。
- 符合挂起/恢复和 CPU 热插拔要求。
- 共享内存,用于保护内核免受程序用户空间部分的影响。
- 线程的原子同步可以消除互斥体和死锁。
如何在 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
注意:Arch Linux 用户可以从 AUR 安装 corefreq-git。
现在运行以下命令从本地目录加载 Linux 内核模块,然后运行守护程序:
sudo insmod corefreqk.ko
sudo ./corefreqd
然后,以用户身份启动客户端。
./corefreq-cli
在上面的界面中,您可以使用快捷键:
F2
显示使用菜单,如屏幕顶部所示。右
和左
箭头可在菜单选项卡上移动。- 使用
向上
和向下
箭头选择菜单项,然后单击[Enter]。 F4
将关闭程序。h
将打开快速参考。
要查看所有使用选项,请键入以下命令:
./corefreq-cli -h
CoreFreq. Copyright (C) 2015-2017 CYRIL INGENIERIE
usage: corefreq-cli [-option <arguments>]
-t Show Top (default)
-d Show Dashboard
arguments: <left> <top> <marginWidth> <marginHeight>
-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 专家或经验丰富的系统管理员可能更有用。
通过下面的反馈表与我们分享您对此命令工具的想法或任何相关想法。