联发科处理器被抓跑分“作弊”:P95性能比天玑1000L还高?
2020-04-10 12:29:27 EETOP综合整理几年前,一度被认为靠谱的基准测试软件,突然爆发了一场信任危机。原因是某些智能手机制造商在检测到跑分工具时有作弊的行为,导致实际体验未能达成消费者的预期。比如三星、华为等手机都被爆出过疑似跑分作弊的行为。
以三星为例,2014 年,测试人员发现三星通过添加源代码在基准测试中作弊,该代码能够检测基准测试应用程序是否在手机上运行,一旦发现,则以更快的速度(532MHz,正常情况下为 480MHz)运行手机。由此,三星遭到了集体诉讼,且该诉讼长达 4 年。2019 年 9 月 30 日,三星败诉,承认在基准测试中作弊,同意向 Galaxy S4 的购买者支付 10 美元赔偿,总金额高达1340万美元。
如今类似的事情还在上演,近期在联发科芯片上也被发现了疑似跑分“作弊”的行为。
事情的开始,要从 OPPO Reno3 说起。
外媒 Anandtech 发现,搭载 P95CPU 的欧洲版 OPPO Reno3 Pro 的跑分数值比搭载性能更强大的最新 Dimensity 1000L CPU 的国行版 Reno3 的高,这引起了 Anandtech 的质疑。
由此,Anandtech 分别使用匿名版(可帮助分值作弊)和常规版的 PCMark 对 MediaTek P95 CPU 进行跑分。
结果显示,P95 CPU 的真实总分比匿名版得分低 30%;很自然,也很不幸,我的第一个想法是,一定是有什么作弊行为发生了。我们联系了UL的朋友,希望得到一个匿名版的PCMark--过去那里的团队在阻止行业内的作弊行为方面也起到了很大的作用。不出乎我的意料,两个版本的基准分数确实存在差异--但我还是对分数的偏差幅度感到震惊:总分相差30%,而在重要的子测试中,在写入负载方面,二者得分的差异甚至达到 75%。
那么检测到的作弊行为究竟是芯片厂商,还是手机厂商造成的?
Anandtech同时测试了一款骁龙765G变体的Reno3 Pro。如果这个机制是Oppo造成的,那么这款设备肯定也会在PCMark中检测到并作弊。但实际上情况并非如此:这款设备在基准测试中的表现似乎和其他任何应用中的表现一样好。
这样的对比结果表明并非是 OPPO Reno3 Pro 导致的跑分差异。也就是说,造成跑分差异的根源在于联发科芯片。
再深入挖掘一下联发科版本的Reno3,整个作弊机制似乎已经在存在了好几年了:
为了证明这一结论,Anandtech 对 Reno3 搭载的联发科芯片作进一步调查。结果发现,在手机的固件(/vendor/etc 文件夹)中,包含一个“power_whitelist_cfg.xml”文件。
该文件中存在一个涵盖各种基准测试的列表,包括 GeekBench、AnTuTu、3dbench,、PCMark、鲁大师、AndroBench2 等。不仅如此,列表中还新增了人工智能基准测试,包括 Master Lu AIBench、ZTH AI 。
在这其中,Anandtech 找到了 PCMark 的 APK ID,发现 ID 中配置了一些电源管理提示,其中一个共同的提示为“运动模式”。
该模式能够修正 SoC 芯片的一些 DVFS (动态电压频率调整)特性,比如始终以最大频率运行内存控制器。另外,在负载跟踪方面,调度器也被更改了设置,在工作负载时 CPU 核心的频率能够更快地上升,并停留更长时间。
不仅如此,其 APK ID 还包含了企业版的 GFXBench,虽然在清单中没有配置“运动模式”提示,但在使用应用程序是会改为默认的 DVFS、热力和调度器设置。
那么,这个 "运动模式 "究竟有什么作用呢?首先,它似乎修复了SoC的一些DVFS特性,比如一直以最高频率运行内存控制器等。此外,调度器的设置也让它的负载跟踪更加激进---这意味着工作负载更容易让CPU核心的频率提升得更快,并在那里停留更长时间,以获得增强机制。
我们不确定_FPS_条目是这样做的,但鉴于其明显的命名,他们正在改变一些东西来改善基准数据。这里最奇怪的是在F2FS设备上提升文件系统速度的条目,这可能是AndroBench等基准测试也被针对的原因。
值得注意的是,“power_whitelist_cfg.xml”文件不仅存在于 OPPO 设备上,Anandtech 还在其他设备上(搭载联发科芯片的设备)发现了类似文件以及几乎相同的基准清单条目。如表所示:
更可疑的是,我们很幸运地发现,这些列表似乎正在被隐藏。我已经从Reno3 Pro的初始现成固件中提取了文件。在过去的几周中,OPPO将固件更新推送到了手机上,当我再次检查文件中的某些内容时,我惊讶地发现基准条目消失了。
该机制是否被禁用?目前我们不知道现在这些条目已经移到哪里了,但这款手机在很大程度上仍然在基准测试中触发了它的运动模式。
对于 Anandtech 提出的质疑,联发科方面也给出了正面回应。以下为回应声明:
联发科技遵循公认的行业标准,并且对基准测试准确地代表了我们芯片组的功能充满信心。在测试和基准测试由我们的芯片组驱动的设备时,我们与全球设备制造商紧密合作,但最终,品牌商可以灵活地配置自己认为合适的设备。许多公司将设备设计为在进行基准测试时以最高性能运行,以显示芯片组的全部功能。这揭示了任何给定芯片组的性能能力的最高端。
当然,在现实世界中,有许多因素将决定芯片组的性能。联发科技的芯片组旨在优化功耗和性能,以在尽可能延长电池寿命的同时提供最佳的用户体验。如果有人正在运行诸如要求苛刻的游戏之类的计算密集型程序,则该芯片组将智能地适应计算模式以提供持续的性能。
这意味着,随着芯片组根据出色的用户体验所需的功能和性能动态管理 CPU,GPU和内存资源,用户将从不同的应用程序中看到不同的性能水平。此外,某些品牌在不同地区具有不同类型的模式,因此设备性能可能会因地区市场需求而异。
我们认为,在基准测试中展示芯片组的全部功能与其他公司的做法是一致的,并且可以为消费者提供有关设备性能的准确信息。
联发科认为,其公布的 Benchmarks 分值代表了芯片组驱动设备时的最高分值,代表了芯片组性能的最高端,所以不存在跑分造假的行为。同时联发科指出,这一做法与其它公司的做法是一致的,也就是说,行业里的厂商都是这么做的。
但这一回应遭到了 Anandtech 的反驳。Anandtech认为,联发科并无回应出问题的本质。。。
更多回应内容大家可以查看原文:
https://www.anandtech.com/show/15703/mobile-benchmark-cheating-mediatek
免责声明:本文由作者原创。文章内容系作者个人观点,转载目的在于传递更多信息,并不代表EETOP赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时联系我们,我们将在第一时间删除!