我最近买了一台联想 C940 笔记本,全高清选项。显示器是 LG 制造的 1920x1080 IPS,EDID 显示支持的刷新率为 60.020Hz 和 47.999Hz。显卡为 Intel Iris Plus (Intel Core i7-1065G7)
问题是游戏和视频都以精确的规律间隔显示非常奇怪的帧丢失。似乎每约 0.5 秒丢弃一帧,这会导致轻微的“生涩”运动。当场景以恒定速率移动时,效果最为明显。这个问题与 CPU 和 GPU 的使用无关,我在 2D 和 3D 游戏甚至 Netflix 视频中都看到了它。在 60Hz 和 48Hz 模式下,每秒两次的帧丢失率是相同的常数,即使在 48Hz 模式下显示 24fps 内容时也可见(每个刷新周期有 2 个完全相同的内容帧)。
vblank 信号之间的间隔相当规律,约为 16.66 毫秒,没有任何显着差异,这在 Retroarch 和 vsynctester.com 中很明显(两者都通过测量 vblank 之间的精确时间来估计刷新率)。在 vsynctester.com 上,我可以看到 VSYNC 标签以可怕的恒定速率闪烁红色(很少是青色),但历史图表显示几乎没有变化,所以看起来显卡每帧都在推动,但显示器每帧都下降一个半秒(如果可能的话)。
连接到笔记本电脑的任何其他外接显示器都可以正常工作,不会出现任何丢帧现象,而且 vsynctester.com 会显示一个漂亮的灰色 VSYNC 标签,即使在通过 USB-C 加密狗通过 HDMI 连接的 2160p60 显示器上也是如此。这个问题在 Windows 10、Wayland 上的 Linux 和 Xorg 上的 Linux 上完全相同,所以我怀疑这是驱动程序问题,似乎是硬件问题。我什至尝试使用 CRU 工具(59.96Hz 等)创建其他刷新率,但我得到的只是黑屏。
BIOS 是完全最新的。关于为什么会发生这种情况以及我可以尝试什么的任何想法?
罪魁祸首似乎是英特尔驱动程序的一个选项,称为“面板自我刷新”。该选项位于英特尔图形命令中心的“系统”部分的“电源”选项卡中。我没有太在意,因为它列在“电池供电”部分,我的问题是插入和使用电池时,但禁用它会立即解决问题,甚至无需重新启动。
在 Linux 上禁用它的方法是通过内核参数
i915.enable_psr=0
。