魅族MX4 Pro為何抱憾:四個(gè)問題看清64位手機(jī)本質(zhì)
點(diǎn)擊:1514
A+ A-
所屬頻道:新聞中心
在蘋果iPhone 5s的64位處理器一炮打響之后,手機(jī)似乎在一夜之間發(fā)生了大躍進(jìn)。廠商們紛紛推出自家的64位手機(jī)處理器,64位手機(jī)已經(jīng)不是紙面上的概念,而是能買到的實(shí)實(shí)在在的產(chǎn)品。前段時(shí)間魅族科技高管自爆MX4 Pro未能搭載64位處理器比較遺憾,那么有必要嗎?
要知道,當(dāng)年家用電腦可是花了十多年才從32位進(jìn)化到64位,智能手機(jī)這才短短幾年,變化就如此迅速,64位處理器對(duì)手機(jī)而言究竟有何含義?64位會(huì)快很多嗎?64位手機(jī)值不值得買?我們就以手機(jī)上的64位為話題,帶你剖開現(xiàn)象看本質(zhì)。
什么是64位?
先回答最基本的問題,什么是64位?衡量一個(gè)人的智商水平要看他的大腦,同樣,判斷手機(jī)是不是64位,也要看手機(jī)的“大腦”,這個(gè)大腦就是手機(jī)的CPU(中央處理器)。我們所說的64位手機(jī),實(shí)際上是指使用了64位處理器的手機(jī)。
具體到處理器的內(nèi)部,64位處理器指邏輯算數(shù)單元、寄存器、總線寬度都是64位(8個(gè)字節(jié))的處理器。相比32位,64位能一次性處理更長(zhǎng)的指令。有很多手機(jī)處理器都達(dá)到了這個(gè)標(biāo)準(zhǔn),比如高通驍龍410/615/810,蘋果的A7、A8,英特爾Atom等。
處理器的工作就是運(yùn)行指令,因此,我們還必須提到“指令集”這個(gè)概念。處理器的計(jì)算和控制都是通過各種指令完成的,每款處理器在設(shè)計(jì)時(shí)就規(guī)定了一系列與其硬件電路相配合的指令系統(tǒng),這套指令的集合統(tǒng)稱指令集——你可以把它理解為處理器與外界溝通的語言。市面上有許多不同處理器指令集,就好比有些人的母語是英語,有些人的母語則是中文。
目前大多數(shù)64位手機(jī)處理器都使用ARM公司的ARMv8 64位指令集,只有英特爾的Atom處理器是例外,它采用了x86-64指令集,但英特爾在手機(jī)市場(chǎng)上的份額小得可憐,我們今天就直接略過它,專門來講講主流的ARMv8 64位手機(jī)。
ARMv8指令集是ARM公司專門針對(duì)手機(jī)、移動(dòng)和嵌入式設(shè)備推出的64位指令集,它包含了AArch64、AArch32兩種主要執(zhí)行狀態(tài)。看名字你就知道了,AArch64專注于64位處理,AArch32則用來支持現(xiàn)有的32位ARM指令集。從這個(gè)角度來看ARMv8是一套不錯(cuò)的指令集,它既支持未來的64位程序,也向下兼容現(xiàn)有32位程序。有了ARMv8的支撐,以后的64位手機(jī)操作系統(tǒng),如Android L 64bit都可以簡(jiǎn)單、高效地支持現(xiàn)有的32位App,你不用擔(dān)心兼容性問題。
為了幫助合作伙伴們更好更快的拿出有競(jìng)爭(zhēng)力的產(chǎn)品,ARM還專門制作了兩個(gè)支持ARMv8指令集的處理器參考架構(gòu):Cortex-A53和Cortex-A57。如果說ARMv8指令集是一門語言,Cortex-A53和Cortex-A57就是基于這門語言的習(xí)題冊(cè),ARM這位“老師”利用ARMv8布置了一道道“題目”,廠商們只要照著做,就能生產(chǎn)出處理器成品了。
64真的比32位快一倍?
這是一個(gè)經(jīng)常被提起的問題,64位真的要比32位快一倍嗎?答案當(dāng)然是NO,但原因很少有人講得清楚。記住下面這三條理由,下次跟朋友聊手機(jī)時(shí)你的逼格會(huì)提升很多。
首先,指令集不是1+1=2這么簡(jiǎn)單,指令的長(zhǎng)度并不直接等于性能。盡管從數(shù)字上看,64位指令的確要比32位指令更長(zhǎng),但很多時(shí)候我們并不需要那么復(fù)雜的指令。一個(gè)應(yīng)用程序(App)擁有成千上萬行代碼,CPU在執(zhí)行每條代碼時(shí)又會(huì)把它分割成無數(shù)條指令,編譯器會(huì)自動(dòng)決定怎樣將指令組合起來最高效,它們并非都需要64位的字長(zhǎng)。
一個(gè)典型的例子就是ARMv8指令集的數(shù)據(jù)模型。ARM在官方白皮書中指出,即使在純64位模式下,ARMv8指令集數(shù)據(jù)模型中也并非每個(gè)指令都要求64位格式。另外,官方白皮書還提到,ARMv8指令集架構(gòu)定義的指令長(zhǎng)度并非64位,而是標(biāo)準(zhǔn)的32位定長(zhǎng)。這些事實(shí)告訴我們,指令集并非越長(zhǎng)越好。
其次,唯處理器論性能,太片面了。比如,玩大型3D游戲,GPU(圖形處理器)會(huì)更加影響幀數(shù);而拍攝高清照片/4K視頻時(shí),DSP(可編程信號(hào)處理器)則事關(guān)重大。手機(jī)的SoC是包含CPU、GPU、DSP、通訊模塊等大量功能的集合體,不同的應(yīng)用場(chǎng)景會(huì)側(cè)重于不同部件,單獨(dú)以CPU一個(gè)部件來衡量性能未免太過片面。
最后,64位確實(shí)好,但程序本身的支持更重要。前面我已經(jīng)提到,ARMv8 64位指令集包含AArch64、AArch32兩種主要執(zhí)行狀態(tài),如果不針對(duì)AArch64重新編寫程序,那么程序默認(rèn)就會(huì)在AArch32狀態(tài)下運(yùn)行——也就是說,現(xiàn)在的App都是32位的,跟64位一毛錢關(guān)系都沒有,在64位處理器上運(yùn)行32位程序,性能不會(huì)有任何提升。
64位手機(jī)好處都有啥?
廠商們花了這么大力氣投資64位計(jì)算,它當(dāng)然不可能一無是處。那么問題來了,64位手機(jī)好處究竟都有啥?下面這三個(gè)關(guān)鍵點(diǎn),你應(yīng)該好好記住,它們能幫你更好的選購(gòu)自己的愛機(jī),同樣也能成為你茶余飯后的談資。
1、64位支持更大的內(nèi)存
支持更大的內(nèi)存可以算64位處理器帶來的最立竿見影的提升了。處理器字長(zhǎng)不但影響置零件的長(zhǎng)度,還影響尋址空間。目前32位ARM處理器的尋址空間最大為4GB,算上系統(tǒng)占用的空間,內(nèi)存最多3.5GB就是極限了。顯然,對(duì)于越來越龐大復(fù)雜的系統(tǒng)和App而言,這是遠(yuǎn)遠(yuǎn)不夠的。
而64位ARMv8處理器徹底解決了這個(gè)問題,定位高端的Cortex A57架構(gòu)支持最多48位尋址,而面向中低端的Cortex A53則支持40位尋址。雖然沒有做到徹徹底底的64位,但48位尋址可以支持最多16EB(1EB=1024TB=1048576GB)內(nèi)存,40位尋址支持的內(nèi)存容量也以TB為單位計(jì)算。在可以預(yù)見的未來,內(nèi)存容量瓶頸在64位手機(jī)上將不復(fù)存在。
2、64位是在為未來投資
64位處理器支持再多內(nèi)存,現(xiàn)階段手機(jī)內(nèi)存容量也不會(huì)超過4GB,有沒有更實(shí)在一些的好處?答案也是肯定的。
首先,ARMv8 64位處理器支持更多更強(qiáng)的通用寄存器(GPR),GPR個(gè)數(shù)從16個(gè)增加到31個(gè),每一個(gè)都可以隨時(shí)訪問,寬度也拓展位64位。同時(shí),ARMv8的NEON SIMD浮點(diǎn)指令集也得到了加強(qiáng),它擁有32個(gè)128bit寬度寄存器、支持雙精度浮點(diǎn)執(zhí)行、完整支持IEEE754標(biāo)準(zhǔn)。
更多的寄存器意味著處理流程的“堵塞”現(xiàn)象大大減少了。過去,由于寄存器數(shù)量限制,一條指令往往要被拆成兩個(gè)步驟執(zhí)行,而有了足夠多的寄存器,處理器就能在更少的周期內(nèi)搞定指令,體現(xiàn)到App里,就是打開更快、等待時(shí)間更少、運(yùn)行更流暢。
其次,ARMv8指令集引入了AES、SHA-1、SHA-256硬件加密功能,這就好比把原來由手工的加密動(dòng)作扔給了機(jī)械完成,效率提升極大。如果未來有人腦凍打開,開發(fā)一個(gè)手機(jī)版的bitlocker加密/解密軟件,64位處理器比32位快上10倍也不是沒可能。
說到底,更多、更強(qiáng)大的寄存器,更好的硬件加密功能,這些都需要App本身提供支持。還好,ARMv8是下一代64位手機(jī)必然的發(fā)展方向,ARM公司早已將相關(guān)開發(fā)規(guī)范分發(fā)給了開發(fā)者,谷歌Android L系統(tǒng)就推出了專門的64位版本。在可以預(yù)見的未來,我們還是有不小希望能用上真正發(fā)揮64位優(yōu)勢(shì)的App的。換個(gè)角度而言,64位處理器能更好的適應(yīng)未來。
3、64位處理器本身就更先進(jìn)
就算不談64位,市面上那些64位處理器本身的硬件架構(gòu)也更先進(jìn)。這句話聽起來是不是有些別扭?事實(shí)就是這樣的。ARM總共有兩個(gè)支持ARMv8 64位指令集的處理器參考架構(gòu):Cortex-A53和Cortex-A57,目前市面上絕大多數(shù)64位處理器都遵循這兩個(gè)架構(gòu)開發(fā)而來,我們手頭這臺(tái)中興V5 Max搭載的高通驍龍410處理器就基于Cortex-A53,它一共有四個(gè)核心,運(yùn)行頻率1.2GHz。
相比上一代Cortex-A7和Cortex-A15,Cortex-A53和Cortex-A57擁有并行度更高的流水線、準(zhǔn)確率更高的分支預(yù)測(cè)單元、命中率更高的緩存、更大的內(nèi)部總線帶寬??傊拖駝倓傃b修過的房子一樣,A53和A57在各個(gè)方面都有了進(jìn)步。
按照ARM官方的說法,如果使用最新工藝,A53相對(duì)于A7的性能可以達(dá)到1.6-1.7倍左右。而A57更是可以達(dá)到幾乎2倍于A15的相對(duì)性能。同時(shí),即使在32位的軟件環(huán)節(jié)下,A53和A57也更快——因?yàn)槌?4位指令集,它們的硬件本身也經(jīng)過強(qiáng)化。
現(xiàn)在應(yīng)不應(yīng)該買64位手機(jī)?
看完上面的介紹,也許你還在猶豫:現(xiàn)在有沒有必要購(gòu)買64位手機(jī)?我們的答案很簡(jiǎn)單:看價(jià)格。顯然,作為一個(gè)新概念,剛剛誕生的64位安卓手機(jī)價(jià)格并沒有高高在上,許多廠商更是直接將64位手機(jī)的價(jià)格殺入了千元以下。類似的功能,類似的價(jià)格,它的價(jià)格與那些32位的手機(jī)并沒有太多區(qū)別。
所以我們的結(jié)論是:如果需要花費(fèi)大量額外的價(jià)錢去購(gòu)買一臺(tái)64位手機(jī),你當(dāng)然應(yīng)該說NO;但如果性能功能現(xiàn)階段持平,未來有可以預(yù)期的提升,而價(jià)格與32位產(chǎn)品保持一致,買一臺(tái)64位手機(jī),何樂而不為?
(審核編輯: 智匯張瑜)
分享