现在的手机跑分,真的是不能信。
手机产商、芯片厂商越来越追求芯片的跑分数值,Benchmark (基准性能测试)逐渐成为衡量设备性能的重要标准。
但在一味追求分值的同时,厂商们也逐渐深陷“分值禁锢”之中,近期的联发科,就是如此。
事情的开始,要从 OPPO Reno3 说起。
外媒 Anandtech 发现,搭载 P95 CPU 的欧洲版 OPPO Reno3 Pro 的跑分数值比搭载性能更强大的最新 Dimensity 1000L CPU 的国行版 Reno3 的高,这引起了 Anandtech 的质疑。
由此,Anandtech 分别使用匿名版(可帮助分值作弊)和常规版的 PCMark 对 MediaTek P95 CPU 进行跑分。
雷锋网注:图源 Anandtech
结果显示,P95 CPU 的真实总分比匿名版得分低 30%;在写入负载方面,二者得分的差异甚至达到 75%。
同时,Anandtech 指出,通过对 OPPO Reno3 Pro 进行测试,结果表明并非是 OPPO Reno3 Pro 导致的跑分差异。也就是说,造成跑分差异的根源在于联发科芯片。
为了证明这一结论, Anandtech 对 Reno3 搭载的联发科芯片作进一步调查。结果发现,在手机的固件(/vendor/etc 文件夹)中,包含一个“power_whitelist_cfg.xml”文件。
该文件中存在一个涵盖各种基准测试的列表,包括 GeekBench、AnTuTu、3 dbench,、PCMark、鲁大师、AndroBench2 等。不仅如此,列表中还新增了人工智能基准测试,包括 Master Lu AIBench、ZTH AI 。
雷锋网注:Reno3 Pro“运动模式”基准白名单部分截图(图源 Anandtech)
在这其中,Anandtech 找到了 PCMark 的 APK ID,发现 ID 中配置了一些电源管理提示,其中一个共同的提示为“运动模式”。
该模式能够修正 SoC 芯片的一些 DVFS (动态电压频率调整)特性,比如始终以最大频率运行内存控制器。另外,在负载跟踪方面,调度器也被更改了设置,在工作负载时 CPU 核心的频率能够更快地上升,并停留更长时间。
不仅如此,其 APK ID 还包含了企业版的 GFXBench,虽然在清单中没有配置“运动模式”提示,但在使用应用程序是会改为默认的 DVFS、热力和调度器设置。
值得注意的是,“power_whitelist_cfg.xml”文件不仅存在于 OPPO 设备上,Anandtech 还在其他设备上(搭载联发科芯片的设备)发现了类似文件以及几乎相同的基准清单条目。如表所示:
雷锋网注:表中缺少 AI 测试,并非完整的基准测试列表(图源 Anandtech)
巧合的是,在 Anandtech 解压文件之后,OPPO 向手机推送了一个固件更新,文件中原有的基准列表消失了。Anandtech 认为该文件列表仅是被移动了位置,因为基准测试中依然能够触发“运动模式”,从而使性能大大提升。
对于 Anandtech 提出的质疑,联发科方面也给出了正面回应。以下为回应声明:
联发科技遵循公认的行业标准,并且对基准测试准确地代表了我们芯片组的功能充满信心。在测试和基准测试由我们的芯片组驱动的设备时,我们与全球设备制造商紧密合作,但最终,品牌商可以灵活地配置自己认为合适的设备。许多公司将设备设计为在进行基准测试时以最高性能运行,以显示芯片组的全部功能。这揭示了任何给定芯片组的性能能力的最高端。
当然,在现实世界中,有许多因素将决定芯片组的性能。联发科技的芯片组旨在优化功耗和性能,以在尽可能延长电池寿命的同时提供最佳的用户体验。如果有人正在运行诸如要求苛刻的游戏之类的计算密集型程序,则该芯片组将智能地适应计算模式以提供持续的性能。
这意味着,随着芯片组根据出色的用户体验所需的功能和性能动态管理 CPU,GPU和内存资源,用户将从不同的应用程序中看到不同的性能水平。此外,某些品牌在不同地区具有不同类型的模式,因此设备性能可能会因地区市场需求而异。
我们认为,在基准测试中展示芯片组的全部功能与其他公司的做法是一致的,并且可以为消费者提供有关设备性能的准确信息。
联发科认为,其公布的 Benchmarks 分值代表了芯片组驱动设备时的最高分值,代表了芯片组性能的最高端,所以不存在跑分造假的行为。同时联发科指出,这一做法与其它公司的做法是一致的,也就是说,行业里的厂商都是这么做的。
但这一回应遭到了 Anandtech 的反驳。Anandtech 认为,联发科并无回应出问题的本质。其具有欺骗性的 Benchmarks 不仅针对的是与 SoC 相关的跑分软件(例如 GeekBench、GFXBench),而且面向了与用户体验相关的跑分软件,也就是前文提到的 PCMark。
Anandtech 解释称,PCMark 是一个系统基准测试,其分值代表了芯片的工作负载和设备响应能力。虽然 PCMark 反映的是芯片的性能,但会受 DVFS 和调度程序等软件和机制的影响;这也印证了前文提及“运动模式”会修正 SoC 芯片的 DVFS 特性,从而影响 Benchmarks 分值。
另外,Anandtech 指出,PCmark 分值反映的是用户使用体验,而不仅仅是芯片组的性能。也就是说,Anandtech 认为联发科干涉 PCmark 分值已超出了芯片跑分的范围。
事实上,在联发科之前,三星、华为都曾因欺骗 Benchmark 结果陷入舆论中心。
2014 年,测试人员发现三星通过添加源代码在基准测试中作弊,该代码能够检测基准测试应用程序是否在手机上运行,一旦发现,则以更快的速度(532MHz,正常情况下为 480MHz)运行手机。
由此,三星遭到了集体诉讼,且该诉讼长达 4 年。2019 年 9 月 30 日,三星败诉,承认在基准测试中作弊,同意向 Galaxy S4 的购买者支付 10 美元赔偿。
同样的事情在华为身上也发生了。Anandtech 发现,华为会在新设备中配备基准检测机制,为 SoC 提供了更高的功率限制。最终,在某些白名单应用程序中,设备的性能会更高。
不过,这种做法会带来一些负面影响,包括消耗电能,降低机组效率,降低电池寿命等。
对此,华为表示,仅凭一个单一的基准数字并不能显示完整体验。但对于部分项目,进行基准测试是整个行业中被认可的方式,每个公司都在朝着更好的客观结果而努力。同时,华为消费者 BG 软件工程部总裁王成录表示,其他厂商都在进行同样的测试获得高分,华为不能保持沉默。
不难看出,Benchmark 的高分值正成为芯片制造商追求的目标,也逐渐成为了行业的营销手段。Benchmark 分值固然能反应设备的性能,但为了营销、数值攀比而进行跑分造假不应是行业常态。
且不论“你做我也做”追求 Benchmark 高分值的盲目性,就跑分造假这一行径而言,其分值只能在短时间内获取用户体验的好感度,但从长期视角来看,追求高分值会带来设备性能的损耗,这并不是与用户建立良好关系的正确途径。
正如 AnandTech 在文中提及,更好地与用户体验建立联系的唯一方式,就是让每个常规游戏在标准的功率范围内运行。
也就是说,性能最具说服力的表现不是分值,而是产品本身。
参考资料:
【1】https://www.anandtech.com/show/15703/mobile-benchmark-cheating-mediatek
【2】https://www.anandtech.com/show/13318/huawei-benchmark-cheating-headache
【3】https://www.mediatek.com/blog/why-mediatek-stands-behind-our-benchmarking-practices