Gamemode

出自 Arch Linux 中文维基

Gamemode 是 Linux 的守護進程和庫組合,允許遊戲請求將一組優化臨時應用於主機作業系統和/或遊戲進程。

安裝[編輯 | 編輯原始碼]

安裝 gamemodelib32-gamemode

將你所在的用户添加到 gamemode 用户組,否則gamemode用户守護進程將無法調節CPU調度以及遊戲的進程優先度。

配置[編輯 | 編輯原始碼]

Gamemode 通過以下文件進行配置,這些文件按以下順序讀取並合併:

  1. /etc/gamemode.ini 用於系統範圍的配置;
  2. $XDG_CONFIG_HOME/gamemode.ini 用於用户本地配置;
  3. ./gamemode.ini 用於目錄本地配置。
提示:在 FeralInteractive 的 GitHub 上可以找到帶有註釋的示例配置文件。
注意: /usr/share/gamemode/gamemode.ini 不應由用户創建,因為它是為包維護人員手動配置保留的。詳細信息請見 file-hierarchy(7.zh_CN)

調整優先級[編輯 | 編輯原始碼]

Gamemode 可以選擇性地調整遊戲進程的優先級(見 renice(1)),使其超過常規用户的下限 0

這由以下配置選項控制:

[general]
renice=0

與使用 renice 命令調整進程優先級不同,Gamemode 使用正值並在將其應用於進程之前對其進行取負,即,值為 10 將使遊戲進程優先級重新調整為 -10

此功能要求用户處於 gamemode 用户組中才能工作。

超頻[編輯 | 編輯原始碼]

遊戲模式可以選擇在 GPU 運行時超頻,但需要用户進行特殊配置。

使用的 GPU 無關,必須適當設置 apply_gpu_optimizationsgpu_device 配置項。

AMD[編輯 | 編輯原始碼]

若要更改 AMD GPU 的性能級別,必須手動啟用超頻,並且必須設置 amd_performance_level 配置項。

NVIDIA[編輯 | 編輯原始碼]

若要更改 NVIDIA GPU 的性能級別,必須手動啟用超頻英語NVIDIA/提示和技巧#启用超频,並且必須設置 nv_powermizer_mode, nv_core_clock_mhz_offset, 和 nv_mem_clock_mhz_offset 配置項。

使用[編輯 | 編輯原始碼]

測試配置[編輯 | 編輯原始碼]

驗證配置文件中的設置是否正常工作:

$ gamemoded -t

運行一個遊戲[編輯 | 編輯原始碼]

要使用遊戲模式運行一個遊戲,應該這樣開始:

$ gamemoderun ./game

與 MangoHud 一同使用[編輯 | 編輯原始碼]

MangoHud#Use with Gamemode英語MangoHud#Use with Gamemode

驗證遊戲模式是否正在運行[編輯 | 編輯原始碼]

當您已開始遊戲時,您可以使用以下命令驗證遊戲模式是否正在運行:

$ gamemoded -s
注意: gamemoded.service 用户單元由 dbus 按需啟動 [1]

運行一個 Steam 遊戲[編輯 | 編輯原始碼]

要使 Steam 以遊戲模式啟動遊戲,右擊「庫」中的遊戲,選擇「屬性...」,然後在「啟動選項」文本框中輸入:

gamemoderun %command%

使用遊戲模式運行 Steam[編輯 | 編輯原始碼]

要是不想更改所有 Steam 遊戲的啟動選項,你可以直接使用遊戲模式啟動 Steam

$ gamemoderun steam-runtime

這種方法的缺點是,只要 Steam 進程打開,遊戲模式就會一直運行,而不是只在遊戲打開時運行。