新四季網

安兔兔節操碎一地 Intel Atom高分真相

2025-04-21 08:06:25

    泡泡網CPU頻道7月13日 第三方調研公司ABI Research以安兔兔成績盛讚Intel Atom處理器性能超過高通、三星一事其實是5月中發生的,今天EETimes上篇博文又談到了這件事,認為ABI只用安兔兔成績說事有些武斷,他又列舉了其他評測項目的成績來反駁,並認為安兔兔從2.9.3版到3.x的評分機制變化導致Intel處理器得分大幅上升,所以才佔到了優勢。

    沒想到這件事並沒有結束,既然雙方爭論的焦點是安兔兔軟體,Anandtech論壇上就有一位愛較真的網友(應該是個程式設計師或者開發者)分析了安兔兔軟體,結果卻讓人很震驚,他認為安兔兔有故意為Intel處理器優化甚至使用對ARM不公平的方式了評分。

    如果此事成真,那麼安兔兔的節操就要灑滿一地了。

    下面來看一下他的分析。

    安兔兔是怎樣的一個程序

    首先是解包安兔兔程序,APK程序實際上就是一個標準的ZIP壓縮文件,這一步沒什麼難度。解包後在lib庫中發現了X86和ARM-v7a目錄,分別對應Intel和ARM處理器。然後再解包libabenchmark.so文件,他用的是objump軟體。

    下面就來理解一下安兔兔軟體的根基了,原文作者從解包出來的文件中發現安兔兔實際上就是nbench,因為二者的功能及函數之類的東西都是一樣的,我們可以說安兔兔的CPU整數和浮點測試都是基於nbench的,後者的源碼地址在。(原來安兔兔的測試部分不是自己開發的,也開源程序DIY的啊)

    現在繼續我們的目的,揭開為啥安兔兔3.x測試中Intel處理器跑分這麼高的原因。之前EETimes一文質疑的原因就是在於從2.9.3版升級到3.0之後,Atom處理器總分及內存測試分別提升了122%、292%,而三星Galaxy S4隻提升了53%、59%,這其中的區別耐人尋味。

    Atom超高跑分第一個疑兇:編譯器

    找出的第一個「疑兇」是編譯器,安兔兔針對X86使用的是ICC編譯器,這是一種公認的高質量矢量化編譯器,而矢量化恰恰是ARM處理器不擅長的,因為後者缺少整數NEON指令。

    安兔兔針對ARM處理器使用的是GCC編譯器,而且也不支持ARM的NEON指令,因為存在著Tegra 2這樣早起的處理器不支持NEON指令的情況,但是現在來看這些不是理由,NDK中使用獨立代碼支持NEON指令不是難事,這也是Google的文檔中標準的開發範例。

    令人奇怪的就是安兔兔不按照Google的開發範例支持原本應該支持的功能,卻對不屬於NDK標準支持之內的ICC編譯器青睞有加。

    編譯器的問題只是一個開始,下面還有更精彩的,它們的作用甚至比編譯器更「出色」。

    第二疑兇:代碼優化

  Nbench測試時會檢查CPU是怎樣執行簡單的按位操作的,包括shift位移、and加、or或等,為了執行這些,它會在內存載入一系列bit,每次載入一個,具體的代碼如下:

    再來看ARM和X86是如何具體執行的。

    ARM處理器執行的代碼

    X86執行的代碼

    X86上的代碼在做的是講整個32bit運行到0或者1,其中的f64c3和f64c6是關鍵。它用這兩個指令取代了ARM循環中的32次迭代。這個的作用就不需多說了,X86用這種方式獲得了十多倍的運行速度提升。

    這種做法打破了整個測試過程。當編譯器本來打算用一些被測試程序認定為正確的操作來提升測試程序的性能時,它實際上並沒有執行真正的測試程序功能。典型的例子就是如果結果沒有被讀取,它就省去了代碼,或者是在輸入數據被認為是常量時,它可以將原本需要的運行時間縮減到只需編譯時間即可。

    在這種情況下Intel肯定會宣稱這是他們正當的優化而已,但是原文作者不贊同,認為這種優化很難被當做正常的代碼,用處也很有限,因為沒誰會用這樣的代碼來執行。這種伎倆更應該被認為是一種作弊,因為當運行長度不是非常大的時候它甚至會更慢。

    更重要的是,這種優化是在最近的一次版本升級中才出現在ICC中的,作者不認為他們是最近才發現了這種優化的價值,更可能的情況是他們發現這種優化可以數倍提升安兔兔分數,或者這也可以解釋為什麼最近曝光的下一代Atom處理器在1.1GHz頻率下都能以4萬的高分秒了2.3GHz的驍龍800了。

    我們簡單歸納一下作者的觀點和論據:Atom處理器跑分高有兩個原因,一個是編譯器的原因,X86使用的ICC編譯器優化很好,而針對ARM所用的GCC編譯器甚至都不能支持ARM的NEON指令。第二個就是安兔兔代碼中,將X86運行測試程序的代碼「優化了」,只需2個指令就能完成ARM處理器需要進行的32次迭代,但是這種優化對實際性能沒有好處,這種反常的設計頗有尋味之處。

    原文最後把矛盾的焦點轉向了安兔兔,因為他們默認了這樣的性能提升,還認為安兔兔有可能是收錢了(probably for a price),不然這些反常的現象是沒法解釋的。

    Intel、ARM出面掀起新高潮

    原文的翻譯差不多完了,因為是技術文章,個別語句可能把握的不夠準,不過大體意思我們是知曉了的。我能這麼早看到這篇文章其實是微博所賜,發這個連結的正是ARM移動市場經理王駿超EW,微博發出之後很快就有人回復,其中一個人則是Intel中國研究院首席工程師吳甘沙,看完Intel對ARM還是很關注的嘛,這讓人想起了錢鍾書說過的一句話:情敵之間的掛念有時候要比情人之間的牽掛還要多。

    王先生雖然發了連結,不過自己並沒有說太多,但他顯然是站在揭黑幕、維護ARM的立場上的,而吳先生也客氣地解釋了這個問題,他認為編譯器也是架構競爭力的一部分,用ICC無可厚非,而且ARM的NEON指令是比不過Intel的SSE 4.x指令集的。他還認為原文的分析並不能解釋Atom在安兔兔多數程序上的優勢。

    總之,現在這件事已經多多少少地從媒體牽扯到了ARM、Intel兩家公司出面了,而涉及最深的應該是安兔兔,目前還沒有他們的表態,只是從這篇文章的分析來看,安兔兔不管有沒有收錢,在這件事上都是有不光彩行為的。■

同类文章
銳龍7000馬甲太多?全新貼紙一招快速辨別Zen4處理器

銳龍7000馬甲太多?全新貼紙一招快速辨別Zen4處理器

  今年,AMD銳龍7000系列筆記本處理器四種架構五大系列混雜,其中只有兩個系列採用了全新架構,其餘為舊款重製的馬甲型號,這可能讓不少普通消費者感到困惑,無從辨別哪一款才是全新的「Zen4」架構CPU。  最近,AMD向合作夥伴發布了新的材料,解釋稱當筆記本電腦上的橙色貼紙意味著它基於 Zen4
AMD品牌日來襲 京東11.11促銷火熱進行中

AMD品牌日來襲 京東11.11促銷火熱進行中

  隨著前兩天AMD京東11.11開門紅活動盛大開啟,豐富的AMD全線產品促銷盛宴讓廣大玩家激動不已,而活動仍然在火熱進行中,現已成功進入第二階段,更多驚喜的超值促銷等待著DIY玩家們的繼續參與。本次活動11月6日為AMD品牌日,活動熱力持續升級包含了直降秒殺、滿減、套包鉅惠、返E卡等豐富的活動豪禮

優異旗艦處理器還用矽脂?Intel這波可不夠良心

    Intel 在今年發布了全新發燒級的酷睿處理器i9,性能一下子有了不小的提升,玩家們也都開玩笑說道,多年來擠牙膏的 Intel 這次是擠多了。在性能提升的同時,玩家們還希望的就是 Intel 能夠放棄使用矽脂,不過先發售的i9-7900X並沒有做到。    在處理器的核心與頂蓋之間使用釺焊代
AMDQ1虧損超1億 賣X86技術給中國廠商

AMDQ1虧損超1億 賣X86技術給中國廠商

    Intel日前的財報表現還不錯,但為了轉型,依然要裁員1.2萬人。老對手AMD今天也發布了今年Q1季度財報,當季營收8.32億美元,下滑了19%,不出意外地還是虧損了1.09億美元,但與去年同期1.8億美元的虧損相比已經收窄,已經在改善業績了。對AMD來說,他們開闢新業務還是蠻成功的,AMD
國產新超算推遲?棄Intel換自主CPU

國產新超算推遲?棄Intel換自主CPU

    目前世界上最快的超級計算機的我國的「天河2號」,它每秒能完成5億億次運算,超算廣州中心主任尹學峰近日稱,天河2號利用率在60%,可見需求還是很廣泛。    剛剛,曙光公司總裁歷軍近日在接受記者採訪時表示,繼千萬億次超級計算機曙光「星雲」之後,「十億億次」超級計算機曙光7000已開始研發。  
Intel會推配備優異核顯Skylake-C嗎?

Intel會推配備優異核顯Skylake-C嗎?

    由於14nm工藝的延期及戰略調整,Intel今年的桌面版Broadwell處理器有些尷尬——比預定時間晚了一年,沒發布多久就碰上了Skylake處理器上市。但另一方面,Broadwell桌面版又非常讓人期待,因為它是首款配備128MB緩存優異核顯的桌面處理器,圖形性能比普通核顯強多了。考慮到
體驗14nm的魅力 Skylake主機配置推薦

體驗14nm的魅力 Skylake主機配置推薦

    伴隨著更多Intel 14nm Skylake處理器、面向主流玩家的B150晶片組主板上市開售,以及DDR4內存的售價逐漸步入廣大普通消費者能夠接受的範圍,大傢伙終於可以在不擔心「預算爆表」的前提下愉快的組一套新主機來體驗14nm工藝帶來的「快感」了。    為什麼要這麼說呢?因為在Inte
桌面Broadwell要停產?Intel:不可能!

桌面Broadwell要停產?Intel:不可能!

    Broadwell五代酷睿是Intel歷史上比較奇怪的一代產品,主要精力都放在了移動平臺上(當然還有下一步的伺服器),而桌面上只有區區兩款i7-5775C、i5-5675C,還都是直接從移動版移植過來的。    這倆稀缺之物還有一個與眾不同的亮點,那就是保留了GT3e Iris Pro核芯顯
散熱器損壞Skylake處理器:真的掰彎了

散熱器損壞Skylake處理器:真的掰彎了

    之前有消息稱Skylake處理器很可能因為PCB變薄導致大型散熱器損害處理器,本來以為這個問題只不過是示警,但現在已經有杯具案例了——已經有用戶的Skylake處理器真的變彎了,甚至主板插槽也變形了,這下可要真的注意了。此外,除了鐮刀、貓頭鷹之外,越來越多的散熱器廠商也表態了。    之前我
Intel確認:Skylake處理器存死機Bug

Intel確認:Skylake處理器存死機Bug

    雖然PC走勢漸弱,Intel也把精力開始投入到了虛擬實境、物聯網等領域,但談及2015最激動的事,Intel CEO前不久亮相CES時還是把榮耀頒給了Skylake處理器。    作為第六代酷睿,Skylake驚喜並沒有達到讓所有人眼前一亮,性能就不談了,上市後還被曝出像是i3 TDP弄錯、