新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Cortex-A15架構(gòu)解析:探索強(qiáng)勁性能的秘密

Cortex-A15架構(gòu)解析:探索強(qiáng)勁性能的秘密

作者: 時(shí)間:2017-10-21 來源:網(wǎng)絡(luò) 收藏

  今年的新手機(jī)趨勢無異是全面向四核靠攏,不過同樣是四核,在實(shí)際的性能上其實(shí)是千差萬別。例如針對入門級主流市場的四核手機(jī)普遍采用的都是Cortex-A7以及 Cortex-A9 級別的CPU內(nèi)核,這類內(nèi)核性能、成本以及發(fā)熱都會較低,因此在入門市場上大行其道。

本文引用地址:http://www.butianyuan.cn/article/201710/367246.htm

  而在高端智能手機(jī)中則出現(xiàn)了一些新的變化,除了去年就已經(jīng)嶄露頭角的高通Krait系列架構(gòu)四核外,正統(tǒng)的也開始走上了四核手機(jī)的舞臺,例如三星的Exynos 5 Octa、NVIDIA 的Tegra 4。

   Cortex-A家族中目前最強(qiáng)勁的CPU內(nèi)核架構(gòu),發(fā)布時(shí)間為2010年,德州儀器是最早(2011年)投產(chǎn)基于該架構(gòu)處理器(型號為OMAP 5)的授權(quán)廠商。

  和的Cortex-A7、Cortex-A9等微架構(gòu)相比,有很大的不同。

  A15和A9同樣具備亂序執(zhí)行,但是Cortex-A15具備(兩倍)的指令發(fā)射端口和執(zhí)行資源,指令解碼能力也要高出50%,動態(tài)分支預(yù)測能力更強(qiáng)(采用了多層級分支表緩存),指令拾取帶寬更強(qiáng)(128 bit vs 64 bit),這些都能讓A15的流水線執(zhí)行具備更高的效率。除此以外,A15采用了VFPv4浮點(diǎn)單元設(shè)計(jì),能執(zhí)行FMA指令以及硬件除法指令,相較而言A9的峰值向量浮點(diǎn)性能基本上只有A15的一半。

  不過在現(xiàn)實(shí)中,A15 的對手應(yīng)該是高通自行設(shè)計(jì)的 ARMv7A 兼容處理器架構(gòu) Krait。高通對 Krait 的架構(gòu)細(xì)節(jié)透露并不是很多,大致上就是 3 個(gè)指令解碼端口(和 A15 一樣)、7個(gè)指令發(fā)射端口(A15 是8個(gè))、4個(gè)發(fā)射端口(A15 是8個(gè)),具備4KB+4KB的單周期時(shí)延L0 Cache設(shè)計(jì)。

  如果采用老掉牙的Dhrystone DMIPS/MHz作為性能衡量指標(biāo),Krait 是3.3,A9 是2.5,而A15則是3.5,從紙面上看Krait的確非常適合作為A15的對手。

  不過Dhrystone的缺點(diǎn)是顯而易見,它是完全可以塞進(jìn)CPU的L1 cache里執(zhí)行,這就意味著無法以此對L2 cache(A15是一體化設(shè)計(jì),Krait是分離式設(shè)計(jì),一體化設(shè)計(jì)可以減少內(nèi)存交換導(dǎo)致的大量時(shí)延)、亂序執(zhí)行的硬件效率/復(fù)雜性、內(nèi)存子系統(tǒng)單元(A15的內(nèi)存單元可以實(shí)現(xiàn)在一定條件下預(yù)執(zhí)行一條加載指令,而Krait能否具備這樣的能力尚不清楚)等諸多體系架構(gòu)區(qū)別對實(shí)際性能的影響作出有價(jià)值評估。

  當(dāng)然,ARM采用的DMIPS指標(biāo)實(shí)際上并非28年前的那個(gè)Dhrystone,而是來自EEBMC Coremark(其實(shí) Coremark 就是前者的改善版本,主要是為了減少預(yù)優(yōu)化、對測試有比較嚴(yán)格的規(guī)則),但是CoreMark同樣可以塞進(jìn)現(xiàn)今大多數(shù)處理器的L1 cache里,Dhrystone不能反映現(xiàn)今移動設(shè)備真實(shí)應(yīng)用的問題在這里依然存在。

  由于應(yīng)用環(huán)境日趨復(fù)雜,要正確評估一個(gè)移動設(shè)備處理器的性能變得越來越復(fù)雜,因?yàn)楝F(xiàn)在的移動設(shè)備跑的網(wǎng)頁瀏覽、三維游戲、音視頻、人工智能等都不可能可以完全塞進(jìn)L1 Cache里,因?yàn)檫@些應(yīng)用牽涉到大量的數(shù)據(jù)處理。

  這時(shí)候,人們在臺式機(jī)性能評估上學(xué)到的經(jīng)驗(yàn)和測試辦法就可以在移動設(shè)備上采用了。對CPU測試來說,最合理的測試方式是采用多種計(jì)算規(guī)模的真實(shí)應(yīng)用源代碼以本機(jī)代碼進(jìn)行編譯再進(jìn)行測試,在這樣的情況下移動設(shè)備的計(jì)算單元、內(nèi)存單元都得以充分考驗(yàn),測試結(jié)果最具參考價(jià)值。

  能夠獲得業(yè)界(計(jì)算機(jī)工業(yè)、學(xué)術(shù)科研)官方認(rèn)可的CPU測試當(dāng)屬SPEC.org的SPEC CPU,它就是采用源代碼方式,讓測試人員可以編譯為本機(jī)代碼來測試,許多處理器在研發(fā)伊始就采用SPEC CPU作為最重要的性能評估指標(biāo)。

  SPEC CPU的最新版本為CPU2006,但是CPU2006針對的是當(dāng)前的臺式機(jī)、工作站、服務(wù)器處理器應(yīng)用環(huán)境,內(nèi)存容量(CPU2006 支持多線程測試,因此要求的內(nèi)存容量相當(dāng)高,8線程處理器用16 GB內(nèi)存也是有點(diǎn)勉強(qiáng))和自身存儲空間(未編譯時(shí)就要數(shù)GB空間,編譯后就要占用1xGB了)要求都較高,因此采用CPU2006對目前的移動設(shè)備來說是不太現(xiàn)實(shí)的。

  SPEC CPU是每隔幾年就更新一次,在CPU2006之前的舊版本為CPU2000,它的speed整數(shù)性能測試完全可以在1GB級別的移動設(shè)備上運(yùn)行,在以前甚至有一些 CPU2000的測試被移植到GPU上做加速性能測試。

  ARM陣營極少公布SPEC CPU測試結(jié)果,這當(dāng)然也是有原因的,因?yàn)樵谶^去的不少時(shí)間里,ARM針對的設(shè)備大都只有幾百兆內(nèi)存空間,塞進(jìn)操作系統(tǒng)后,留給程序運(yùn)行的空間就更少,此外由于省電先決的考量ARM處理器的性能其實(shí)真的不怎么樣。

  不過有意思的是,今年ARM陣營里的NVIDIA在發(fā)布Tegra 4的時(shí)候公布了CPU2000INT的測試結(jié)果:在1.9GHz 頻率設(shè)定的NVIDIA參考平臺里,Tegra 4的SPEC PU2000int_base 為1168。這個(gè)測試結(jié)果相當(dāng)于2003年第四季度 SPEC.org 上公布的AMD K8 Sledgehammer 2GHz測試結(jié)果。

  NVIDIA還進(jìn)行了在小米手機(jī)2(采用高通 Snapdragon S4 Pro 即 APQ8064 1.7GHz)上的CPU2000測試,并且根據(jù)高通公布的S800相對S600在IPC(每周期指令)和頻率上的變化幅度而估算出來的S800的CPU2000測試結(jié)果:

  

  從圖表來看,S600的CPUINT2000_base測試結(jié)果相當(dāng)于Tegra 4的一半不到,這在很大程度上反映了Cortex-A15相對Krait系處理器的真實(shí)應(yīng)用差別。

  需要指出的是,雙方的測試平臺本身也是有一些影響的,例如小米手機(jī)2執(zhí)行這個(gè)測試的時(shí)候,CPU頻率是否存在降頻現(xiàn)象,NVIDIA對此沒有說明。

  一般來說,像APQ8064在四核全速運(yùn)行的時(shí)候,會在一段時(shí)間內(nèi)由于過熱而導(dǎo)致頻率從最高的1.7GHz開始下降。當(dāng)然,NVIDIA在這里公布的是speed模式下的CPU2000INT測試結(jié)果,這個(gè)模式下是單線程的測試,只有一個(gè)CPU內(nèi)核會被使用。

  比較遺憾的是高通對這個(gè)測試結(jié)果尚未提出異議(據(jù)說高通對于處理器性能的孰高孰低并不十分看重,他們戲稱是賣基帶送CPU),而CPU2000的配置對一般人來說是相當(dāng)復(fù)雜的事情,所以這個(gè)測試暫時(shí)沒有第三方使用同樣的平臺測試佐證。

  威盛電子在發(fā)布Nano X2處理器的時(shí)候曾經(jīng)公布過一份文件,里面也有采用CPU2000對Nano X2 1.2+GHz和Atom D525進(jìn)行測試,其中g(shù)cc編譯器出來的CPU2000 INT成績分別為799和582,采用Intel編譯器出來的成績分別是955和725。

  NVIDIA的Tegra 4的CPU屬于ARMv7A指令集,因此編譯器很可能是armcc或者gcc,NVIDIA新近收購的PGI是一家老牌編譯器廠商,也許它能提供內(nèi)部測試版給 NVIDIA,只是PGI過往從未發(fā)布過ARM系編譯器。

  到這里,大家應(yīng)該對Cortex-A15的架構(gòu)特點(diǎn)以及和它的一些競爭對手在性能上的區(qū)別有大致的了解,不過這樣的旗艦級處理器在智能設(shè)備的實(shí)際應(yīng)用情況又如何呢?

  有采用四核Cortex-A15手機(jī)了嗎?

  這個(gè)問題其實(shí)來自于一些人的猜測,我們看見一些文章認(rèn)為Cortex-A15的性能高但是功耗大,并不一定適用于手機(jī)。

  這個(gè)問題放在一年前的話可能會有各種不同的答案,但是現(xiàn)在是2013年8月下旬,答案已經(jīng)非常清晰:已經(jīng)有采用四核Cortex-A15的手機(jī)上市,而且會有更多的采用Cortex-A15的手機(jī)上市,這也為Cortex-A15是否適用于手機(jī)的爭論畫上了一個(gè)句號。目前,明確可用于手機(jī)的Cortex-A15架構(gòu)的四核移動處理器主要有兩種,一種是三星的Exynos Octa,另外一種是NVIDIA Tegra 4。

  三星公司在4月27日上市的Galaxy S4有多個(gè)型號,但是從處理器來分,就分為兩種機(jī)型:高通Snapdragon 600和三星Exynos 5410。

  S600其實(shí)類似于去年大紅大紫的APQ8064,CPU微架構(gòu)為Krait 300,相對APQ8064的Krait微架構(gòu)來說,它增加了硬件數(shù)據(jù)預(yù)取器,能預(yù)先將數(shù)據(jù)從內(nèi)存中抓到L2 cache里。除此以外Krait 300還改善了分支預(yù)測的準(zhǔn)確度,這些變化能改善Krait 300的IPC(每周期指令)大約15%,加上最高頻率提升至1.9GHz(取決于手機(jī)廠商,像HTC One就選擇了較低的或者說和APQ8064上限一樣的1.7GHz),因此可以認(rèn)為S600的CPU性能比之前的S4 Pro最多提升了大約28.5%左右,更接近于Cortex-A15的性能,不過它使用的制程和S4 Pro一樣依然是28nm LP,這個(gè)制程沒有在漏電流上作優(yōu)化,因此在耗電方面S600比S4 Pro更大。

  為什么三星不選擇單一型號處理器的方式呢?首先三星肯定要支持自家研發(fā)的處理器,這是毫無疑問的,因此基于Cortex-A15的E5410自然成了配置之一;其次是三星作為一家韓國公司,同時(shí)也是一家跨國公司,產(chǎn)品需要賣向全球,有些的確已經(jīng)邁向了4G LTE,有些則還是3G時(shí)代,面對世界各地的通信制式、合作運(yùn)營商的要求以及全球行銷的潛規(guī)則,高通方面的產(chǎn)品是不得不考量的,因此在這里也把定位比較接近的S600作為另一種配置以支持LTE。

  

  三星Galaxy S4 GT-I9500主電路板正面

  

  三星Exynos 5410管芯圖,深色部分是四核A15區(qū)域,粉紅色部分是四核A7區(qū)域

  在國際版的GT-I9500(以及中國大陸區(qū)的聯(lián)通版、電信版)采用的三星Exynos 5 Octa內(nèi)部型號為Exynos 5410,CPU部分是一組四核Cortex-A15加另一組四核 Cortex-A7的搭配方式。不過Exynos 5410只支持big.LITTLE模式里的IKS(核內(nèi)切換器),不支持GTS(全局任務(wù)調(diào)度)模式,因此看上去雖然有物理上的八個(gè)內(nèi)核,但是本質(zhì)上同一時(shí)間內(nèi)最多只能實(shí)現(xiàn)同時(shí)使用四核A15或同時(shí)使用四核A7,如何切換則是由根據(jù)當(dāng)前任務(wù)的負(fù)荷性質(zhì)決定。

  NVIDIA Tegra 4推出多個(gè)月后,除了自家的SHIELD和HP、華碩以及東芝等廠商的筆記本電腦外,還會被用于一些手機(jī)里面,目前已經(jīng)公布的有中興的U988S,據(jù)聞還會有更重量級的手機(jī)隨后出來。

  

  NVIDIA Tegra 4管芯圖,橙色區(qū)為4+1Cortex-A15核心,綠色小方塊區(qū)域?yàn)镚PU

  Tegra 4和三星Exynos 5410的主CPU都采用了四核Cortex-A15,不過NVIDIA沒有采用ARM的big.LITTLE結(jié)構(gòu),而是采用自己4+1核的結(jié)構(gòu),4+1 中的“1”被稱作伴侶核。

  “伴侶核”是一個(gè)采用省電設(shè)計(jì)、運(yùn)行在較低頻率下的Cortex-A15內(nèi)核,用于處理負(fù)載較輕的任務(wù)以達(dá)到省電的目的,一旦負(fù)載較重就會切換到主CPU核上。

  和Cortex-A15+Cortex-A7的big.LITTLE相比,這樣的設(shè)計(jì)據(jù)稱有兩個(gè)好處:

  首先,是由于“伴侶核”與主CPU核心架構(gòu)完全一樣,CPU切換時(shí)(或者說程序執(zhí)行的現(xiàn)場切換)的時(shí)間比Cortex-A15切換到Cortex-A7的方式快很多,這是因?yàn)椴挥眠M(jìn)行復(fù)雜的映射;

  其次,Cortex-A15的單核性能比Cortex-A7高很多,因此大多數(shù)一般的應(yīng)用中并不需要頻繁切換到主CPU,從而達(dá)到更省電的目的。當(dāng)然,具體的耗電情況需要等到設(shè)備出來后進(jìn)行詳細(xì)測試。

  在商業(yè)社會里衡量一款產(chǎn)品是否成功,關(guān)鍵的指標(biāo)之一自然是出貨量。按照Digitimes援引TrendForce(集邦科技)在今年七月末的一份研究報(bào)告,三星Galaxy S4的出貨量將會達(dá)到2300萬部的總出貨量,而在更早之前已經(jīng)有媒體報(bào)道指出三星Galaxy S4的出貨量“已經(jīng)”達(dá)到兩千萬臺。

  如果只是靠品牌知名度和好不好看的話,任何產(chǎn)品也不可能做到快速的大量出貨,Galaxy S4作為旗艦級產(chǎn)品,它的規(guī)格配置在吸引力方面起到了很大的作用,四核Cortex-A15或者四核S600的采用是它成功的關(guān)鍵因素之一,這些成功反過來也會對人們的品牌認(rèn)受度產(chǎn)生正面印象。

  

  上圖就是我們前面提及的預(yù)期購買手機(jī)品牌調(diào)查百分比,可以看到在三星發(fā)布了Galaxy S4第一季度到第二季度變化值是呈上升態(tài)勢,而蘋果方面則是依然不斷地下滑。

  所以從這一小節(jié)中我們可以得出結(jié)論,市場上已經(jīng)有四核Cortex-A15手機(jī)上市,而且從市場趨勢來看這樣的產(chǎn)品已經(jīng)獲得了實(shí)質(zhì)性的認(rèn)可。

  不同型號的Cortex-A15芯片設(shè)計(jì)是否一樣呢?

  

  ARM的實(shí)驗(yàn)室里雖然也有自己開發(fā)的處理器實(shí)體,但是這些處理器是作為研發(fā)之用,不會拿出來賣給最終消費(fèi)者的,市場上的“ARM”處理器都是ARM透過架構(gòu)授權(quán)或者內(nèi)核授權(quán)的方式由第三方廠商開發(fā)或者拼湊而成。

  因此在市場上你會看到五花八門、各式各樣的ARM處理器,它們來自不同的芯片設(shè)計(jì)公司、不同的制造廠商,由于設(shè)計(jì)技術(shù)水平、經(jīng)驗(yàn)以及制造廠的制程不同,實(shí)際上出來的芯片在一些指標(biāo)、功能上會有不可忽視的區(qū)別。

  就譬如我們這里提到過三星Exynos 5410和NVIDIA Tegra 4,CPU都采用了四核Cortex-A15,但是兩者的區(qū)別其實(shí)多,例如:

  1、Exynos 5410采用三星的28nm LP HKMG制程,最高頻率設(shè)定是1.6GHz,Tegra 4采用臺積電的28nm HPL制程,最高設(shè)定頻率為1.9GHz;

  2、Exynos 5410采用了A15*4 + A7*4的設(shè)計(jì),Tegra 4 采用了高頻A15*4+低頻(700~800MHz)低耗電A15*1的設(shè)計(jì);

  3、兩者的GPU截然不同,Exynos 5410采用了ImgTec授權(quán)的PowerVR SGX544MP3 (tri-core) @480MHz,Tegra 4 采用的是NVIDIA自己開發(fā)的GPU架構(gòu),幾何單元為單精度浮點(diǎn),像素單元為20位浮點(diǎn),這應(yīng)該是吸取了當(dāng)年GeForce FX世代受挫的經(jīng)驗(yàn)而特別炮制的平衡設(shè)計(jì)。

  4、兩者的die size(管芯尺寸)不一樣,Exynos 5410按照EDN的說法應(yīng)該是122mm^2,而Tegra 4大約是80mm^2,后者比前者小了大約33%,Tegra 4的設(shè)計(jì)目標(biāo)更偏向于性能、耗電、成本三者的平衡,而三星由于采用的PowerVR是屬于分塊式延后渲染器(TBDR),因此片上需要有TBDR獨(dú)有的電路,這些電路會增加不少面積。

  從這一小節(jié)我們可以看出,同樣是采用四核A15的處理器,在很多方面都是完全不一樣的,這將對處理器的功能、性能、耗電構(gòu)成不少的影響,最終反映到終端設(shè)備——手機(jī)、平板電腦上的表現(xiàn)也會有一定的差別。

  同一款處理器不同版本在耗電上一樣嗎?

  NVIDIA在較早之前發(fā)布的SHIELD采用的是前面提到的Tegra 4處理器,這是NVIDIA的第四代Tegra處理器,和其他手機(jī)SoC芯片廠商有多款不同芯片供選擇不同的是,NVIDIA這幾年走的都是單芯片多型號路線,也就是把芯片單純按照頻率、GPU使能規(guī)模來劃分多個(gè)型號供客戶選擇。

  

  SHIELD 采用的Tegra 4具體型號是T40,是Tegra 4的頂級性能版本,最高頻率設(shè)定為1.9GHz,GPU規(guī)模使能規(guī)模為72 core但是頻率多少并不清楚,Tegra 4 GPU的文檔有提到在672MHz時(shí)候的性能規(guī)格,但是這不代表T40的GPU就是這樣的規(guī)格。

  不過手機(jī)顯然不會上這樣規(guī)格的Tegra 4,因?yàn)镾HIELD的形制較大,可以塞進(jìn)風(fēng)扇輔助散熱,電池容量也可以支持這樣規(guī)格跑接近10小時(shí)的游戲,即使是旗艦級別手機(jī)的個(gè)頭只有它的三分之一不到。

  NVIDIA提供的手機(jī)版Tegra 4型號為AP40,這個(gè)版本在多個(gè)方面做了精簡,例如T40有很多的I/O口,AP40只保留了必要的,溫控的策略也會有不同。

  從一些廠商提供的消息,經(jīng)過這些精簡后,AP40的TDP(熱設(shè)計(jì)功率,代表能讓設(shè)備低于結(jié)溫所需的散熱能力)從T40的8-10瓦降低到了3瓦級別,這相當(dāng)降低到了1/3不到,變化非常大。

  那么功率降低到這么多,性能是否會有大的下降呢?這是一個(gè)有趣的問題。不同的廠商會采用不同的功耗控制策略。 一般在多核心同時(shí)高負(fù)荷工作下,手機(jī)的處理器工作速度會隨著溫度的上升而降低,從而把總的功耗降到較低的水平。

  不過,單核心工作的時(shí)候,頻率的下降速度就會慢很多。而且大部分的情況下,CPU高負(fù)荷的往往是間歇性的,對于大部分的應(yīng)用,實(shí)際的性能應(yīng)該不會有什么影響。

  CPU性能的重要性

  Cortex-A15 相對于S600、S800、Cortex-A9、Cortex-A7 等“對手”來說優(yōu)勢就是具備更強(qiáng)的單核心性能。在多線程程序并不十分普及的情況下,單核心性能的重要性是毋庸置疑的。

  其實(shí)無論是手機(jī)還是我們的臺式機(jī)、筆記本電腦,日常的不少程序都采用單線程代碼。多線程程序的開發(fā)需要比較復(fù)雜的代碼編寫、經(jīng)驗(yàn)以及調(diào)試,而且很多任務(wù)并不容易做到并行化,因此經(jīng)過很多年以后,實(shí)際上真正的多線程重負(fù)荷的程序即使在PC上也并不普遍,在移動平臺上就更少了。

  除了一些專門用來燒機(jī)的軟件外,能讓多核尤其是四核手機(jī)老是處于跑滿狀態(tài)的應(yīng)用可說是少之又少,更常見的情況是某些高計(jì)算負(fù)荷的任務(wù)讓四核沖起來一下就跑完了。

  舉個(gè)簡單的例子,例如刷微博或者刷網(wǎng)頁的情況,里面包含很多圖文的信息,刷的時(shí)候速度快的處理器能夠很快地顯示出內(nèi)容,而速度較慢的處理器則需要等待一段時(shí)間。

  刷完以后CPU總的占有率會驟然降低,之后都是一些單線程的程序讓個(gè)別內(nèi)核處于較飽滿的負(fù)載狀態(tài)。

  真正需要CPU高負(fù)荷的時(shí)間占總時(shí)間的比例很低,甚至連1%都遠(yuǎn)遠(yuǎn)不到,但是這個(gè)時(shí)間雖說很短,卻往往是影響用戶體驗(yàn)的一個(gè)非常重要的因素。

  因此,CPU的峰值性能的重要性毋庸置疑。此外,現(xiàn)在有一種趨勢,移動處理器面對的屏幕分辨率甚至普遍比筆記本電腦甚至臺式機(jī)更高,這意味著界面的處理壓力越來越高。

  界面的刷新和網(wǎng)頁刷新的情況類似,對CPU的性能要求高,但是時(shí)間短,用戶的體驗(yàn)感受很直接。

  因此更高的處理器速度也將是一種硬性的需求,而不是可有可無的擺設(shè)。但是對于性能和功耗的評估需要有理性的分析,有一些人一味強(qiáng)調(diào)拷機(jī)軟件下的CPU頻率過熱降頻情況對手機(jī)用家來說其實(shí)是某種程度的誤導(dǎo),這和實(shí)際的應(yīng)用情況完全不一樣。

  

  多核處理器的意義更多在于多任務(wù)的情況。Android和Windows都是典型的多任務(wù)操作系統(tǒng),多核處理器在處理多任務(wù)的時(shí)候大大提升了多個(gè)程序同時(shí)運(yùn)行時(shí)的處理和響應(yīng)速度。

  不過,多任務(wù)對于核心數(shù)量的需求是有限的,PC CPU和移動處理器主流的核心都是兩到四核,這不是偶然的。

  雖然系統(tǒng)中有多個(gè)線程和多個(gè)任務(wù)同時(shí)存在,但是出于活躍狀態(tài)的往往也就少數(shù)幾個(gè),因此更多的CPU核心意義是不大的?,F(xiàn)在有些廠商推出的所謂八核Cortex-7的處理器,在絕大部份的情況下性能一定還不如雙核Cortex-A15。

  ARM推出A12就等于否定A15?

  ARM是一家非常純粹的設(shè)計(jì)公司,它并不向終端消費(fèi)者、廠商出售任何處理器,而是提供授權(quán)給第三方公司,讓其自行設(shè)計(jì)或者堆砌出自己的處理器。

  這樣的好處是它可以節(jié)省掉一大筆行銷上的資源,ARM設(shè)計(jì)一款處理器內(nèi)核并不會產(chǎn)生任何庫存壓力,它只消告訴廠商這個(gè)處理器如何做對接以及可以用來干嘛就可以了,接下來就是等著收錢了。

  在這樣的情況下,ARM可以做到非常靈活多變,當(dāng)看到市場上(也許是將會)存在空擋時(shí)候,就能很快推出相應(yīng)的“產(chǎn)品”。按照時(shí)間來看,Cortex-A12的推出其實(shí)就是瞄準(zhǔn)了Cortex-A7/A53和Cortex-A57之間的空隙,屬于未來一年后的中端偏低市場的主力。

  在Cortex-A12推出后,有些人就馬上下結(jié)論,這代表了ARM對Cortex-A15在手機(jī)應(yīng)用上的否定。

  如果以big.LITTLE布局來看Cortex-A12屬于ARM產(chǎn)品規(guī)劃中的big,也就是偏向性能先決的內(nèi)核,目前確定的制程包括了GlobalFoundries的SLP-28和臺積電的28 HPM。Cortex-A12和Cortex-A9一樣是雙發(fā)射亂序執(zhí)行,但是和A9相比,A12的亂序執(zhí)行不僅限于整數(shù)流水線,而是浮點(diǎn)流水線和內(nèi)存操作都具備了亂序執(zhí)行。

  此外 A12實(shí)現(xiàn)了VFPv4浮點(diǎn)單元并且將Neon向量單元列為標(biāo)準(zhǔn)配備,Coremark測試可以做到單核3.0 DMIPS/MHz,相比之下A9 和A15 分別是2.5和35。

  所以很明顯,A12性能處于A9和A15性能之間,這對ARM來說是很正常不過的事情。事實(shí)上ARM在發(fā)布A12的同時(shí)還更新了A9,提到A9 r4版的性能更新,按照幻燈片,對分支預(yù)測和內(nèi)存子系統(tǒng)作改進(jìn)后的r4在IPC 上能做到初版A9 的1.4倍左右。

  

  Cortex-A9至今已經(jīng)有多個(gè)版本,見上圖的r1-r4描述

  如果單看IPC的話,A9 r4是不是和A12很類似?那如果按照某些人的思維,A9 r4豈不是可以用來否定A15?

  目前A9 r4已經(jīng)在NVIDIA Tegra 4i里面采用,按照NVIDIA的數(shù)據(jù),在BBench中相比A9 r1有25%的性能提升,而在SPECint 2000中也有15%的性能提升,基于Tegra 4i的終端很可能會在明年第一季度就能看到,而A12還沒有任何廠商宣布采用,A15即使退下火線也未必是因?yàn)锳12的出現(xiàn),因?yàn)锳15的定位接替者其實(shí)是基于ARMv8的 A57。

  余論與后記

  

  看到這里,相信大家已經(jīng)基本了解了Cortex-A15大致架構(gòu)和性能、定位,而配備四核Cortex-A15的三星Galaxy S4手機(jī)已經(jīng)取得了非常矚目的成功。

  不同廠商、不同型號的四核Cortex-A15處理器在很多方面都存在不少的差別,這些差別或因?yàn)樵O(shè)計(jì)意念、經(jīng)驗(yàn),或因?yàn)楦髯栽谀愁I(lǐng)域的優(yōu)勢,或因?yàn)楫a(chǎn)品定位,或因?yàn)橹瞥?,這些差別讓我們不能簡單地類比,例如直接把某型號的Cortex-A15四核處理器在性能、功耗的指標(biāo)類推到另一型號上。

  手機(jī)性能測試是比較特殊的,它是一個(gè)封閉的東西,從硬件角度看,絕大多數(shù)情況下你不能把里面的東西卸下來拿到另一部不同型號的手機(jī)里測試來驗(yàn)證不同硬件組合下的影響,從軟件角度看,目前缺乏足夠的工具和經(jīng)驗(yàn)了解在測試的時(shí)候到底發(fā)生了什么,到底是廣譜的優(yōu)化還是定制優(yōu)化非知情者是很難了解的。

  對于手機(jī)來說,單線程的性能同樣不容忽視,這和多線程代碼編寫的難度有直接關(guān)系,現(xiàn)實(shí)中許多應(yīng)用還是基于單線程的,在此時(shí)Cortex-A15的單線程性能優(yōu)勢就能體現(xiàn)出來。

  在日常應(yīng)用中沒有多少應(yīng)用會像拷機(jī)程序那樣長時(shí)間持續(xù)的四核全部跑滿,尤其是在手機(jī)應(yīng)用中,在手機(jī)測試中采用這類程序到底有多少意義是令人懷疑的,手機(jī)用家真的會整天沒事呆看手機(jī)跑StabilityTest之類的東西嗎?

  Cortex-A12上市的時(shí)間點(diǎn)可能是明年下半年以后的事情,它的性能定位就是接替Cortex-A9,而Cortex-A15的接替者將會是Cortex-A57,Cortex-A12在此時(shí)(A57時(shí)代)扮演的就是中階偏低的角色。

  總之,我相信在未來的一年里,Cortex-A15四核版的手機(jī)將會越來越多,相應(yīng)的芯片型號也會層出不窮,其中應(yīng)該不乏成功的產(chǎn)品



關(guān)鍵詞: Cortex-A15 ARM

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉