现在的手机跑分,是否真的不能信。手机厂商、晶片厂商越来越追求晶片的跑分数值,Benchmark(基準性能测试)逐渐成为衡量装置性能的重要标準。
但在一味追求分值的同时,厂商们也逐渐深陷「分值禁锢」之中,近期的联发科,就是如此。
联发科晶片 Benchmark 造假
事情的开始,要从 OPPO Reno3 说起。
外媒 Anandtech 发现,搭载 P95 CPU 的欧洲版 OPPO Reno3 Pro 的跑分数值比搭载性能更强大的最新 Dimensity 1000L CPU 的国行版 Reno3 的高,这引起 Anandtech 的质疑。
由此,Anandtech 分别使用匿名版(可帮助分值作弊)和常规版的 PCMark 对 MediaTek P95 CPU 进行跑分。
结果显示,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 找到了 PCMark 的 APK ID,发现 ID 中採用了一些电源管理提示,其中一个共同的提示为「运动模式」。
该模式能够修正 SoC 晶片的一些 DVFS (动态电压频率调整)特性,比如始终以最大频率执行记忆体控制器。另外,在负载跟蹤方面,排程也被更改了设置,在工作负载时 CPU 核心的频率能够更快地上升,并停留更长时间。
不仅如此,其 APK ID 还包含了企业版的 GFXBench,虽然在清单中没有配置「运动模式」提示,但在使用应用程式是会改为默认的 DVFS、热力和调度器设置。
值得注意的是,「power_whitelist_cfg.xml」文件不仅存在于 OPPO 装置上,Anandtech 还在其他装置上(搭载联发科晶片的装置)发现了类似文件以及几乎相同的基準清单条目。如表所示(表中缺少 AI 测试,并非完整的基準测试列表):
巧合的是,在 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 在文中提及,更好地与用户体验建立联繫的唯一方式,就是让每个常规游戏在标準的功率範围内执行。也就是说,性能最具说服力的表现不是分值,而是产品本身。
- Mobile Benchmark Cheating: When a SoC Vendor Provides It As A Service
- Huawei & Honor’s Recent Benchmarking Behaviour: A Cheating Headache
- Why MediaTek Stands Behind Our Benchmarking Practices