144Hz 的显示器,为什么只能跑 133Hz
买了块 2K 144Hz 的显示器,接上 MacBook,打开系统设置——刷新率那一栏最高只有 133Hz。
不是 144,也不是 120,是 133。这个数字很奇怪,奇怪到不像是厂商会标的规格,倒像是某个地方算出来的余数。
它确实是算出来的。
先确认屏幕没被冤枉
第一件事是排除「这屏本来就不是 144Hz」。
显示器会把自己的能力写在 EDID 里,交给电脑读。解开它的基础块,第一条 detailed timing descriptor 写着:
1 | 首选时序 2560 x 1440 @ 60Hz |
屏幕很清白:它确实是 2560×1440 的原生面板,支持到 144Hz,自己能吃下 600MHz 的像素时钟。
顺便说个容易被骗的地方:macOS 的
ioreg里有个NativeFormatHorizontalPixels字段,看起来像是在告诉你面板的物理分辨率。它不是。这块屏在那里报的是1920x1080——那读的是 CTA-861 扩展块里 VIC 16(1080p60)上置的 native 标记位,是给 HDMI 电视用的格式标记。判断面板原生分辨率,要去解 EDID 基础块的第一条 detailed timing descriptor。
瓶颈在半路上
屏幕没问题,那问题在中间这段路。
链路是这样的:MacBook Air M4 → USB-C 拓展坞(DP alt mode)→ HDMI → 显示器。
macOS 自己记着这条链路能跑多快,藏在 DisplayHints 里:
1 | MaxTotalPixelRate = 537,300,000 |
537.3 MHz。 屏幕能吃 600MHz,链路只给 537.3MHz。
一道小学算术
像素时钟怎么算?把总时序的宽、高、刷新率乘起来就行——注意用总时序(2720×1481),不是可见分辨率,因为消隐区那些看不见的像素也要占时间。
1 | 144Hz → 2720 × 1481 × 144 = 580.1 MHz 占链路上限的 108% ❌ |
答案出来了。144Hz 需要 580.1MHz,超出链路上限 8%,塞不进去。而 133Hz 是 535.8MHz——刚好是 537.3 的 99.7%。
macOS 没有保守地退回 120Hz,而是精确地挑了那个还能塞得下的最大值,一格不浪费。
所以 133 这个数字既不是厂商标的,也不是随便截的。它是「在这条链路上能跑的最快速度」。
为什么坞只给这么点带宽
USB-C 口里的线是有限的。拓展坞要同时管视频和 USB 3.0,就把 4 条高速通道劈成两半:2 条给 DisplayPort,2 条给 USB。
视频只剩一半的路,带宽自然对半砍。如果是 USB-C 直连显示器、4 条通道全给 DP(HBR3),带宽预算大约在 1080MHz——580MHz 轻轻松松,144Hz 随便跑。
一句话:你为了插 U 盘,付出了 11Hz。
顺便说个反直觉的:降刷新率不会让坞凉快
133Hz 占满了链路的 99.7%,坞长期在满负载工作,摸上去一直是温的。很自然会想:把刷新率降下来,是不是就凉了?
我测了。读 AppleSmartBattery 里的 PowerOutDetails.Watts(Mac 经 VBUS 供给坞的功率),每档取 10 个样本:
| 刷新率 | 供电功率 |
|---|---|
| 133Hz | 3237 mW |
| 120Hz | 3310 mW |
| 60Hz | 3129 mW |
极差只有 181mW(5.6%),而且不随刷新率单调变化——120Hz 反而比 133Hz 还高一点。这就是噪声。
所以别为了降温去调刷新率,纯属白忙。
坞的热来自别的地方。 把 USB 树展开看一眼,这个”只插了键鼠接收器”的坞里其实常驻着:两级 GenesysLogic USB 3.1 Hub、两级 USB 2.1 Hub、一块 ASIX AX88179B 千兆网卡、一个 USB 3.0 读卡器、一颗 ITE BillBoard 芯片。
网卡和读卡器是焊在里面的——你不插网线、不插卡,它们照样枚举,照样耗电。坞是总线供电,Mac 给它约 3W,这 3W 全散在一个小金属壳里。烫是必然的,跟你开多少赫兹没关系。
那怎么才能真的跑满 144Hz
绕开拓展坞。
如果你的 Mac 还有空着的 USB-C 口(比如充电走了磁吸),拿一根 USB-C → DP 线从空口直连显示器。4 条通道全给视频,带宽预算翻一倍,580MHz 不在话下。顺带坞里那颗转换芯片彻底停工,也能凉一点。
代价是多一根线。但换来 11Hz 和一个不烫手的坞,我觉得划算。
一点题外话
整件事里最有意思的地方,是 133 这个数字本身。
它看起来像个 bug,像某个程序员随手写的魔法数字。但把总时序、链路上限、刷新率三个数摆在一起算一遍,它就变成了一个必然的结果——系统在你看不见的地方做了一道除法,然后老老实实取了整。
很多看起来莫名其妙的限制,拆开看都是这样:不是谁偷懒,是物理定律在某个地方划了条线。






