高通驍龍855性能首測:繼續領先安卓陣營但離蘋果仍有差距
隨著一代設備的發布,高通依舊傳承著提前展示最新一代SoC性能的傳統。不過意外的是,高通今年沒有像往常一樣選擇在聖地亞哥總部舉辦活動,而是在CES上公開展示了驍龍855,搶先於三星Exynos 9820讓我們了解其實際表現。
自驍龍835開始,高通一直堅持Arm授權的BoC(Built on ARM Cortex Technology)模式,在公版架構的基礎上進行“微調”,驍龍855也不例外,其使用的Kyro 485核心是基於Cortex A76優化定製而來。
既是微調,所做的自然都是小改動,高通也並沒有公開細節,只透露Kyro 485擴充了重排序緩衝區(CortexA76公版為128條目)、優化了預取器並改進了分支數據結構。
驍龍855的CPU集群雖然仍使用“4+4”的big.LITTLE配置,但其大核心集群實際上為“1+3”設計, 其中1顆大核使用了更適合高頻率的物理電路設計,最高頻率可達2857MHz,並為其配備了更大的512KB L2緩存;剩餘3顆大核心的最高頻率為2439MHz,配備256KB L2緩存。
不過,這個“1+3”大核心集群雖然使用了異步時鐘平面設計,但4顆核心仍然共享相同的電壓平面。為此高通解釋說,這是出於成本、複雜性以及效率之間的折衷,因為增加額外的電壓平面則需增加另一個帶有電感器和電容器的PMIC軌道。
大體來看,Kryo 485可能是高通有史以來性能提升幅度最大的核心,與驍龍845所使用的Kryo 385相比,Kryo 485的性能提升了45%。而與同樣使用了Cortex A76的麒麟980相比,二者的總體性能應處於相仿的水平,高通的“微調”可能在某些場景下有一定優勢,此外他們的緩存/內存子系統性能也可能會有一些不同。
本次測試驍龍855所用的是高通最新的驍龍855 QRD平台(Qualcomm Reference Design,高通參考設計)。不得不說,今年這款QRD是高通歷來最“商業化”的設計,一改以往“傻大黑粗”的demo風格,如果不是那些標籤,很難讓人聯想到這只是一個參考平台。
安兔兔和Geekbench
在硬核測試之前,先來看看常規的安兔兔和Geekbench。
據微博知名測評人張威的現場測試,驍龍855在安兔兔中拿到了超過36萬分的成績,是目前安卓陣營絕對的第一名。具體到字項中,驍龍855在CPU項目上與麒麟980不相上下,GPU項目上則看齊蘋果A12 Bionic,大幅領先所有安卓SoC,而UX和MEM受系統影響較大,僅供參考。
Geekbench方面,驍龍855單核成績超過3500分,略微領先麒麟980的3300分,但相比蘋果的A11的4200+和A12的4800+還差的很遠,離使用超強魔改版Exynos M3架構的Exynos 9810也還有約300分的差距;多核方面,11000+的分數已經屬於現今手機的最高水平,包括蘋果A12在內。
驍龍855的大問題:內存延遲
在去年的驍龍845上,高通在緩存和內存之間增加了一級3MB系統緩存,為各種IP塊充當SoC範圍的緩衝區,可減少高延遲的內存訪問量,從而提高系統效率。不過,系統緩存最出名的應用要屬蘋果的A系列處理器,自A7以來蘋果一直都在使用的這種設計。
高通在驍龍845上引入這樣的設計固然令人興奮,但這也是一把雙刃劍,在減少內存訪問量的同時,也使內存延遲增加了30%,可能在一定程度上限制了CPU的性能。然鵝高通已經確認,驍龍855似乎沒有在這方面做出任何重大改進,其係統緩存的設計與驍龍845中完全相同。
經過對緩存/內存的測試,可以在對數圖中看到緩存/內存的層次結構,並更好的可視化層次結構之間的各種延遲跳轉:
測試結果表明,驍龍855相比驍龍845,即便在大約2.8GHz的同頻率下,L2緩存的延遲也有一定改善,而二者的DSU系統緩存均為2MB,延遲也幾乎是相同的,麒麟980的4MB系統緩存雖然更大,但響應時間卻慢了20%。
換成線性圖來看,驍龍855的內存延遲確實略低於驍龍845,但不好直接確定是內存控制器的改進,也可能是得益於頻率更高的LPDDR4X 2133MHz內存。而與麒麟980相比,二者相同規格的內存,但驍龍855的延遲要明顯高於麒麟980。
CPU性能和功耗測試
SPEC2006是一個重要的基準測試軟件,它與其他測試軟件的區別在於所處理的數據集更大更複雜。作為基準測試更有代表性,它可以充分展示微架構的更多細節,特別是在內存子系統性能方面。
在左側軸上,條形圖表示給定工作負載下的電能消耗情況,越長的條形意味著消耗的電能越多。條形上的文字標註顯示的是消耗電能的具體數值(單位為焦),以及測試期間的平均功耗(單位為瓦)。
需要注意的是,驍龍855 QRD平台的功耗管理可能與正式發售的手機產品有所不同,本次測試結果只作為總體參考。
驍龍855的性能非常出色,在SPECint2006測試中,驍龍855的性能相比驍龍845提升了51%,能耗比則提升了39%;在SPECfp2006測試中,驍龍855相比驍龍845的性能提升更大,達到了61%。
而與同樣基於Cortex A76的麒麟980相比,驍龍855也要略勝一籌,在SPECint2006測試中領先4%,在SPECfp2006測試中則領先9%。
對測試成績進行詳細研究後發現,在驍龍855與麒麟980的對抗中,一方面驍龍855的頻率提高了9%,並通過架構上的微調來改善運算效能,另一方面麒麟980則通過更大的系統緩存來改善讀寫效率。
在絕大多數情況下,兩款處理器都是並駕齊驅,只是在某些特定負載下存在分歧。在不太吃內存性能的項目中,驍龍855的頻率優勢得以充分發揮,而在延遲敏感性更高的項目中,這種差異又會縮小甚至逆轉。
當然,眾多測試項中也總有幾個例外的,比如462.libquantum測試項,驍龍855領先麒麟980達31%之多,這已經不是單純頻率高一點和緩存延遲低一點所能達成的結果。高通稱這主要是因為其架構上的特殊改進,然後又傲嬌的表示不告訴你具體改了哪裡~
又比如在458.sjeng項目中,驍龍855的性能落後麒麟980大約13%,這本是一個對分支預測性能敏感的測試項,高通也表示驍龍855在Cortex A76公版的基礎上改進了分支數據結構,最終結果卻反而落後於公版。(PS:反向奶?)
再比如429.mcf,這本是一個對內存延遲敏感的測試項,但驍龍855的表現卻非常出色,這又一次違背了這違背了驍龍855的內存延遲高於麒麟980的前情,莫非是驍龍855延遲更低的系統緩存在此立了一功?
SPECfp2006測試結果也大體上差不多,在部分測試項中驍龍855比麒麟980更塊,尤其是447.dealII和453.povray這兩項,領先幅度達到了17%和22%;而在另一部分對內存敏感的項目中,驍龍855又被麒麟980追平,二者並駕齊驅。
總的來說,驍龍855在CPU性能上的出色其實是意料之中的,而能耗比的表現才是真正讓人們吃下了定心丸。測試結果表明,Kryo 485核心的高能耗比區間非常寬,即便是運行在2.85GHz的高頻上依然是非常高效的,這也代表著2019年的安卓旗艦手機將具有出色的電池續航表現。
推理性能優秀,但缺少API支持
除了CPU和GPU之外,高通對驍龍855的另一個宣傳重點是其Hexagon 690加速器模塊。
Hexagon 690的矢量管線相比驍龍845上的Hexagon 680翻了一倍,傳統圖像處理任務以及機器推理工作的性能也相應翻倍。更重要的是,高通為其專門設計了一個張量加速單元,它可以更好地分流推理任務。
高通宣稱Hexagon 690“總共具有7Tops”的計算能力,但是並未透露包括張量加速單元在內各部分的具體性能信息。
然而在硬件性能之外,張量加速單元目前的API支持情況卻並不完善,高通表示今年晚些時候才會將相關特性提供給NNAPI,目前只有公司內部的測試軟件才能調用這個張量加速單元。
這也就意味著,在目前本就非常有限的AI測試軟件中,沒有一個能夠真正測試驍龍855的AI性能,測試結果僅能體現Hexagon 690作為DSP在傳統矢量管線方面的改進。
本次測試依然使用AI-Benchmark軟件,這是由瑞士ETH蘇黎世計算機視覺實驗室的Andrey Ignatov 的新基準測試程序,也是第一個廣泛使用Android 8.1新NNAPI而不依賴於每個SoC供應商自己的SDK工具和API的基準測試程序,能更準確的體現使用NNAPI的應用程序的神經網絡性能。
需要記住的一點是,NNAPI不僅僅是一些能夠在NPU上運行神經網絡模型的通用轉換層,而且API和SoC供應商的底層驅動程序必須能夠支持公開的函數,並且能夠在IP塊上運行它。這裡的區別在於,使用NNAPI尚未支持的特性(必須退回到CPU上運算)的模型和能夠硬件加速並對量化的INT8或FP16數據進行操作的模型。還有一些模型依賴於FP32數據,這裡同樣依賴於底層驅動程序,它可以在CPU上運行,也可以在GPU上運行。
在依靠CPU運行的第一組測試項,驍龍855的表現中規中矩。由於屬於短時間突發的工作負載,此處的性能受系統調度程序的影響更大,即考驗系統能在多快的時間內充分調用起CPU性能。
接下來測試的是適用於大多數硬件加速設備的8位整數量化模型,在這些測試項中驍龍855的性能均處於領先地位。在Pioneers的項目中可以清楚地看到HVX單元的性能確實翻了一番,驍龍855完成運算所用的時間只有驍龍845的一半;而在Cartoons項目中,驍龍855的性能增幅更大,這可能是由於高通改進了驅動程序,讓代碼能更好的利用新硬件。
在測試FP16的項目中,驍龍855終於受到了挑戰。由於麒麟980已經公開了對其硬件的支持,這些測試得以順利的跑在NPU上,而驍龍855則只能使用GPU,不過Adreno 640在這些測試項中倒也不怎麼虛,只是略微落後,表現很是驚人,這也側面證明NNAPI的功能和性能都非常成熟,可以充分利用各種加速單元。
而到了FP32測試項中,驍龍855再次依靠強大的GPU加速以壓倒性的優勢制霸全場,當然這也是意料之中的……
測完AI-Benchmark,順便測測魯大師的AIMark。AIMark沒有使用NNAPI,而是基於高通的SNPE框架和蘋果的CoreML進行加速,這也讓驍龍855和蘋果A12難得的可以湊在一起進行比較。
在AIMark中,驍龍855相比驍龍845有了2.5~3倍的性能提升。總的來說,即使目前的測試軟件還無法調用張量加速單元,驍龍855的推理性能也非常出色。
順便一提,高通還現場展示了驍龍855運行InceptionV3內部測試的情況,該測試由HVX單元和新的張量加速單元共同加速,推斷性能達到每秒148次,與不使用張量加速單元的AIMark相比,性能提升了26%。
系統性能
雖然具體測試軟件中的穩態負載性能很重要,但模擬實際使用情況的系統測試顯然更具有代表性,其性能不僅取決於硬件,還取決於軟件,例如CPU調度以及API等環節都會對設備的最終使用體驗產生很大影響。
讓人心下一涼的是,驍龍855在PCMark的Web瀏覽器測試中開局不利。由於某些未知原因,驍龍855 QRD平台無法與現有的驍龍845手機拉開優勢,嚴重偏離了對標Mate 20與麒麟980的預期。
視頻編輯測試的得分也相當平庸,不過這個測試項已經基本上達到了天花板,今天的大多數設備彼此之間都無法拉開實質性的差距。
文字編輯測試是PCMark中最重要的子項目之一,驍龍855 QRD平台終於恢復了正常表現,與Mate 20鬥了個旗鼓相當。
圖片編輯測試的特點是較短的重型RenderScript突發負載,這一項中驍龍855 QRD平台表現良好,不過卻輸給了小米MIX 2S和一加6兩款驍龍845旗艦機,可見軟件對系統性能的影響。
在最後一項數據處理測試中,驍龍855表現良好,但仍然與麒麟980結伴輸給了谷歌Pixel 3……
總體而言,驍龍855 QRD平台在PCMark中的表現不錯,與使用麒麟980的Mate 20處於同一水平,不過卻時常妖異的雙雙輸給驍龍845,到底該說高通的軟件支持好還是不好呢?
其他基於Web的基準測試,如Speedometer 2.0和WebXPRT 3,也都是類似的結果,驍龍855相比驍龍845的性能提升只有不到20%,與麒麟980相比也有顯著的差距。
高通方面也驚訝於這樣的結果,稱將對此進行研究(老鐵你們自己內部是沒測這些麼?),並例常表示正式設備上的調度程序和軟件可能會提高性能。
性能調度測試
這是一項你沒見過的船新測試,可以檢測設備的DVFS響應能力,也就是系統能在多快的時間內充分調用起CPU性能。
驍龍855 QRD平台的調度過程呈階梯式,先拉起1.8GHz的小核心,在大約40ms後負載便轉移到2.45GHz的大核心上,隨後又再次轉移到2.85GHz的核心上,這是一種非常快速的擴展行為,從睡眠狀態切換至最大性能狀態的整個過程耗時大約100ms。
作為對比,谷歌Pixel 3非常暴力,一步到位直接拉起大核心,僅30ms就完成了切換;而三星S9+的調度方式更為平緩,小核心和大核心的調用均按部就班,一級一級的提升頻率,需要大約135ms才能完成切換。
與麒麟980相比,驍龍855的調度過程其實並不慢,奇怪之處在於,驍龍855在將負載從小核心遷移至大核心時會出現約3ms的停頓,這在三星S9+上也有類似體現,似乎基於高通公版調度程序的設備均有這樣的特徵。
(在驍龍855輸給驍龍845的項目中,三星使用驍龍845的Note 9同樣很差,看來這個鍋很可能就是高通公版調度程序來背了,最終系統表現還是要看廠商能不能搞出自己的高效調度程序。)
GPU性能&功耗測試
高通對於驍龍855中Adreno 640的性能宣傳比較保守,稱其相比驍龍845上的Adreno 630提升了20%,這和其宣稱新GPU的ALU規模增加50%明顯不符,再加上全新的7nm工藝,很多人都認為驍龍855的GPU性能應該提升的更多。
Kishonti的GFXBench多年來一直是行業標準,新的Aztec測試給我們帶來了不同的工作量。不久前Kishonti發布了GFXBench的5.0版本,這個版本建立在新的渲染引擎上運行,並引入了High Tier和Normal Tier模式下的全新測試場景Aztec Ruins。新的測試更加考驗著色性能,利用更複雜的效果來強調GPU的算術能力。
測試結果顯示,高通誠不欺我,無論是在Aztec High還是Aztec Normal場景下,驍龍855的圖形性能相比驍龍845提升甚至還達不到20%這一官方數據,明顯不如蘋果的A12相比A11的進步來的大。
不過在能耗比方面,驍龍855表現非常出色,僅略微落後於蘋果A12,大幅領先麒麟980(Arm出來接鍋),GPU功耗也從驍龍845的5W下降至4.44瓦。
而在T-Rex測試場景中,驍龍855的性能提升幅度更為有限,由於T-Rex測試場景已經比較老舊,在現代SoC上的幀速率普遍非常高,通常可達到一二百幀,因此在許多方面都會受到製約,很難搞清楚瓶頸究竟在哪裡,參考價值遠不如更加現代的曼哈頓3.1和Aztec Ruins Vulkan測試場景。
能耗比方面的情況與前麵類似,驍龍855相比驍龍845提高約30%,同樣僅略微落後於蘋果A12而大幅領先於麒麟980。
總的來說,此次驍龍855的性能雖然提升幅度不算很大,但能耗比表現非常優秀。鑑於新GPU的ALU規模增加了50%,高通此番可能是選擇了增大GPU規模並壓低頻率的方式來提升能耗比。
總結
2018年是高通非常成功的一年,驍龍845作為一顆全面且可靠的SoC被旗艦手機廣為使用,現在,驍龍855也將要延續這一趨勢。
Arm小核心的性能在實際使用中很容易成為短板,這意味著我們未來可能會看到更多像麒麟980這樣的“大-中-小”三集群SoC。驍龍855選擇了“1+3+4”的設計,雖然細節略有差異但思路相同,Arm也應該思考一下小核心是否還應該繼續使用性能低下的順序執行架構。
CPU性能方面,驍龍855在SPEC2006這樣的穩態工況下表現得非常好,高通對架構的優化得以體現,但緩存/內存子系統似乎仍然遺留著驍龍845中的一些延遲問題,系統級緩存在設計上還有待進一步調整。在系統性能測試中,驍龍855的表現也要低於預期,在許多項目中均以較大劣勢輸給了麒麟980。
而GPU方面,驍龍855的表現也一反常態,相比前代性能提升幅度只有不到20%。倒不是說這個性能不夠好,雖然目前在安卓陣營中仍然穩坐第一名,但既然出自高通之手,要求和期待高一些也正常,不是麼?
(據傳三星Exynos 9820將使用Mali G76 MP12的設計,GPU性能相比Exynos 9810提升40%,各位看官可以自行算算……)
唯一讓人感覺無比放心的反倒是AI推理性能,AI-Benchmark的FP16測試在不使用張量加速單元的情況下,讓了一隻手依然幾乎打平麒麟980,INT8和FP32項目中則是橫掃全場,魯大師的AIMark更是連蘋果A12一起連鍋端。
當然,對於測試中那些異常的表現,高通也表示了關注並將對其進行研究。我們只能寄希望於這確實是由於軟件方面的不足,但願正式上市的手機可以換用更好的調度程序。
而作為消費者,剩下的就是等待首批驍龍855旗艦機的上市了。