白皮書下載:如何提高測量精度?
EETOP綜合整理自:Anandtech、雷鋒網等手機性能基準測試作弊已有很長的歷史,可追溯到整個行業(至少在智慧型手機行業時代如此),並且多年來一直是備受爭議的報導話題。幾年前,一度被認為靠譜的基準測試軟體,突然爆發了一場信任危機。原因是某些智慧型手機製造商在檢測到跑分工具時有作弊的行為,導致實際體驗未能達成消費者的預期。比如三星、華為等手機都被爆出過疑似跑分作弊的行為。以三星為例,2014 年,測試人員發現三星通過添加原始碼在基準測試中作弊,該代碼能夠檢測基準測試應用程式是否在手機上運行,一旦發現,則以更快的速度(532MHz,正常情況下為 480MHz)運行手機。由此,三星遭到了集體訴訟,且該訴訟長達 4 年。2019 年 9 月 30 日,三星敗訴,承認在基準測試中作弊,同意向 Galaxy S4 的購買者支付 10 美元賠償,總金額高達1340萬美元。
如今類似的事情還在上演,近期在聯發科晶片上也被發現了疑似跑分「作弊」的行為。聯發科Helio P95勝過天璣1000L ?事情的開始,要從 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,整個作弊機制似乎已經在存在了好幾年了:
Reno3 Pro -"運動模式" Benchmark 白名單
為了證明這一結論,Anandtech 對 Reno3 搭載的聯發科晶片作進一步調查。結果發現,在手機的固件(/vendor/etc 文件夾)中,包含一個「power_whitelist_cfg.xml」文件。
該文件中存在一個涵蓋各種基準測試的列表,包括 GeekBench、AnTuTu、3dbench,、PCMark、魯大師、AndroBench2 等。不僅如此,列表中還新增了人工智慧基準測試,包括 Master Lu AIBench、ZTH AI 。
Reno3 Pro -Non-public Benchmark Targeting
在這其中,Anandtech 找到了 PCMark 的 APK ID,發現 ID 中配置了一些電源管理提示,其中一個共同的提示為「運動模式」。
該模式能夠修正 SoC 晶片的一些 DVFS (動態電壓頻率調整)特性,比如始終以最大頻率運行內存控制器。另外,在負載跟蹤方面,調度器也被更改了設置,在工作負載時 CPU 核心的頻率能夠更快地上升,並停留更長時間。
不僅如此,其 APK ID 還包含了企業版的 GFXBench,雖然在清單中沒有配置「運動模式」提示,但在使用應用程式是會改為默認的 DVFS、熱力和調度器設置。
Sports Mode on Reno 3 (Dimensity 1000L)
Sports Mode on Reno 3 Pro (P95)
那麼,這個 "運動模式 "究竟有什麼作用呢?首先,它似乎修復了SoC的一些DVFS特性,比如一直以最高頻率運行內存控制器等。此外,調度器的設置也讓它的負載跟蹤更加激進---這意味著工作負載更容易讓CPU核心的頻率提升得更快,並在那裡停留更長時間,以獲得增強機制。
我們不確定_FPS_條目是這樣做的,但鑑於其明顯的命名,他們正在改變一些東西來改善基準數據。這裡最奇怪的是在F2FS設備上提升文件系統速度的條目,這可能是AndroBench等基準測試也被針對的原因。
值得注意的是,「power_whitelist_cfg.xml」文件不僅存在於 OPPO 設備上,Anandtech 還在其他設備上(搭載聯發科晶片的設備)發現了類似文件以及幾乎相同的基準清單條目。如表所示:
Oppo Reno3 Pro(P95) - 新固件與初始固件的對比
更可疑的是,我們很幸運地發現,這些列表似乎正在被隱藏。我已經從Reno3 Pro的初始現成固件中提取了文件。在過去的幾周中,OPPO將固件更新推送到了手機上,當我再次檢查文件中的某些內容時,我驚訝地發現基準條目消失了。
該機制是否被禁用?目前我們不知道現在這些條目已經移到哪裡了,但這款手機在很大程度上仍然在基準測試中觸發了它的運動模式。
聯發科回應對於 Anandtech 提出的質疑,聯發科方面也給出了正面回應。以下為回應聲明:
聯發科技遵循公認的行業標準,並且對基準測試準確地代表了我們晶片組的功能充滿信心。在測試和基準測試由我們的晶片組驅動的設備時,我們與全球設備製造商緊密合作,但最終,品牌商可以靈活地配置自己認為合適的設備。許多公司將設備設計為在進行基準測試時以最高性能運行,以顯示晶片組的全部功能。這揭示了任何給定晶片組的性能能力的最高端。
當然,在現實世界中,有許多因素將決定晶片組的性能。聯發科技的晶片組旨在優化功耗和性能,以在儘可能延長電池壽命的同時提供最佳的用戶體驗。如果有人正在運行諸如要求苛刻的遊戲之類的計算密集型程序,則該晶片組將智能地適應計算模式以提供持續的性能。
這意味著,隨著晶片組根據出色的用戶體驗所需的功能和性能動態管理 CPU,GPU和內存資源,用戶將從不同的應用程式中看到不同的性能水平。此外,某些品牌在不同地區具有不同類型的模式,因此設備性能可能會因地區市場需求而異。
我們認為,在基準測試中展示晶片組的全部功能與其他公司的做法是一致的,並且可以為消費者提供有關設備性能的準確信息。
聯發科認為,其公布的 Benchmarks 分值代表了晶片組驅動設備時的最高分值,代表了晶片組性能的最高端,所以不存在跑分造假的行為。同時聯發科指出,這一做法與其它公司的做法是一致的,也就是說,行業裡的廠商都是這麼做的。
但這一回應遭到了 Anandtech 的反駁。Anandtech認為,聯發科並無回應出問題的本質。。。
更多回應內容大家可以查看原文:
https://www.anandtech.com/show/15703/mobile-benchmark-cheating-mediatek
推薦關注:創芯大講堂
創芯大講堂是EETOP旗下在線教育平臺,綜合IC設計(模擬晶片設計仿真、CMOS射頻晶片仿真設計、數字前端、數字後端、FPGA、Verilog、RISC-V等等)、製造、封裝多門類課程,同時也隨時更新目前熱點領域教程涵蓋嵌入式、電源設計、通信技術、硬體設計等。
歡迎大家通過多種渠道訪問創芯大講堂
創芯大講堂微信公眾號:eetopedu
網址:edu.eetop.cn 課程諮詢人工微信號:ssywtt