在 Linux 上監控 CPU 和 GPU 溫度

Alejandro Egea-abellán發表於2019-06-02

本篇文章討論了在 Linux 命令列中監控 CPU 和 GPU 溫度的兩種簡單方式。

由於 Steam(包括 Steam Play,即 Proton)和一些其他的發展,GNU/Linux 正在成為越來越多計算機使用者的日常遊戲平臺的選擇。也有相當一部分使用者在遇到像影片編輯或圖形設計等(Kdenlive 和 Blender 是這類應用程式中很好的例子)資源消耗型計算任務時,也會使用 GNU/Linux。

不管你是否是這些使用者中的一員或其他使用者,你也一定想知道你的電腦 CPU 和 GPU 能有多熱(如果你想要超頻的話更會如此)。如果是這樣,那麼繼續讀下去。我們會介紹兩個非常簡單的命令來監控 CPU 和 GPU 溫度。

我的裝置包括一臺 Slimbook Kymera 和兩臺顯示器(一臺 TV 和一臺 PC 監視器),使得我可以用一臺來玩遊戲,另一臺來留意監控溫度。另外,因為我使用 Zorin OS,我會將關注點放在 Ubuntu 和 Ubuntu 的衍生發行版上。

為了監控 CPU 和 GPU 的行為,我們將利用實用的 watch 命令在每幾秒鐘之後動態地得到讀數。

在 Linux 中監控 CPU 溫度

對於 CPU 溫度,我們將結合使用 watchsensors 命令。一篇關於此工具的圖形使用者介面版本的有趣文章已經在 It’s FOSS 中介紹過了。然而,我們將在此處使用命令列版本:

watch -n 2 sensors

watch 保證了讀數會在每 2 秒鐘更新一次(當然,這個週期值能夠根據你的需要去更改):

Every 2,0s: sensors

iwlwifi-virtual-0
Adapter: Virtual device
temp1:        +39.0°C

acpitz-virtual-0
Adapter: Virtual device
temp1:        +27.8°C  (crit = +119.0°C)
temp2:        +29.8°C  (crit = +119.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +37.0°C  (high = +82.0°C, crit = +100.0°C)
Core 0:        +35.0°C  (high = +82.0°C, crit = +100.0°C)
Core 1:        +35.0°C  (high = +82.0°C, crit = +100.0°C)
Core 2:        +33.0°C  (high = +82.0°C, crit = +100.0°C)
Core 3:        +36.0°C  (high = +82.0°C, crit = +100.0°C)
Core 4:        +37.0°C  (high = +82.0°C, crit = +100.0°C)
Core 5:        +35.0°C  (high = +82.0°C, crit = +100.0°C)

除此之外,我們還能得到如下資訊:

  • 我們有 5 個核心正在被使用(並且當前的最高溫度為 37.0℃)。
  • 溫度超過 82.0℃ 會被認為是過熱。
  • 超過 100.0℃ 的溫度會被認為是超過臨界值。

根據以上的溫度值我們可以得出結論,我的電腦目前的工作負載非常小。

在 Linux 中監控 GPU 溫度

現在讓我們來看看顯示卡。我從來沒使用過 AMD 的顯示卡,因此我會將重點放在 Nvidia 的顯示卡上。我們需要做的第一件事是從 Ubuntu 的附加驅動 中下載合適的最新驅動。

在 Ubuntu(Zorin 或 Linux Mint 也是相同的)中,進入“軟體和更新 > 附加驅動”選項,選擇最新的可用驅動。另外,你可以新增或啟用顯示卡的官方 ppa(透過命令列或透過“軟體和更新 > 其他軟體”來實現)。安裝驅動程式後,你將可以使用 “Nvidia X Server” 的 GUI 程式以及命令列工具 nvidia-smi(Nvidia 系統管理介面)。因此我們將使用 watchnvidia-smi

watch -n 2 nvidia-smi

與 CPU 的情況一樣,我們會在每兩秒得到一次更新的讀數:

Every 2,0s: nvidia-smi

Fri Apr 19 20:45:30 2019
+-----------------------------------------------------------------------------+
| Nvidia-SMI 418.56       Driver Version: 418.56       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 106...  Off  | 00000000:01:00.0  On |                  N/A |
|  0%   54C    P8    10W / 120W |    433MiB /  6077MiB |      4%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1557      G   /usr/lib/xorg/Xorg                           190MiB |
|    0      1820      G   /usr/bin/gnome-shell                         174MiB |
|    0      7820      G   ...equest-channel-token=303407235874180773    65MiB |
+-----------------------------------------------------------------------------+

從這個表格中我們得到了關於顯示卡的如下資訊:

  • 它正在使用版本號為 418.56 的開源驅動。
  • 顯示卡的當前溫度為 54.0℃,並且風扇的使用量為 0%。
  • 電量的消耗非常低:僅僅 10W。
  • 總量為 6GB 的 vram(影片隨機存取儲存器),只使用了 433MB。
  • vram 正在被 3 個程序使用,他們的 ID 分別為 1557、1820 和 7820。

大部分這些事實或數值都清晰地表明,我們沒有在玩任何消耗系統資源的遊戲或處理大負載的任務。當我們開始玩遊戲、處理影片或其他類似任務時,這些值就會開始上升。

結論

即便我們有 GUI 工具,但我還是發現這兩個命令對於實時監控硬體非常的順手。

你將如何去使用它們呢?你可以透過閱讀他們的 man 手冊來學習更多關於這些工具的使用技巧。

你有其他偏愛的工具嗎?在評論裡分享給我們吧 ;)。

玩得開心!


via: https://itsfoss.com/monitor-cpu-gpu-temp-linux/

作者:Alejandro Egea-Abellán 選題:lujun9972 譯者:cycoe 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

相關文章