Flo*_*wig 2 performance display nvidia multiple-monitors fps
我想将辅助显示器的刷新率降低到非常小的水平,这样我的 GPU 就不必做那么多工作。但是在默认的“显示”设置中没有选项可以更改我的第二台显示器的刷新率。它似乎固定在 60 Hz。
如何将我的第二台显示器的刷新率限制为仅每秒 10 帧?...在我的 GPU 上释放一些资源。
这是我的显示设置:
的输出xrandr是
Screen 0: minimum 8 x 8, current 3440 x 2520, maximum 16384 x 16384
DVI-I-0 connected 1920x1080+854+1440 (normal left inverted right x axis y axis) 477mm x 268mm
1920x1080 60.00*+
1680x1050 59.95
1600x900 60.00
1280x1024 75.02 60.02
1280x800 59.81
1280x720 60.00
1024x768 75.03 60.00
800x600 75.00 60.32
640x480 75.00 59.94
DVI-I-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 connected primary 3440x1440+0+0 (normal left inverted right x axis y axis) 819mm x 346mm
3440x1440 59.97 + 99.98*
3840x2160 59.94 50.00 29.97 25.00 23.98
2560x1080 100.00 59.94
1920x1080 100.00 60.00 59.94 50.00 29.97 25.00 23.98 60.00 50.04
1680x1050 59.95
1600x900 60.00
1280x1024 75.02 60.02
1280x800 59.81
1280x720 60.00 59.94 50.00
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 59.94
640x480 75.00 59.94 59.93
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DVI-D-0 disconnected (normal left inverted right x axis y axis)
Run Code Online (Sandbox Code Playgroud)
如此处所述,您可以使用cvt和xrandr更改显示器的刷新率。但在您的情况下,参数cvt必须是3840x2160 24限制第二台显示器的刷新率,同时保留其分辨率。
但 :
监视器刷新率与 GPU 利用率无关。事实上,对于60Hz监视器,监视器正在读取帧缓冲区,例如每秒 60 次,无论您的 GPU 以 240fps 渲染还是完全空闲。至于我知道监视器用来读取帧缓冲区的方法称为直接内存访问,它甚至不需要 CPU 周期来执行 I/O 操作。
如果您想降低 GPU 的负载,您可以:
通过上述方法限制第二台显示器的分辨率,但这有点荒谬,因为您无法充分利用显示器的潜力
将需要更高渲染的窗口(例如游戏和视频播放器,但不是文件管理器的实体窗口,甚至只是实体墙纸)移动到分辨率较低的显示器上。
禁用一些可能使用 GPU 的扩展和功能
查看哪些进程通过nvidia-smior nvidia-settings(即您发布的屏幕截图所属的程序)对您的 GPU 施加了很大压力,并通过cputool限制它们的CPU使用率,如下所示(您必须先安装软件包):cputool
cputool -p pid_of_the_hungry_process -c maximum_cpu_usage
Run Code Online (Sandbox Code Playgroud)
限制 CPU 使用率也限制了进程在单位时间内发出的OpenGL调用,因此它也可以限制 GPU 使用率。我不知道任何nvidia-smi可以直接限制 GPU 使用率的工具(甚至)(如果有人知道,我很高兴听到)。
没有程序会在 GPU 中开始执行。所有程序都从 CPU 开始,然后通过OpenGL、CUDA或OpenCL 等调用 GPU 的驱动程序。所以我认为限制 CPU 使用率是合理的。
并注意,maximum_cpu_usage上述命令中的 16 线程 CPU 是从0一直到1600. 这是该系统上的进程可以使用的最大 CPU 量(如果它有 16 个执行线程)。
例如,将KWin窗口管理器限制10在我的系统中,当在整个屏幕上非常快速地移动终端窗口时,GPU 使用率从几乎32% 减少到15%左右。但是当您移动窗口时,它可能会导致一些小故障。
TODO:如果有人知道如何限制 Gnome-shell 或类似 DE 的帧速率,我很高兴听到。
希望能帮助到你。
| 归档时间: |
|
| 查看次数: |
608 次 |
| 最近记录: |