如何在 Linux 上通过调整像素时序来超频显示器?

如何在 Linux 上通过调整像素时序来超频显示器?

指南展示了如何应用计时,但没有解释如何调整这些计时。在 Linux 上调整显示器计时与 Windows 上的 CRU 不同。

答案1

获取您当前的时间安排

gtf 和 cvt 的计时不一定有效(它们不适合我)。要获取当前时间,请运行xvidtune -show.

了解模型行语法

时钟脉冲 高清数字信号处理器 水平同步启动 水平同步 总和 虚拟显示系统 垂直同步启动 垂直同步 总面积 旗帜
148.50 1920年 2008年 2052 2200 1080 1084 1089 1125 +水平同步 +垂直同步
  • 时钟脉冲:像素时钟(MHz)。这是像素发送到显示器的速度。
  • *显示:活动像素。这就是决议。
  • *同步开始: *DISP + 前廊
  • *同步: *SYNCSTART + 同步宽度
  • *全部的:*SYNCEND + 后廊​​。这是一行中的像素总数。

这些标志不适用于现代显示器;让它们保持原样。

如果这一切对你来说似乎是希腊语,请查看首席 Blur Buster 的帖子

放宽时间安排

这是为了找到最大PCLK。将 *TOTAL 增加到较大的值 - 不要太大,否则刷新率会太低。

我建议使用这个脚本:

#!/bin/bash
modeName=tmp1

xrandr --output HDMI-0 --mode 1920x1080

xrandr --delmode HDMI-0 "$modeName"  &&
   xrandr --rmmode "$modeName" 

sleep 1 && 
   xrandr --newmode "$modeName"  165.00 1920 1920 1921 1988 1080 1081 1082 1092 +hsync +vsync &&
   xrandr --addmode HDMI-0 "$modeName"  &&
   xrandr --output HDMI-0 --mode "$modeName" 

将第 4 行的分辨率替换为适合您的分辨率。

将第 10 行的计时替换为您的计时,然后运行脚本。如果计时不起作用,请再次运行并立即按ctrl+ C

如果 xrandr 不断吐出错误并拒绝应用该模式,即使计时应该管用,将 modeName 更改为其他名称或重新启动 X 服务器。

这就是我最终得到的结果:148.50 1920 2008 205223001080 1084 10891300。我的刷新率现在是 50 Hz。

寻找最大PCLK

增加 PCLK 直到显示器停止工作或开始变得不稳定(伪像、周期性黑屏)。我的在165.99停止工作,但由于它可能会波动,所以最好增加一些回旋余地。我选择165.90。现在我的刷新率为 56 Hz。

收紧时间安排

这是您真正开始获得帧的部分。由于您的显示器现在以其最大频率运行,因此我们应该减少绘制一帧所需的时间,以增加绘制的帧数。

首先,您应该通过反复试验尽可能减少*DISP、*SYNCSTART 和*SYNCEND。我现在有165.90 19201920 19212300 10801081 10821300。

接下来,您应该查阅显示器手册以了解最大水平频率 (HFREQ)。将 HTOTAL 设置为 ceil(PCLK/HFREQ)。我的手册声称我的显示器的最大 HFREQ 是 83 kHz。 165 900 000 / 83 000 是 1998.795...将其向上舍入得到 1999。对垂直频率执行相同的操作。或者,通过反复试验找到最低的 *TOTAL。

现在你的显示器已经超频了!如果看起来有点不稳定,请尝试降低 PCLK 并重复上述步骤。这是我最终得到的时间安排:165.501920 1920 19211994年1080 1081 10821092。我的刷新率是76赫兹。

提示:

PCLK = HTOTAL * VTOTAL * VFREQ(其中 VFREQ 是刷新率)。

例如,如果 HTOTAL = 1994,VTOTAL = 1092,并且您想要 76 Hz 的 VFREQ,则您的 PCLK 应为 1994 * 1092 * 76 = 165486048。

如果 PCLK = 165.90、HTOTAL = 1994 且 VTOTAL = 1092,则 VFREQ 将为 165900000/(1994*1092) = 76.190 Hz。

相关内容