CoreFreq:一款強大的監控 CPU 的專業工具
CoreFreq 是一個用於英特爾 64 位處理器的 CPU 監控程序,並且支持 Atom、Core2、Nehalem、SandyBridge 及以上、還有 AMD 0F 家族。
它的核心建立在內核模塊上,用於從每個 CPU 核心檢索內部性能計數器,並且與收集數據的守護進程一起工作,一個小型控製台客戶端連接到該守護程序並顯示收集的數據。
CoreFreq CPU Monitoring
它提供了高精度的重新捕獲 CPU 數據的基礎工作:
- 核心頻率和比率;SpeedStep(EIST)、Turbo Boost、超線程(HTT)以及基本時鍾Base Clock。
- 性能計數器結合時間戳計數器Time Stamp Counter(TSC)、非停機核心周期Unhalted Core Cycles(UCC)、非停機引用周期Unhalted Reference Cycles(URC)。
- 每周期或每秒的指令數:IPS、IPC 或 CPI。
- CPU C 狀態: C0 C1 C3 C6 C7 - C1E - C1、C3 的自動/非降級UnDemotion。
- 帶有 Tjunction Max 的 DTS 溫度、熱監測Thermal Monitoring TM1、TM2 狀態。
- 包括用於自舉的高速緩存和應用程序 CPU 拓撲圖。
- 處理器特性、品牌、架構字符串。
注意:此工具更適用於 Linux 專家用戶和經驗豐富的係統管理員,但新手用戶可以逐步學習如何使用它。
CoreFreq 如何工作
它通過調用一個 Linux 內核模塊實現,它使用了:
- 匯編代碼保持盡可能接近性能計數器讀數。
- 按每個 CPU 影響的 slab 數據內存加上高分辨率定時器。
- 支持 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
構建 CoreFreq 程序
注意:Arch Linux 用戶可以從 AUR 中安裝 corefreq-git。
現在運行以下命令從本地目錄加載 Linux 內核模塊,接著運行守護程序:
$ sudo insmod corefreqk.ko
$ sudo ./corefreqd
接著使用普通用戶啟動客戶端。
$ ./corefreq-cli
CoreFreq Linux CPU 監控
在上麵的界麵中,你可以使用這些快捷鍵:
- 使用
F2
顯示屏幕頂部顯示的使用菜單。 - 使用
右
和左
箭頭移動菜單選項卡。 - 使用
上
和下
箭頭選擇菜單項,然後單擊回車。 - 使用
F4
關閉程序。 - 使用
h
打開快速參考。
要查看所有的使用選項,請輸入以下命令:
$ ./corefreq-cli -h
CoreFreq 選項:
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
原文發布時間為:2017-02-26
本文來自雲棲社區合作夥伴“Linux中國”
最後更新:2017-05-25 18:02:31