In Linux, CoreFreq is a professional tool for monitoring CPU. It is a CPU monitoring program for Intel 64-bit processors and supports Atom, Core2, Nehalem, SandyBridge, and AMD 0F families. CoreFreq is used to retrieve internal performance counters from each CPU core and works in conjunction with a daemon that collects the data. A small console client connects to the daemon and displays the collected data.
#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.
CoreFreq is a CPU monitoring program for Intel 64-bit processors and supports Atom, Core2, Nehalem, SandyBridge and above, as well as the AMD 0F family.
Its core is built on the kernel module for retrieving internal performance counters from each CPU core, and works with a daemon that collects the data, a small console client connects to the daemon and displays Collected data.
CoreFreq CPU Monitoring
It provides the basis for re-capturing CPU data with high accuracy:
Core frequencies and ratios; SpeedStep (EIST), Turbo Boost, Hyper-Threading (HTT), and base clock.
The performance counter combines the timestamp counter (TSC), non-stop core cycle (UCC), and non-stop reference cycle (URC).
Instructions per cycle or per second: IPS, IPC, or CPI.
CPU C status: C0 C1 C3 C6 C7 - C1E - Automatic/non-degraded for C1, C3.
DTS temperature with Tjunction Max, Thermal monitoring TM1, TM2 status.
Includes cache and application CPU topology maps for bootstrapping.
Processor characteristics, brand, architecture string.
Note: This tool is more suitable for expert Linux users and experienced system administrators, but novice users can learn how to use it step by step.
It is implemented by calling a Linux kernel module, which uses:
Assembly code keeps performance counter readings as close as possible.
Slab data memory affected by each CPU plus high-resolution timer.
Supports CPU suspend/resume and CPU hot plug.
Use shared memory to protect the kernel from damage from user space programs.
Use atomically synchronized threads to eliminate mutual exclusion and deadlocks.
To install CoreFreq, you first need to install dependent programs (development tools) to compile and build the program from source.
$ 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]
Next, clone the CoreFreq source code on Github, enter the download folder and compile the build program:
$ git clone https://github.com/cyring/CoreFreq.git $ cd CoreFreq $ make
Build the CoreFreq program
Note: Arch Linux users can install corefreq-git from the AUR.
Now run the following command to load the Linux kernel module from the local directory, and then run the daemon:
$ sudo insmod corefreqk.ko $ sudo ./corefreqd
Then start the client as a normal user.
$ ./corefreq-cli
CoreFreq Linux CPU Monitoring
使用 F2 显示屏幕顶部显示的使用菜单。
使用 右 和 左 箭头移动菜单选项卡。
使用 上和 下 箭头选择菜单项,然后单击回车。
使用 F4 关闭程序。
使用 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
相关推荐:《Linux视频教程》
The above is the detailed content of What is CoreFreq in linux. For more information, please follow other related articles on the PHP Chinese website!