CPU 压力测试

直接从浏览器给每个线程施加稳定负荷,看吞吐是保持住还是掉下去,并听听散热跟不跟得上。它给处理器加负载——不给它打分。

关于 CPU 负载测试

这个页面给你的处理器一件重活,并告诉你它能不能一直干下去。这个说法比大多数 CPU 页面都保守,而且是刻意的。

这是负载工具,不是跑分工具

这里的 worker 以浏览器允许的最快速度运行一个算术循环,并统计完成了多少次。这个数字取决于你的浏览器、它的版本、机器上还在做什么,以及引擎今天决定如何编译这个循环——所以它不是分数,也不该和别人的放在一起比。它真正的用处,是在你控制的负荷下,一分钟一分钟地把这台机器和它自己作比较。

重要的是那个会下降的数字

开始运行后,吞吐会上升几秒,然后稳定下来。如果它能在那里保持五分钟,说明机器扛得住这个负荷。如果它下降一个台阶并停在下面,说明有什么在压低频率——热量、功耗墙,或者省电配置。等积累到足够的历史、确认不是在看某一秒的噪声之后,页面会告诉你。

浏览器看不到的东西

没有温度,没有主频,没有风扇转速,没有处理器型号,也没有完全可信的核心数。在任何平台上,这些都不会暴露给网页;声称能读到的网站,只是在根据你的 User Agent 猜测。测试前唯一可得的事实是浏览器报告的线程数——而 Safari 和隐私模式连这个也会往下取整。想看温度,请在这个页面旁边运行本地监控软件。

所有核心,还是只用一个

全部线程是测试散热的设置:整块芯片发热,风扇必须响应,勉强够用的散热器几分钟内就会露馅。单线程则相反——芯片其余部分空闲,因此那个核心能冲到最高睿频并保持住。逐个线程运行也是找出某个核心异常、而其余核心正常的方法。

为什么会有强度滑块

满载并不总是你需要复现的场景。一台全力运行时稳定、半载却卡顿的机器,问题是另一回事;而风扇曲线在稳定的 40% 下比全部一起狂转时更容易听清。滑块调节的是每个 worker 内部的占空比——每 100 毫秒中计算一部分时间,其余空闲——所以核心确实在承载负荷,只是不连续。

运行它安全吗

是的。网页做的任何事都无法把处理器推过它自身的极限:温度与功耗保护位于硬件和固件之中,在浏览器触及不到的层面,会在造成损坏之前很久就降频或直接关机。你应当预期的是机器发烫、风扇变吵,以及笔记本电脑电量快速下降。如果机器在测试中自行关机,那本身就是一个结论:散热或供电撑不住。

顺便也压一压显卡?
在浏览器中给显卡加负载,观察花屏、驱动重置和帧率下滑。
打开显卡测试
在检查整台机器吗?
坏点、刷新率、背光漏光以及显示器的其余部分,都在一处。
打开屏幕测试

什么时候值得做 CPU 负载测试

常见问题

选择运行时长、要加载多少线程以及强度,然后点击开始。页面会为每个线程开一个 worker,各自运行一个紧凑的算术循环,并显示它们完成了多少。整个过程都要让标签页保持在前台——浏览器会限制后台标签页,那样读数就没有意义了。
都不是。屏幕上的数字是某个特定循环每秒的执行次数,由你浏览器的 JavaScript 引擎产生。同一台机器换个浏览器数字就不同;同一个浏览器更新之后也会变。要把这条线和它自己在本次运行中的表现对照着看,绝不要和另一台机器比。
不会。温度和功耗保护在硬件里,远在浏览器之下:芯片过热会自行降频,如果还不够,机器就会关机。这两者都不是损坏。请预期发热、风扇噪音,以及笔记本电脑电量快速下降——如果你不想要这些,随时可以停止。
不能。在任何平台上,网页都无法访问温度、主频、风扇转速或处理器型号。请在这个页面旁边运行本地监控软件:Windows 上用 HWiNFO 或 Core Temp,macOS 上用 Stats 或 iStat Menus,Linux 上用 lm-sensors。这个页面提供负荷,监控软件提供它看不到的数字。
因为浏览器报告的是逻辑线程而不是物理核心,而且连这个也不总是诚实。Safari 会限制这个数值,隐私模式和反指纹模式限制得更多,混合架构芯片还会把性能核和能效核算进同一个总数。它足以用来决定 worker 池的大小,却不足以被引用为你的核心数。
机器以某个速度开始,却没能维持住。常见原因是热量;在笔记本电脑上,这指向风扇积灰、硅脂干涸,或者出风口被压在柔软表面上。功耗墙、省电配置,或另一个程序占走了核心,从浏览器内部看完全一样,所以在拆机之前请用温度监控软件确认。
测散热就用全部线程——那才会让整块芯片发热并让风扇干活。想看单核最高睿频,或者想隔离出某个单独工作时就出错的核心,就用单线程。两种情况用的是同一个滑块,运行面板会分别显示每个线程。
一分钟足以听到风扇并确认负荷已经压上去。若要观察热量,五分钟是有用的最低时长:大多数笔记本电脑在第三或第四分钟降频,而不是第一分钟。对于机器热了一段时间之后才出现的故障,请使用耐力预设,并让标签页保持在前台一直运行。
不应该。每个算术循环都在各自线程上的 Web Worker 中运行,页面本身只负责绘制数字。所有线程都加载时,界面可能感觉稍微不那么跟手——所有东西都在争抢同样的核心——但滚动、滑块和停止按钮仍然可用。停止会立即终止 worker,所以你一按下去负荷就结束了。