演示: https://etherdream.github.io/cpu-race/
测速原理:服务端下发一个题目,前端 wasm 进行求解(在主流 CPU 上消耗固定的周期),然后上报答案进行验证。
为了防止作弊,运行时间统计的是“服务端下发题目”到“服务端收到题目”的时间差,因此网络延迟会算在计算时间里,导致最终展示的 CPU 主频比实际略低。
服务端使用的是 Cloudflare Worker ,在国内大约有 200ms 的延迟。不过相比整个测试过程需 ~20s ( 5GHz CPU ),延迟占比有限。
计算代码可参考: https://github.com/EtherDream/cpu-race (后端实细节暂未公开)
如果展示的 CPU 主频和实际不一致,可以反馈问题。