綜合討論
瀏覽 : 9393
分享

[分享] 64位元手機到底怎樣?四個問題看清本質

一般用戶

等級6

資深大大

陳誠誼2014-11-10 22:51

在蘋果iPhone 5s的64位元處理器一炮打響之后,手機似乎在一夜之間發生了大躍進。廠商們紛紛推出自家的64位元手機處理器,64位元手機已經不是紙面上的概念,而是能買到的實實在在的產品。
要知道,當年家用電腦可是花了十多年才從32位元進化到64位元,智慧手機這才短短幾年,變化就如此迅速,64位元處理器對手機而言究竟有何含義?64位元會快很多嗎?64位元手機值不值得買?我們就以手機上的64位元為話題,帶你剖開現象看本質。
什麼是64位元?
先回答最基本的問題,什麼是64位元?衡量一個人的智商水平要看他的大腦,同樣,判判斷手機是不是64位元,也要看手機的“大腦”,這個大腦就是手機的CPU(中央處理器)(正確來說應該是片上系統SoC)。我們所說的64位元手機,實際上是指使用了64位元處理器的手機。
具體到處理器的内部,64位元處理器指邏輯算數單元、暫存器、總線寬度都是64位元(8個字節)的處理器。相比32位元,64位元能一次性處理更長的指令。有很多手機處理器都達到了這個標準,比如高通驍龍410/615/810,蘋果的A7、A8,英特爾Atom等。
處理器的工作就是運行指令,因此,我們還必須提到“指令集”這個概念。處理器的計算和控制都是通過各種指令完成的,每款處理器在設計時就規定了一系列與其硬體電路相配合的指令系统,這套指令的集合統稱指令集——你可以把它理解為處理器與外界溝通的語言。市面上有許多不同處理器指令集,就好比有些人的母語是英語,有些人的母語則是中文。
目前大多數64位元手機處理器都使用ARM公司的ARMv8 64位元指令集,只有英特爾的Atom處理器是例外,它採用了x86-64指令集,但英特爾在手機市場上的佔有率小得可憐,我們今天就直接略過它,專門來講譪主流的ARMv8 64位元手機。
ARMv8指令集是ARM公司專門針對手機、移動和嵌入式設備推出的64位元指令集,它包含了AArch64、AArch32兩種主要執行狀態。看名字你就知道了,AArch64專注於64位元處理,AArch32則用來支持現有的32位元ARM指令集。從這個角度來看ARMv8是一套不錯的指令集,它既支持未來的64位元程序,也向下兼容現有32位元程序。有了ARMv8的支撑,以後的64位元手機操作系統,如Android 5.0 的64bit都可以簡單、高效地支持現有的32位元App,你不用擔心兼容性問題。




為了幫助合作伙伴們更好更快的拿出有競爭力的產品,ARM還專門制作了兩個支持ARMv8指令集的處理器参考架構:Cortex-A53和Cortex-A57。如果說ARMv8指令集是一門語言,Cortex-A53和Cortex-A57就是基於這門語言的習題册,ARM這位“老師”利用ARMv8布置了一道道“題目”,廠商們只要照着做,就能生產出處理器成品了。



64真的比32位元快一倍?
這是一個經經常被提起的問題,64位元真的要比32位元快一倍嗎?答案當然是NO,但原因很少有人講得清楚。記住下面這三條理由,下次跟朋友聊手機時你的學問會提升很多。
首先,指令集不是1+1=2這麼簡單,指令的長度並不直接等於性能。盡管從數字上看,64位元指令的確要比32位元指令更長,但很多時候我們並不需要那麼複雜的指令。一個應用程序(App)擁有成千上萬行代碼,CPU在執行每條代碼時又會把它分割成無數條指令,編譯器會自動决定怎樣將指令組合起來最高效,它們並非都需要64位元的字長。
一個典型的例子就是ARMv8指令集的數據模型。ARM在官方白皮書中指出,即使在純64位元模式下,ARMv8指令集數據模型中也並非每個指令都要求64位元格式。另外,官方白皮書還提到,ARMv8指令集架構定義的指令長度並非64位元,而是標準的32位元定長。這些事實告訴我們,指令集並非越長越好。




其次,唯處理器論性能,太片面了。比如,玩大型3D遊戲,GPU(圖形處理器)會更加影響幀數;而拍攝高清照片/4K視頻時,DSP(可編程信號處理器)則事關重大。手機的SoC是包含CPU、GPU、DSP、通訊模組等大量功能的集合體,不同的應用場景會側重於不同部件,單獨以CPU一個部件来衡量性能未免太過片面。
最後,64位元確實好,但程序本身的支持更重要。前面已經提到,ARMv8 64位元指令集包含AArch64、AArch32兩種主要執行狀態,如果不針對AArch64重新編寫程序,那麼程序默認就會在AArch32狀態下運行——也就是說,現在的App都是32位元的,跟64位元一毛錢關係都没有,在64位元處理器上運行32位元程序,性能不會有任何提升。
64位元手機好處都有啥?
廠商㥃花了這麼大力氣投資64位元計算,它當然不可能一無是處。那麼問題來了,64位元手機好處究竟都有啥?下面這三關䭈點,你應該好好記住,它們能幫你更好的選購自己的爱機,同樣也能成為你茶餘飯後的談話題材。
1、64位元支持更大的内存(RAM)
支持更大的内存可以算64位元處理器帶來的最立竿見影的提升了。處理器字長不但影響置零件的長度,還影響尋址空間。目前32位元ARM處理器的尋址空間最大為4GB,算上系统占用的空間,内存最多3.5GB就是極限了。顯然,對於越来越龐大複雜的系统和App而言,這是遠遠不够的。
而64位元ARMv8處理器徹底解决了這個問題,定位高端的Cortex A57架構支持最多48位元尋址,而面向中低端的Cortex A53則支持40位元尋址。雖然没有做到徹徹底底的64位元,但48位元尋址可以支持最多16EB(1EB=1024TB=1048576GB)内存,40位元尋址支持的内存容量也以TB为單位計算。在可以預見的未來,内存容量瓶頸在64位元手機上將不復存在。

2、64位元是在為未來投資
64位元處理器支持再多内存,現階段手機内存容量也不會超過4GB,有没有更實在一些的好處?答案也是肯定的。
首先,ARMv8 64位元處理器支持更多更強的通用暫存器(GPR),GPR個數從16個增加到31個,每一個都可以随時訪問,寬度也拓展為64位元。同時,ARMv8的NEON SIMD浮點指令集也得到了加强,它擁有32個128bit寬度暫存器、支持雙精度浮點執行、完整支持IEEE754標準。
更多的暫存器意味着處理流程的“堵塞”現象大大减少了。過去,由於暫存器數量限制,一條指令往往要被拆成兩個步骤執行,而有了足够多的暫存器,處理器就能在更少的周期内搞定指令,體現到App裏,就是打開更快、等待時間更少、運行更流暢。
其次,ARMv8指令集引入了AES、SHA-1、SHA-256硬體加密功能,這就好比把原來由手工的加密動作扔给了機械完成,效率提升極大。如果未來有人脑凍打開,開發一個手機版的bitlocker加密/解密軟體,64位元處理器比32位元快上10倍也不是没可能。
說到底,更多、更強大的暫存器,更好的硬體加密功能,這些都需要App本身提供支持。還好,ARMv8是下一代64位元手機必然的發展方向,ARM公司早已將相關開發規範分發給了開發者,谷歌Android L系統就推出了專門的64位元版本。在可以預見的未來,我們還是有很高希望能用上真正發揮64位元優勢的App的。換個角度而言,64位元處理器能更好的適應未來。
3、64位元處理器本身就更先進
就算不談64位元,市面上那些64位元處理器本身的硬體架構也更先進。這句話聽起來是不是有些别扭?事實就是這樣的。ARM總共有兩個支持ARMv8 64位元指令集的處理器参考架構:Cortex-A53和Cortex-A57,目前市面上絕大多數64位元處理器都遵循這兩個架構開發而來,我們手頭這台中興V5 Max搭載的高通驍龍410處理器就基于Cortex-A53,它一共有四個核心,運行頻率1.2GHz。
相比上一代Cortex-A7和Cortex-A15,Cortex-A53和Cortex-A57擁有並行度更高的流水線、準確率更高的分支預測單元、命中率更高的緩存、更大的内部總線帶寬。總之,就像剛剛裝修過的房子一樣,A53和A57在各個方面都有了進步。




按照ARM官方的說法,如果使用最新工藝,A53相對於A7的性能可以達到1.6-1.7倍左右。而A57更是可以達到幾乎2倍於A15的相對性能。同時,即使在32位元的軟體環節下,A53和A57也更快——因為除了64位元指令集,它們的硬体本身也經過強化。




现在應不應該買64位元手機?
看完上面的介紹,也許你還在猶豫:現在有没有必要購買64位元手機?我們的答案很簡單:看價格。顯然,作為一個新概念,剛剛誕生的64位元安卓手機價格並没有高高在上,許多廠商更是直接將64位之手機的價格殺入了千元以下(指人民幣)。類似的功能,類似的價格,它的價格與那些32位元的手機並没有太多區别。
所以我們的結論是:如果需要花費大量額外的價錢去購買一台64位元手機,你當然應該說NO;但如果性能功能現階段持平,未來有可以預期的提升,而價格與32位元產品保持一致,買一台64位元手機,何樂而不為?
以上文章來自http://news.mydrivers.com/1/327/327853.htm

之前曾經上傳一篇關於64位元的文章,現今64位元手機已有多款上市,在表現上也都有不錯的評價,如HTC Derise 820等,以及HTC代工的NEXUS 9,我們期待高通的旗艦款S810,真正ARMv8 A57+A53的四+四核的表現。








本文章最後由( 陳誠誼 )於 2014-11-25 22:47 編輯

★HTC論壇三週年生日快樂★
因為你讓我超越想像、不斷實現完美的畫面,讓我看見這一路令人驚豔的一切,我愛上HTC~
檢舉 回應

一般用戶

等級4

模範鄉民

薛人滈2014-11-11 01:16

「科技」這玩意兒並非"預測"得來的,而是"預見"並實行來的。

檢舉 回應

一般用戶

等級6

資深大大

陳誠誼2014-11-11 02:13

薛人滈 發表於 2014-11-11 01:16
「科技」這玩意兒並非"預測"得來的,而是"預見"並實行來的。

64位元SoC在可預見的未來裏,應該可以說前途一片光明,我很期待它的表現,尤其在軟硬體結合之後,更可以大展身手了,以後RAM超過4G應該也不用太驚訝了,再來就應該提升ROM的空間了吧!

★HTC論壇三週年生日快樂★
因為你讓我超越想像、不斷實現完美的畫面,讓我看見這一路令人驚豔的一切,我愛上HTC~
檢舉 回應

一般用戶

等級4

模範鄉民

薛人滈2014-11-11 16:42

陳誠誼 發表於 2014-11-11 02:13
64位元SoC在可預見的未來裏,應該可以說前途一片光明,我很期待它的表現,尤其在軟硬體結合之後,更可以 ...

讓本人想到當年,還是"小小年紀",當時的"1GB"等於現在的"1TB"...

檢舉 回應

一般用戶

等級6

資深大大

陳誠誼2014-11-11 16:51

薛人滈 發表於 2014-11-11 16:42
讓本人想到當年,還是"小小年紀",當時的"1GB"等於現在的"1TB"...

敢問當年小小年紀是幾歲啊?可以私訊不給人看,哈哈!開玩笑,大大不方便也不勉強。。當年的1G相當於現在的1T,那將來的16EB是要怎麼算啊!

★HTC論壇三週年生日快樂★
因為你讓我超越想像、不斷實現完美的畫面,讓我看見這一路令人驚豔的一切,我愛上HTC~
檢舉 回應

一般用戶

等級4

模範鄉民

薛人滈2014-11-11 17:03

陳誠誼 發表於 2014-11-11 16:51
敢問當年小小年紀是幾歲啊?可以私訊不給人看,哈哈!開玩笑,大大不方便也不勉強。。當年的1G相當於現在 ...

說不準耶...我只是大概有個印象,畢竟像"電子科技"這種東西都是以"幾何數"進步的。

檢舉 回應

一般用戶

等級6

資深大大

陳誠誼2014-11-11 17:10

薛人滈 發表於 2014-11-11 17:03
說不準耶...我只是大概有個印象,畢竟像"電子科技"這種東西都是以"幾何數"進步的。 ...

哈哈!大家似乎對這類文章不太感興趣,有美女看當然比較補眼睛嗎?沒別的意思,科技嘛!冰冷無味。但受益無窮。.

★HTC論壇三週年生日快樂★
因為你讓我超越想像、不斷實現完美的畫面,讓我看見這一路令人驚豔的一切,我愛上HTC~
檢舉 回應

一般用戶

等級4

模範鄉民

薛人滈2014-11-11 18:00

陳誠誼 發表於 2014-11-11 17:10
哈哈!大家似乎對這類文章不太感興趣,有美女看當然比較補眼睛嗎?沒別的意思,科技嘛!冰冷無味。但受益 ...


很多我們視為理所當然的東西,如果能用一個"了解它"的眼光去對待它的話,相信從個人的價值觀,乃至於整個社會的氛圍,一定都會跟現在有所不同。

檢舉 回應

分享