麒麟980性能表現大起底:既有情理之中,又有意料之外

文章推薦指數: 80 %
投票人數:10人

雷鋒網消息,不久前外媒ChipRebel剛剛發布了華為Mate 20手機的拆解,並公布了麒麟980處理器的透視照片,讓我們有了一窺這款讓華為表示「穩了」的處理器,並首次看到Arm全新Cortex A76 CPU和全新Mali G76 GPU的真容。

當高通和三星在2016年下半年發布驍龍835和Exynos 8895這兩款使用10nm LPE工藝的產品時,麒麟960卻只能選擇台積電16nm FFC工藝,這種劣勢顯著的體現在晶片的能耗比方面。

麒麟970雖然縮小了製造工藝方面的差距,但由於其設計周期較早,錯過了Arm當時最新的Cortex A75架構,只能基於Cortex A73架構設計,而推出較晚的驍龍845則全面基於Cortex A75和Cortex A55改進。

在這次的麒麟980,華為終於再次集齊了最先進的製造工藝和最新的架構設計,從這方面來看,麒麟980背負著比麒麟970和麒麟960更大的期望和歷史任務,有望複製甚至超越幾年前麒麟950的成功。

濃縮的都是精品

雖然華為在此前公布麒麟980時表示其核心面積小於100mm²,但實際上麒麟980的矽片尺寸要比官宣還有要小得多,僅為74.13mm²。

在CPU、GPU、NPU及內存等全面升級的情況下,麒麟980相比去年麒麟970的96.72mm²小了30%,可說是相當驚人了。

晶片的左上角是全新的Mali G76 MP10 GPU集群,雷鋒網曾介紹過,Mali G76達到Mali G72翻倍的性能只需132%的晶片面積,理論上單位面積性能提升了50%。

華為將麒麟980的GPU面積維持在了11.97mm²,僅稍大於驍龍845中Adreno 630的10.69mm²,遠小於Exynos 9810 Mali G72 MP18的24.53mm²和蘋果A12 GPU的14.88mm²。

GPU模塊右側是CPU模塊,Cortex A76架構在核心尺寸方面仍然非常小巧,配備512KB L2緩存時的單核面積僅為1.26mm²,同樣遠小於三星自研Exynos M3「貓鼬」架構核心的3.5mm²,甚至比不含L2緩存的蘋果A12的Vortex架構核心(2.07mm²)還要小。

此次華為充分利用了Arm的新DSU集群及異步CPU配置,將麒麟980中Cortex A76架構的高性能CPU集群細分為兩組,高頻率的一組運行在2.6GHz頻率上,另一組Cortex A76 CPU的運行頻率為1.92GHz(這應該是一個很好的能效比平衡點),各自運行在不同的頻率和電壓上,可根據不同使用場景靈活調用,有效提升實際使用時的能效比。

緩存方面,所有Cortex A76都帶有推薦的512KB L2緩存配置,而A55則採用128KB緩存。

在雷鋒網此前分析Cortex A76的文章中曾提到過,在最新的DynamIQ群集配置中,L2緩存是每個CPU核心獨占的。

DSU中的L3緩存則為4MB共享式設計,容量為驍龍845和麒麟970的兩倍。

改進的內存延遲

SoC的存儲子系統對其性能表現至關重要,麒麟970便在這方面吃了一些虧,它在高頻率下運行時似乎有些問題,這使得華為不得不在默認情況下選擇降低其設備的頻率,導致了一些性能下降,尤其是在對內存延遲敏感的工作負載中。

與麒麟970相比,麒麟980的內存延遲得到了顯著改善。

測試中使用的是完全隨機延遲,包括TLB未命中等在內的所有可能的懲罰,但是這仍然是一個重要的性能指標。

Cortex A76架構的獨占L2緩存延遲非常出色,只有4ns,不到麒麟970中Cortex A73共享L2緩存延遲的一半。

而4MB共享L3緩存確實與CPU核心異步運行,在測試中可以看到明顯的延遲懲罰,但仍然在合理範圍內。

對比安卓陣營的幾款SoC,麒麟980的L3緩存看起來略慢於驍龍845,可能是由於華為略微降低了L3緩存的運行頻率;Exynos 9810的緩存延遲最大,雖然在內存延遲方面略有優勢,但這是以很大的功耗代價衝擊高頻率換來的,當核心運行在合理的頻率上時,Exynos 9810的優勢會喪失殆盡。

(PS:蘋果A12處理器在緩存和內存延遲方面都遙遙領先,在所有指標和深度上都展示了巨大的優勢,讓安卓陣營的所有SoC都相形見絀。

CPU性能和能耗比

華為在發布會上表示,麒麟980相比麒麟970可獲得75%的性能提升,能耗比則比麒麟970提高58%。

演講中的PPT腳註顯示其能效數據基於Dhrystone,而Dhrystone非常專注於考驗CPU核心,相對在內存等其他方面不會給SoC帶來太大的壓力。

現在,使用麒麟980的Mate 20、Mate 20 Pro及Magic 2均已上市,SPECint2006和SPECfp2006的測試成績比華為的官宣更能體現這款處理器的真實性能水平。

下圖顯示了完成測試中的電能消耗量及平均功耗,左邊的條形表示消耗的能量,以J(焦耳)為單位,條形越短代表耗能越少,相應的平台的效率越高;右邊的條代表性能分數,條形越長代表性能越強。

測試成績出人意料,麒麟980的SPEC2006性能達到了麒麟970的2倍,不過依然只有蘋果A12的57%~62%;且在CPU的能耗比方面,麒麟980相比麒麟970隻提升了28%,這導致雖然其功耗只有蘋果A12的59%~62%,但實際消耗的能量卻幾乎與蘋果A12相同。

全新Cortex A76架構和麒麟980的內存子系統耗電量更大,SPECint測試中平均達到2.14W,SPECfp測試中達到2.65W,比麒麟970的1.38W和1.72W有顯著增加。

從這方面來看,Arm的新架構是在以線性的方式提升功耗和性能,包括驍龍845的Cortex A75。

當然,只要控制好性能和功耗的關係,這樣的提升方式並不能說是消極的。

麒麟980的CPU性能是蘋果A12的57%~62%,功耗是蘋果A12的59%~62%,二者處理相同任務消耗的能量基本相同,這有什麼不對的呢?相比之下Exynos 9810是個典型的反例,在衝擊高頻時付出了極大的功耗代價,卻沒有表現出與之相匹配的性能提升,能效比極差。

在SPECint2006測試中,麒麟980或者說Cortex A76表現出了相當均衡的各方面性能,在403.gcc測試項中的成績相比麒麟970提高了2.67倍。

456.hmmer和464.h264ref是SPECint2006測試中兩個最強的後端綁定測試,Cortex A76也展示了與其時鐘頻率及亂序4發射前端相符的分數。

在這一測試中,驍龍845的內存延遲表現不太好,因為它的L4系統緩存塊在規格上確實有一點缺陷。

在SPECfp2006的結果中,麒麟980同樣展現出了大幅度的進步。

總而言之,麒麟980在所有測試中都有著全面改進,在性能和能耗方面的表現都非常出色。

麒麟980以及Arm的Cortex A76都兌現了他們的承諾,甚至超過了此前人們根據官方消息所做的預測。

當然,麒麟980還無法與蘋果的A12甚至是A11相提並論,而且這種情況很可能在接下來的幾代中不會發生太大變化,至少在安卓陣營的處理器廠商設計出更好、更健壯的內存子系統之前都會是這樣。

GPU性能和能耗比

GPU的性能和能耗比一直是麒麟960和麒麟970的一大痛點,而麒麟980是世界上第一款使用了Arm全新Mali G76 GPU的SoC,華為表示麒麟980的GPU性能相比麒麟970提升46%,能耗比則大幅提升178%。

後一個數字尤其引起了一些關注,因為在這個行業中你看不到這樣的增長。

在3DMark Sling Shot Extreme Unlimited的圖形測試中,Mate 20和Mate 20 Pro都展現出了可觀的峰值性能值,與麒麟970相比提升相當顯著,但在達到熱平衡之前仍然有很大的波動。

在GFXBench測試最新的Aztec Ruins Vulkan場景中,高質量模式下,Mate 20和Mate 20 Pro的性能表現都比較奇特:峰值性能並不是特別好,但持續性能幾乎與峰值性能相同。

而在普通質量模式下,Mate 20 Pro則表現出比Mate 20更高的性能。

在GFXBench測試的曼哈頓3.1場景中,麒麟980的峰值性能和持續性能也均有可觀的提升。

與Aztec Ruins Vulkan場景相比,Mate 20和Mate 20 Pro在曼哈頓3.1場景中的峰值性能和持續性能表現出了正常的差異,性能與大多數驍龍845設備相當。

遺憾的是,麒麟980的能耗比與華為官方數據及此前的預測相差較大,其性能表現正常,但功耗比此前預測的3.5瓦要高出1W,最終麒麟980的能耗比相比麒麟970提高了100%。

雖然外媒Anandtech稱這仍然是相當大的代際改進,且表示此前華為官宣的178%能耗比提升可能是指麒麟980在與麒麟970相同的性能上的比較,不過麒麟970本身的GPU性能和能耗比表現就比較差,7nm工藝下的麒麟980在GPU性能提升45%、能耗比提升100%後,居然仍小幅落後於10nm工藝下的驍龍845,這不得不說是讓人大跌眼鏡的。

而在T-Rex中,麒麟980相比麒麟970的峰值性能提升幅度要小得多,不知道這裡的瓶頸究竟是什麼。

麒麟980在Mate 20 Pro上的持續性能提升了50%,但在Mate 20上出現了嚴重的限制。

T-Rex在現代SoC上的幀速率非常高,因此在許多方面都會受到CPU的制約。

同樣,麒麟980在T-Rex場景中的能耗比相比麒麟970大幅提升,不過與在Aztec Ruins Vulkan和曼哈頓3.1場景測試一樣,大幅提升的基礎是麒麟970的能耗比是在太差,麒麟980也只不過是提升到了相對正常的水平,依然不及驍龍835、驍龍845和Exynos 9810,更遑論蘋果A12。

第二代NPU

在去年1月測試麒麟970的NPU性能時,可選的測試軟體只有魯大師的AI測試,但它不支持華為的HiAI API,相關運算均依靠CPU實現進行處理。

不幸的是,到了麒麟980和Mate 20上依然如此。

「AI-Benchmark」是由瑞士ETH蘇黎世計算機視覺實驗室的Andrey Ignatov開發的新基準測試程序,也是第一個廣泛使用Android 8.1新NNAPI,而不依賴於每個SoC供應商自己的SDK工具和API的基準測試程序。

AI-Benchmark應該能夠更好地準確地表示從使用NNAPI的應用程式所預期的最終NN性能。

需要記住的一點是,NNAPI不僅僅是一些能夠在NPU上運行神經網絡模型的通用轉換層,而且API和SoC供應商的底層驅動程序必須能夠支持公開的函數,並且能夠在IP塊上運行它。

這裡的區別在於,使用NNAPI尚未支持的特性(必須退回到CPU上運算)的模型和能夠硬體加速並對量化的INT8或FP16數據進行操作的模型。

還有一些模型依賴於FP32數據,這裡同樣依賴於底層驅動程序,它可以在CPU上運行,也可以在GPU上運行。

前三個CPU測試項使用了NNAPI尚未支持的函數的模型,影響性能的僅僅是CPU性能以及性能響應時間,這意味著DVFS和調度器響應等機制可能對結果產生巨大影響,比如Galaxy S9上的表現就要明顯優於同為Exynos 9810處理器的Note9。

儘管如此,將麒麟970與麒麟980進行對比,依然能夠展示Cortex A76的性能,以及華為的DVFS /調度器可能的改進。

接下來的測試項基於8位整數量化的NN模型。

不幸的是,華為手機的NNAPI驅動程序似乎仍未提供硬體加速,這些測試沒有使用麒麟處理器上的NPU,測試結果展示的依然是CPU性能,華為表示計劃在未來版本的驅動中修正這個問題。

在使用驍龍845的設備中,一加6和Pixel 3在性能上遙遙領先,甚至相比同為驍龍845的Galaxy S9+也是如此,原因是這兩款手機都使用了高通公司最新更新的NNAPI驅動程序,該驅動程序與Android 9/P BSP一起發布,可通過HVX DSP加速NN應用。

接下來的FP16測試項終於啟用了麒麟處理器的NPU,並且在新老兩代處理器上都取得了領先的成績。

在這裡麒麟980的雙核NPU終於得以體現,Mate 20展現出了巨大的領先優勢。

不過一加6似乎在其NNAPI驅動程序中出現了一些非常奇怪的問題,使得它的性能比其他平台差一個數量級,不知道這項測試是跑在了其CPU上還是GPU上。

而在最後的FP32測試項中,大多數手機都再次回到CPU上進行運算,麒麟980的改進有限。

總體而言,AI-Benchmark至少驗證了華為對NPU性能的一些宣傳,不過從這些測試結果中得出的真正結論是,大多數具有NNAPI驅動程序的設備目前本身尚不成熟且功能仍然非常有限,與蘋果如今的CoreML生態系統相比相差甚遠。

雷鋒網總結

麒麟980的CPU性能表現應該在很大程度上可以代表下一代驍龍8150的情況,高通或許會在CPU頻率上稍稍提升一些,但最大的問題在於內存子系統方面,高通能不能解決L4系統緩存引入的延遲懲罰問題。

而Cortex A76對於三星來說就實在是太可怕了,如果Exynos 9820所用的Exynos M4架構只是一次常規疊代,說實話在Cortex A76面前是沒什麼競爭力的。

三星需要在性能和能耗比兩個方面均作出重大改進,才能與麒麟980相匹敵。

GPU方面,雷鋒網認為,雖然Arm玩GPU確實比從桌面端過來的Imagination和高通(GPU團隊來自ATI)差得遠,但這個鍋恐怕還沒辦法直接甩給Arm的Mali G76架構,因為三星Exynos SoC的GPU能耗比要明顯好於麒麟SoC,兩家分別選擇了犧牲面積換性能和犧牲功耗換性能的方式。

三星Exynos 9810和8895雖然GPU面積很大(24.53mm² & 32mm²),但由於頻率只有560MHz左右,因此功耗表現尚可,Exynos 9810的能耗比甚至非常接近於驍龍845。

而與三星的狂堆核心數相比,麒麟970則只使用了中等數量的核心,然後通過拉高核心頻率來榨取性能。

雷鋒網曾經提到,每種核心架構在某一工藝下,都有一個能耗比最佳的頻率區間,越過這個區間後,繼續拉高頻需要付出極大的功耗代價。

麒麟970的Mali G72 MP12頻率為746MHz,功耗上升非常明顯,能耗比僅略高於使用Mali G71的Exynos 8895。

因此在理論上說,對比三星Exynos SoC,華為的麒麟SoC從未曾表現出Arm Mali GPU應有的能耗比。

不過,據悉三星集成NPU的Exynos 9820也只採用了Mali G76 MP12的配置,遠不如以前動輒MP18或MP20那麼豪邁了。

由此來看,華為「少核高頻」的策略,是為了給NPU騰地方不得已而為之吧,或許只能等三星Exynos 9820的具體參數和測試成績公布後才能進一步揭秘了。

NPU方面,回顧一下此前麒麟970的測試,在麒麟980上仍然沒有看到NPU對用戶有明顯的好處,因為我們還沒有可用的軟體來使用這部分硬體。

我們不清楚華為是怎樣使用NPU進行相機處理的,但除了這些自帶的第一方軟體外,NPU目前對設備體驗仍然處於一種薛丁格狀態。

via:Anandtech


請為這篇文章評分?


相關文章