现在的手机跑分,真的是不能信。
手机产商、芯片厂商越来越追求芯片的跑分数值,Benchmark (基准性能测试)逐渐成为衡量设备性能的重要标准。
但在一味追求分值的同时,厂商们也逐渐深陷“分值禁锢”之中,近期的联发科,就是如此。
联发科芯片 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