MangoHud性能監控
如果你經常關注各種顯卡、3A遊戲大作,或者各種手機、平板等硬件測評,經常會冒出FPS、幀率穩定等相關監測。 有時候我自己也想測測,不求接近珠海白電大佬董大姐,只是單純好玩或者是爲了驗證方案。
比如在 Linux 下 AMD 的 vulkan 驅動有三種:
-
- vulkan-radeon(RADV,part of Mesa projec)
-
- amdvlk(AMDVLK Open,maintained by AMD)
-
- vulkan-amdgpu-pro( AMDVLK Closed,maintained by AMD)
其中,RADV是屬於Mesa的,開源組織,可能熱血人士比較多,更新較爲頻繁;AMDVLK Open 是 AMD 官方維護的,貌似每個季度推出一個版本;AMDVLK Closed 是給高端GPU使用的。
那麼問題來了,假設你像我一樣是 Linux 遊戲用戶,有個丐版AMD的APU,想知道選 RADV 還是 AMDVLK 好,這個時候你需要進行基礎性能測試。最簡單的方案是開啓steam中的幀率監控,但是指標過於簡單(Linux下目前只能開啓FPS監控),不理想,況且不是所有 Linux 遊戲都在 steam 上,此時,你需要MangoHud這個工具。
先說結論,在我的設備(AMD Radeon 780M Graphics)上,在 Dota2 和 cs2 上測試多次,還是 AMDVLK Open 比 RADV 好,不信你可以試試看。
其次,我想解釋下這個 MangoHud,方便記住名字,純屬個人猜測:
Mango 是 https://github.com/flightlessmango/MangoHud 這個倉庫作者名字的一部分,作者圖標是個芒果🥭;Hud 就是個通用概念,比如現在很多新能源車都有,叫什麼抬頭數字顯示,或者抬頭顯示器。大概就是顯示簡略導航信息、汽車時速什麼的,也就是一些監控信息。和我們這裏幀率、顯卡使用率等類同。
這樣,就比較好記住這名字了。
以下是我的實踐操作記錄:
1. 安裝
1sudo pacman -S mangohud goverlay
goverlay 是 mangohud 的圖形化配製程序,看界面是QT開發的。我想不是專業評測人員是不會醉心於手動修改 .config/MangoHud/MangoHud.conf
配置文件的,有個圖形化的配置程序還是挺不錯的。
安裝完成後可以簡單檢測下,好比各種代碼的linter:
1$ mangohud glxgears
2$ mangohud vkcube
glxgears 會顯示三個滾動齒輪:
vkcube 顯示個旋轉的立方體:
2. 使用
- 單個遊戲使用
簡單粗暴,直接 mangohud game
,其中 game 爲遊戲的啓動命令。比如:
1➜ mangohud mari0
- steam 遊戲示例
右鍵點擊庫中的遊戲,選擇屬性,然後在啓動選項文本框中輸入:
1mangohud %command%
- 環境變量
使 MangoHud 自動與所有 Vulkan 遊戲一起啓動,可以設置以下環境變量:
1MANGOHUD=1
比如我的labwc下:
1➜ ~ cat .config/labwc/environment | tail -n 3
2
3#MangoHud
4MANGOHUD=1
這樣寫的好處是,不用在每個steam遊戲中,更改啓動項。不好的地方是,不是每個遊戲的都支持,supertuxkart 就不支持。
3. 配置
先給出我的配置:
1➜ ~ grep -Ev '^#|^$' .config/MangoHud/MangoHud.conf
2legacy_layout=false
3background_alpha=0.1
4round_corners=10
5background_alpha=0.1
6background_color=000000
7font_file=/usr/share/fonts/TTF/HackNerdFont-Regular.ttf
8font_size=16
9text_color=FFFFFF
10position=top-right
11toggle_hud=Shift_R+F12
12pci_dev=0:c4:00.0
13table_columns=5
14gpu_text=GPU
15gpu_stats
16gpu_load_change
17gpu_load_value=50,90
18gpu_load_color=FFFFFF,FFAA7F,CC0000
19gpu_core_clock
20gpu_mem_clock
21gpu_temp
22gpu_power
23gpu_color=2E9762
24cpu_text=CPU
25cpu_stats
26cpu_load_change
27cpu_load_value=50,90
28cpu_load_color=FFFFFF,FFAA7F,CC0000
29cpu_mhz
30cpu_temp
31cpu_power
32cpu_color=2E97CB
33vram
34vram_color=AD64C1
35vram_color=AD64C1
36ram
37ram_color=C26693
38fps
39engine_version
40engine_color=EB5B5B
41frame_timing
42frametime_color=FFFFFF
43fps_limit_method=late
44toggle_fps_limit=Shift_L+F1
45fps_limit=0
46fps_color_change
47fps_color=B22222,FDFD09,39F900
48fps_value=30,60
49output_folder=/home/mephisto
50log_duration=30
51autostart_log=0
52log_interval=100
53blacklist=protonplus,lsfg-vk-ui,bazzar,gnome-calculator,pamac-manager,lact,ghb,bitwig-studio,ptyxis,yumex
54toggle_logging=Shift_L+F2
非專業人士,建議運行 goverlay
來進行圖形化配置。
Color Theme
個人選的 MangoHud stock
圓角、背景透明0.1、字體選個自己中意的、位置、列數目(選5個,多列信息不會換行)。
值得特別說明的是那個翻轉快捷鍵Shift_R + F12
, 可在顯示hud和不顯示hud間切換。這個還是很有用處的,因爲你選的位置可能會遮擋遊戲畫面信息。
想看的時候,使用快捷鍵呼出即可,按需要取捨。在steam下面,如何你開啓了 wayland
,這個快捷鍵會失效,xwayland
纔會正常,我自己測試 dota2 和 cs2的時候發現的。
最好玩的是,我現在用的編輯器zed,因爲用vukan調用了gpu,我設置了環境變量 MANGOHUD=1
,右上角也會出現 mangohud,即使是wayland的,也支持快捷鍵切換隱藏或者顯示。
如下圖所示:
4. 指標解釋
光有指標,不知道指標含義也是枉然,以下是一些常見指標的含義:
- FPS(Frames Per Second):即每秒幀數,顯示遊戲或應用程序當前的幀率,數值越高表示運行越流暢。
- CPU Load:指 CPU 的負載情況,顯示 CPU 當前的工作量,以百分比形式表示。
- GPU Load:表示 GPU 的負載,即 GPU 在處理圖形渲染等任務時的工作量,同樣以百分比形式呈現。
- CPU Temperature:CPU 的溫度,反映 CPU 在運行過程中的發熱情況,通常以攝氏度(℃)爲單位。
- GPU Temperature:GPU 的溫度,顯示顯卡在工作時的溫度狀況,單位也是攝氏度(℃)。
- VRAM Occupied:顯存佔用量,顯示當前遊戲或應用程序使用了多少顯存,以字節爲單位。
- RAM Occupied:內存佔用量,表明系統內存中被佔用的部分,單位爲字節。
- Frame Timing:提供每幀渲染所需的時間信息,可幫助分析遊戲幀率不穩定的原因。
還有其它指標,有興趣的自行翻閱相關文檔。
最後,請看這張圖表:
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。
相關文章:
- Arch Linux SSL VPN 客戶端配置
- Arch linux下iNode客戶端的安裝和使用方法
- Linux環境下維護公衆號記錄
- Linux環境按鍵檢測
- Ubuntu 切換系統語言
- Snipe it資產管理系統安裝使用
- Ubuntu開機啓動加速
- SuperTuxKart 試玩
- Hysteria科學上網簡要
- Linux安裝心儀字體