蘋果公司 iOS 7 和 A7 晶元的 64 位跟普通 64 位有很大區別嗎?

64的A7出來,很多媒體、民眾都講會帶來性能提升;爲什麼在桌面端好像從沒有人說過這一點呢?是蘋果應用了先進科技,還是桌面端沒有人優化?現在感覺在桌面端的 64 位在大眾眼裏是負面的,什麼不兼容、占內存大、占磁盤大,,唯一的好處(也是很多人升級的原因)就是能使用更多內存。而 iPhone 5s 的 64 位是正面的:多達兩倍的性能提升(不確定是不是蘋果說的,但很多地方都到)、創新、向桌面端進發。

問題

  • 硬體
    蘋果的 64 位處理器,是否應用了比桌面端 64 位處理器更先進的技術?晶元性能的提升,和 64 位有關嗎?
  • 軟體
    64 位能為蘋果的移動產品帶來多少性能提升?64 位在桌面上能不能帶來性能提升?比如 Office 系列和 Adobe 家(某些)軟體,64 位版本和 32 位版本有什麼區別?造成這種現象的原因,是因為蘋果建立了優良的開發環境嗎?比如強制為 64 位優化,不然不通過審核;與 64 位不兼容的部件馬上升級(自己的)、勒令升級(開發者的)。而桌面端似乎沒有這樣的優點,一個軟體不兼容了,你只能自己找開發者解決。
  • 輿論
    爲什麼蘋果能夠迅速的在 64 位這件事上佔據輿論制高點?是因為蘋果講64位與性能提升並列嗎(也許並沒有表示64位和性能提升有聯繫,但是放在一起提到了)?

題主這個問法混雜了硬體層面的比較、操作系統層面的比較和應用層面的比較,而且顯然缺乏必要的背景知識,所以很少真正懂的人願意費這個勁來回答呢。

Mac OS X 引入 64 位是在 Tiger 的時代,在 Snow Leopard 之後才默認起動64位操作系統核心。現在,對於普通用戶而言,在蘋果的電腦上進 64 位模式是沒得選的,一般人哪會知道開機時同時按住3和2可以進32位模式或者修改 Boot.plist 固定進入 32 位模式呢?所以,蘋果 64 位在桌面上 NB 不 NB ,爽不爽早就過了討論期。

而所謂桌面端 64 位在大眾眼中的負面印象主要是指 Windows 吧?其實要是 M$ 不提供 32 位版本的Windows,只提供一種複雜的方式切換進 32 位模式,大家是不是也就沒得抱怨了?

iOS 的操作系統核心其實就是桌面版裁剪過來的,它們上面的應用都同樣有多佔存儲空間的問題,蘋果家的 universal binary 技術佔地更加厲害,所以在桌面上有 n 種 app 瘦身工具,其實就是把用不到的架構、其它語言的資源刪除,完全不影響使用。不過存儲容量上升價格下降的速度更快,所以這點代價對於獲得的便利來說,還是很合算的。

M$ 的策略就比較悲催了,你買了個 32 位版本的軟體,在 64 位系統上可能還可以用,如果買到的是 64 版本,在 32 位系統上可能裝不上,裝上了也可能工作不正常;n 多用戶還在堅守 32 位系統, n 多開發者自然把 32 位版本放第一優先順序,結果就是 64 位生態系統的安裝使用體驗要很多年才能緩慢發展到跟 32 位差不多的水平。在這個過程里,自然各種抱怨啦。

不管 Windows 還是 Mac OS X 或者 iOS,64 位除了帶來不需要努力就能得到的好處確實只有大內存地址空間,軟體要能在 64 位上有更好的性能,首先要利用得上 64 位特性並且針對 64 位硬體做優化,一個 32 位的軟體裝在 64 位操作系統上是不會有 2 倍性能這種好事的。就好比買輛跑車每天高峰期開著去市中心上班,也跑不快還費油;說到這個,不由得想起了那些在高速公路上占著限速 110~120 快車道上開 80 的 四個圈 和 四個扇,太可恨了。

實際上操作系統層面上,Windows 與蘋果的 32 位版本與 64 位版本編程確實有一些不一樣,不過 ILP32 vs. LLP64 vs. LP64 的差異,對於一般用戶來說其實沒啥意義。

x64 曾經讓 AMD 打了一個翻身仗,蘋果在移動設備這一廣闊市場上率先引入 64 位對於 ARM 來說意義重大呀,如果沒有蘋果出這一招,Android 核軍備競賽還有得打呢。


因為蘋果對 iOS 應用有著遠勝於微軟對 Windows 應用的主導權。

解釋一下——

無論硬體如何發展,其所有的「變革、改進」都必須通過應用軟體方能為用戶所體驗。而應用隨平台更新迭代的能力,就決定了它能在多大程度上發揮出硬體的效能提升。

我的回答針對的就是這一點——

Windows 很難帶動整個生態圈不止為滿足當下的需求更是為了更完美的體驗不斷前進。

(推而廣之,或許可以說所有開放的系統都有類似的問題。)


逐個回答一下問題吧:

1、蘋果的64位處理器,是否應用了比桌面端64位處理器更先進的技術?晶元性能的提升,和64位有關嗎?

雖然這方面的資料非常少,但事實上可能性是很小的。
64位和32位事實上只是處理器技術中很小的一個部分,即指令集的不同。而此次的升級,似乎和桌面的處理器一樣,是採取64位擴展指令集來完成的。
指令集的優化可以增加處理器在某些特定領域的性能,指令集的優化與位寬也沒有必然的聯繫,只是64位需要一些新的指令罷了。
處理器的優化可以從很多個方面來拓展,單單從位寬來說64位的處理器並不見得有什麼革命性的提升。事實上每一代的處理器都使用了諸多先進的技術,這些比位寬來的更重要。

2、64位能為蘋果的移動產品帶來多少性能提升?64位在桌面上能不能帶來性能提升?比如Office系列和Adobe家(某些)軟體,64位版本和32位版本有什麼區別?

如上所說,新的指令集必然可以帶來特定領域的性能提升,如果排除這些干擾,僅僅考慮更高位寬的指令集,那麼主要可以在長數據處理(如64位的整型和浮點運算),內存和數據定址等方面有所提升。換句話說單單就64位而言,如果在具體應用中位寬不是瓶頸的話(譬如說沒有長數據處理和不需要那麼多內存),那麼提升非常有限。

3、造成這種現象的原因,是因為蘋果建立了優良的開發環境嗎?比如強制為64位優化,不然不通過審核;與64位不兼容的部件馬上升級(自己的)、勒令升級(開發者的)。而桌面端似乎沒有這樣的優點,一個軟體不兼容了,你只能自己找開發者解決。

就現在的情況來看,新的iPhone同樣兼容原有的32位的應用。但這裡問題的關鍵是iOS是一個非常年輕的現代的操作系統,32-64位兼容是非常簡單容易做到的。事實上在Windows平台的基於.NET(不包含特定位寬的平台調用)或者Windows RT技術的應用,也不會在64位系統上有任何兼容問題。可以無縫兼容,而不需要操作系統做WOW兼容。
所以說,這和蘋果的封閉關係也不大,而是現代的操作系統和應用都已經無需考慮這種問題。就像千年蟲問題一樣,現代的操作系統和應用可以輕鬆應對這個上個世紀談之色變的事情。

4、爲什麼蘋果能夠迅速的在64位這件事上佔據輿論制高點?是因為蘋果講64位與性能提升並列嗎(也許並沒有表示64位和性能提升有聯繫,但是放在一起提到了)?

我想,大概是因為,這是蘋果。
以及,這是64位技術第一次運用到移動端。
事實上由於桌面端的64位技術廣泛的宣傳,消費者已經明白這是一個非常棒的,能夠給自己帶來更好體驗的技術。而恰逢此時,蘋果率先將64位技術引入移動端,故而以此為賣點進行宣傳是非常正常的。
如果說新的iPhone的性能提升了,那麼與64位技術的引入的關係肯定並不大,而是新的CPU運用了大量先進的技術的結果。


根據geekbench3測試結果,新a7在64bit環境下的性能提升主要來自於新的浮點矢量擴展指令集,該指令集包含在arm v8指令集內,僅在程序運行於64bit環境下才可能開啟。在它的幫助下a7運行dgemm雙精度浮點運算時的速度比32bit環境下翻倍。所以實際的性能提升的原因是這個擴展指令集而非64bit本身。


實名反對把原因歸結為用戶替蘋果洗地的匿名答主。把原因歸結為果粉替蘋果洗地,我只能歸結為無知的果黑。(我辯白兩句就是玻璃心了?)

蘋果的64位我認為和微軟的64位,根本就是兩種不同路線。

蘋果對於自己硬體以及系統,有絕對的掌控權,它不用擔心硬體碎片化導致程序不兼容,不用擔心合作廠家一直使用32位的CPU拖後腿。

相反我覺得安卓的64位化和微軟64位化更有可比性。


「64的A7出來,很多媒體、民眾都講會帶來性能提升;爲什麼在桌面端好像從沒有人說過這一點呢?是蘋果應用了先進科技,還是桌面端沒有人優化?」
64位硬體對為其優化過的軟體性能提升巨大,這是真的,桌面和移動都這樣。

「現在感覺在桌面端的64位在大眾眼裏是負面的,什麼不兼容、占內存大、占磁盤大,,唯一的好處(也是很多人升級的原因)就是能使用更多內存。而iPhone 5s的64位是正面的:多達兩倍的性能提升(不確定是不是蘋果說的,但很多地方都到)、創新、向桌面端進發。」
不兼容是軟體開發者沒有跟上64位時代的問題,為什麼IE6不支持HTML5的時候你們罵IE6,部分設計不好的軟體不支持64位環境的時候你們罵64位?
占內存大、磁碟大?新的系統帶來這麼多新功能,哪個不用佔用磁碟和內存?而且64位系統為了兼容32位軟體,還得再帶一套32位運行環境,更加佔用內存和硬碟。
使用更大的內存不是唯一的好處。性能提升(以及可以使用更多寄存器等等)才是真正的好處。
蘋果說的那是人家的廣告宣傳,看過笑笑就好。

「蘋果的64位處理器,是否應用了比桌面端64位處理器更先進的技術?」
沒有。但是技術略有不同。蘋果用的是ARM的64位架構,桌面端用的是I/A兩家自己的64位架構。

「晶元性能的提升,和64位有關嗎?」
有,但不完全有。我只能說,為64位優化過的程序可以跑出比該程序32位版本相對更高的速度,而且可以使用更大的內存(如果硬體允許的話)。

「64位能為蘋果的移動產品帶來多少性能提升?」
不好說。就我看過的幾個演算法測試結果看,最低-8%左右,最高200%以上,平均下來是百分之十幾。但是這是在演算法沒有為64位優化的情況下比較的。

「64位在桌面上能不能帶來性能提升?」
能,但性能的提升不僅僅因為64位,還有架構、主頻、外部設備等原因,所以無法一概而論。

「比如Office系列和Adobe家(某些)軟體,64位版本和32位版本有什麼區別?」
功能上沒有任何區別。性能上(僅在處理大型任務時)能夠感受到提升。另外,Adobe有些軟體需要巨大內存的時候64位的優勢就顯示出來了。
64位軟體不兼容部分32位插件。

「造成這種現象的原因,是因為蘋果建立了優良的開發環境嗎?比如強制為64位優化,不然不通過審核;與64位不兼容的部件馬上升級(自己的)、勒令升級(開發者的)。而桌面端似乎沒有這樣的優點,一個軟體不兼容了,你只能自己找開發者解決。」
說的有點道理。iOS軟體兼容64位(不做優化的話)很簡單,裝上最新的xcode重新編譯一下就好了。Apple對軟體分發渠道的優勢也在這裡有所體現。桌面端由於無法控制分發渠道,只好由操作系統主動兼容32位(WOW64等方式),雖然絕大多數api都可以正常工作,但涉及系統底層以及使用了未公布的api的軟體很有可能就這麼掛了。這我覺得更多的是開發者的問題而不是操作系統的問題。

「爲什麼蘋果能夠迅速的在64位這件事上佔據輿論制高點?是因為蘋果講64位與性能提升並列嗎(也許並沒有表示64位和性能提升有聯繫,但是放在一起提到了)?」
我覺得首先是因為蘋果是第一個(搶在ARM64位標準發布之前)發布了64位移動CPU的廠商。其次,桌面上面的64位系統發布的時候並未像蘋果那樣造勢。第三,大眾對軟體發布關注不夠,而對硬體廠商關注更多。

PS:國內很多媒體都喜歡誇大事實,上次人家實驗室做了個什麼存儲晶元模型就說X晶元馬上可以投入商用,即將帶來XX革命云云,還是別看了。


處理器的生產,越後來出現的技術必然比之前的更先進,而跨平台比較則不合適, ARM X64 還有 RISC 晶元誰更先進完全沒有可比性。
晶元性能提升與64位關係不大,但64位寄存器地址必然能帶來更大數據處理能力,只要調度系統不出什麼問題,對於數據處理必然會帶來更多的優勢。浮點運算或者長數據運算不必要拆剪了。
軟體就更簡單了,32位定址問題決定了想要用更大的內存,請上64位系統吧……現在高端手機已經2G RAM了……很快地址就會不夠用了。
至於64位軟體的優勢……現在那些100萬行的excel,300多M的csv,2,3G一個PSD……沒有64位應用支撐簡直就是不可思議……
大家(IBM 微軟 HP ……)炒了那麼久的64位已經給大家打下了64位=高端=性能強勁 的概念,蘋果現在站出來淡淡的說我CPU 是64位的,然後就談論別的去了……這種市場手段迫使其他還在用32位處理器的企業無法在處理器性能上和蘋果比較……安卓機常見跑分什麼的,都沒人敢拿出來……


這個嘛,我猜應該是桌面端64位CPU剛誕生的時候你還沒有長大呢。

另外,對於大眾來說,所有新版Windows都是負面的。


推薦閱讀:

TAG:蘋果公司 (Apple Inc.) | 64 位操作系統 | Apple A7 晶元 |