Linux-Mint
如何限制 Linux Mint 上所有遊戲的幀速率?
受影響的作業系統
- Linux Mint 19.1 “Tessa” - Cinnamon(64 位),基於 Ubuntu 18.04 LTS。(不重要,但後來更新到 19.3 版本。)
上述系統後來升級為:
- Linux Mint 20.2 “Uma” - Cinnamon(64 位),基於 Ubuntu 20.04 LTS。(這是我現在的主要作業系統。)
相關硬體
- CPU : Intel , Core 7th gen (Kaby Lake) , i7-7700HQ , base clock 2.80 GHz, max Turbo Boost 3.80 GHz, Smart Cache 6 MB
- GPU : NVIDIA , GeForce GTX 1060 , Max-Q 設計, 6 GB GDDR5 VRAM
- 螢幕:4K 筆記型電腦 15.6 英寸顯示屏 (UHD 3840 x 2160)
問題
玩任何非 GPU 密集型遊戲時大約有200 - 300 FPS,所以我認為浪費了很多電力,如果這樣的遊戲在前台執行了好幾個小時,我的硬體就會過熱直的。另外,即使我不付電費,我認為我的硬體在最高幀率下玩起來更容易出現故障,在普通遊戲中可能是上述的,難以置信的,200 - 300 FPS。
問題
如何為基於 Nvidia 的硬體上的所有遊戲設置 FPS 限制?如果可能的話,舉幾個這樣的遊戲?
例如,不是廣告,Hexcells 特許經營使用的 GPU 非常少,我在下面對這些遊戲測試了我的解決方案。
NVIDIA特定的解決方案
免責聲明:我推薦使用來自儲存庫的官方驅動程序包,而不是來自 PPA。您可以在我的另一個問題中了解如何安裝或更新您的驅動程序:如何在 Linux Mint 20 上安裝最新的 Nvidia 驅動程序
重要的提醒
免責聲明:此解決方案僅在一個基於 Ubuntu 18.04 或 20.04 的系統上經過驗證和測試。如果您有較舊的,請不要關注;在較新的版本上也要小心。
基於 Ubuntu 18.04 和 20.04 的系統的解決方案
該解決方案利用V-Sync(垂直同步)。如果您不喜歡使用它,那麼此解決方案不適合您。
感謝Xander對啟用V-Sync的評論。有了這個提示,我發現我只需要執行以下步驟。
- 在您喜歡的文本編輯器中創建以下新(如果尚不存在)文件:
/etc/modprobe.d/nvidia-drm-nomodeset.conf
- 把這一行放在那裡,保存並關閉文件;如果文件已經存在,請確保此行存在:
options nvidia-drm modeset=1
- 使用以下內容更新所有
initramfs
圖像:sudo update-initramfs -u -k all
或者如果您只想測試它,您可以只更新最新的圖像:
sudo update-initramfs -u
- 重新啟動系統。
- 垂直同步現在應該打開,驗證:
sudo cat /sys/module/nvidia_drm/parameters/modeset
它會說:
- >
Y
如果垂直同步打開
- >
N
如果垂直同步關閉
您現在應該完成了,以顯示刷新率(通常為 60)為上限。
儘管如此,我對這個解決方案感到滿意,請隨意添加您自己的(AMD 特定的、英特爾特定的,等等),以使這個問題對其他人有用。