精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

蘋果Mac采用自研處理器 可能遇到什么問題呢?

工程師 ? 來源:面包板博主 歐陽洋蔥 ? 作者:面包板博主 歐陽洋 ? 2020-09-09 15:45 ? 次閱讀

作者:面包板博主 歐陽洋蔥

此前,蘋果CEO庫克在WWDC 2020上宣布,未來Mac電腦將改采自主研發(fā)的ARM架構(gòu)處理器“Apple Silicon”,而非英特爾。事實上,兩家的合作始于2005年,當(dāng)時蘋果創(chuàng)始人喬布斯在WWDC宣布放棄PowerPC處理器計劃,轉(zhuǎn)身就牽手英特爾。這一決定象征著蘋果與英特爾在Mac電腦業(yè)務(wù)合作關(guān)系即將走向“終結(jié)”。那么,蘋果Mac采用自研處理器,可能遇到什么問題呢?

此前,蘋果CEO庫克在WWDC 2020上宣布,未來Mac電腦將改采自主研發(fā)的ARM架構(gòu)處理器“Apple Silicon”,而非英特爾。

事實上,兩家的合作始于2005年,當(dāng)時蘋果創(chuàng)始人喬布斯在WWDC宣布放棄PowerPC處理器計劃,轉(zhuǎn)身就牽手英特爾。這一決定象征著蘋果與英特爾在Mac電腦業(yè)務(wù)合作關(guān)系即將走向“終結(jié)”。

那么,蘋果Mac采用自研處理器,可能遇到什么問題呢?來自面包板社區(qū)的明星博主——歐陽洋蔥在今年5月,在WWDC 2020之前就這一角度發(fā)表了自己的看法。

實際上,有關(guān) Mac 系列計算機要開始采用 Arm 處理器的傳言似乎是從2010年就開始的,那會兒蘋果也才剛剛開始做 iPhone 的 SoC。這一傳言就10年過去了,起碼今年前不久才更新的MacBook Air都還在用 Intel 的處理器。

想起來以蘋果的“慣例”,對自家生態(tài)的管控,恨不得從硬件到軟件由內(nèi)到外全部一手包辦。這樣一家公司,在如今有能力自己設(shè)計處理器,為何還要受制于Intel?況且Mac設(shè)備本身的開發(fā)周期,還面臨與 Intel 處理器迭代撞期的尷尬,導(dǎo)致Mac經(jīng)常無法用上 Intel 最新的處理器。如果用自家的 A 系列 SoC,豈不是很美的一件事情嗎?

這次的傳言看起來格外靠譜,彭博社報道稱,2021 年采用 Arm 處理器的 Mac 電腦就要問世了。彭博社線人消息稱,Mac 要搭載的處理器將比 iPhone 和 iPad 之上的都更快(好像是廢話)。“蘋果準(zhǔn)備在明年,至少推出一款采用自家芯片的 Mac.”“臺積電將會負(fù)責(zé)制造新款的 Mac 芯片,基于 5nm 制造技術(shù)。”

“首批 Mac 處理器將有 8 個核心,核心代號 Firestorm,其中有 4 個是節(jié)能核心——內(nèi)部代號 Icestorm。蘋果針對未來的 Mac 處理器,還計劃探索超過 12 個核心的設(shè)計?!敝档靡惶岬氖?,傳言中的 Mac 處理器也是以 SoC 的形態(tài)出現(xiàn),其上至少包含了 CPUGPU。[1]

這件事情的可行性當(dāng)然是有的,只是在具體實施上會遇到不少問題。如果說 macOS 轉(zhuǎn)往 Arm 平臺真的那么容易,蘋果估計早就干這事兒了。而且事實上,微軟這兩年正在做這件事情,但在具體的方向上有些小差異。在這篇文章里,我們做一些簡單的分享,雖然無法得出結(jié)論,也可與各位做探討。

多插一句,一般來說,我首發(fā)在面包板的文章籌備周期比較短,而且相對來說內(nèi)容更加個人化、娛樂化。與電子工程專輯或者其他平臺發(fā)布的文章相較,會顯得沒有那么正式和考究。另外,這篇文章主要參照的是維基百科,我不想去翻以前蘋果的開發(fā)者文檔了——基于維基百科的不可靠性,以下內(nèi)容可能有部分是存在事實錯誤的;另外,我也不搞軟件和系統(tǒng)工程,所以貽笑大方之處還請海涵。

蘋果曾有的兩次遷徙經(jīng)歷

蘋果的 Mac 產(chǎn)品線與 Intel 的合作是從 2005 年開始的。那一年,Intel 的 CEO 還為蘋果站了臺,與喬布斯一起。次年的 Mac Pro 就開始正式采用 Intel 處理器(Mac OS X 10.4.4 Tiger)。在此之前,Mac 并不是 x86 平臺的擁躉,我記得看電子科技相關(guān)雜志,包括當(dāng)年像臺燈一樣的 iMac,蘋果在宣傳詞中都提到處理器比同時代的 Intel 奔騰快多少倍之類。

在此之前,蘋果就有過兩次在指令集平臺上轉(zhuǎn)舵的經(jīng)歷,看起來已經(jīng)是個老手了。至于為什么要換用其他平臺,這可能和軟硬件更具體的技術(shù)問題相關(guān),不過從社會上廣為流傳的資訊來看,都是因為老平臺的效率越來越不濟(jì)(就好像如今主流觀點認(rèn)為 x86 處理器的效率不如 Arm,雖然我不這么看;很多人認(rèn)定,Mac 轉(zhuǎn)向 Arm 也算是合情合理)。

從這兩次轉(zhuǎn)舵,其實可以大致來看一看,這回若從 x86 轉(zhuǎn)往 Arm,可行性幾何?或者蘋果從前的轉(zhuǎn)舵經(jīng)驗,是否有足夠的參考價值。一般來說,從一個硬件平臺轉(zhuǎn)往另一個硬件平臺,經(jīng)常意味著拋棄以前的開發(fā)者,以及拋棄以前的用戶。因為轉(zhuǎn)往新的硬件平臺,總是意味著舊有軟件將停止更新,且舊的開發(fā)生態(tài)徹底終結(jié),未來的新軟件也無法安裝在舊平臺上。當(dāng)然系統(tǒng)制造商總是會采用一些折中的兼容性方案來實現(xiàn)過渡。而“過渡”的平滑與否,真的就要看廠商的水平。

1994-1996 年前后,蘋果的 Mac 電腦從更早摩托羅拉的 68k 系列芯片轉(zhuǎn)往 PowerPC 處理器(參與 PowerPC 聯(lián)合開發(fā)的應(yīng)該有摩托羅拉、蘋果和 IBM)。這個轉(zhuǎn)換過程持續(xù)了幾年,當(dāng)時蘋果的過渡方案是所謂的 Mac OS Classic(Mac OS Classic 也就是經(jīng)典 Mac OS,指代了 Mac OS X 之前的 Mac 操作系統(tǒng)),可以同時跑在 68k 和 PowerPC 平臺下。有個詞叫 fat binary,形容某一種應(yīng)用,占用更多的存儲空間(所以才 fat 吧。..),但混合了多種指令集的原生代碼支持——也就能夠在多種類型的處理器上跑。蘋果當(dāng)時搞的這種 fat binary,就是令開發(fā)者將 68k 編譯版本和 PowerPC 編譯版本打包到同一個執(zhí)行程序中。

另一方面,當(dāng)時蘋果引入了一種較低層級的模擬方案。系統(tǒng)中有一個 Mac OS nanokernal 內(nèi)核,這個內(nèi)核建立在 Macintosh ROM 里面(Macintosh ROM 是最早 Macintosh 電腦中的一個固化在主板上的芯片,用于電腦啟動時的初始化)。而這個 ROM 內(nèi)部有個叫做 Macintosh Toolbox 的東西,類似于 BIOS 這種角色。而 Mac OS nanokernal 為 Toolbox 提供 68k 處理器的模擬環(huán)境。

Mac OS nanokernal 在電腦啟動時加載,內(nèi)存里開辟一個 PowerPC 內(nèi)核空間加載模擬器。隨后模擬器繼續(xù)加載 Toolbox 對系統(tǒng)硬件初始化,隨后的操作和 68k 時代基本上一樣。這時期 PowerPC 設(shè)備的內(nèi)核,實際上就是運行在 68k 模擬器里的 Toolbox。

nanokernal 的主要工作就是讓現(xiàn)有 68k 版本的操作系統(tǒng)跑在新的 PowerPC 硬件下,如此系統(tǒng)普通狀態(tài)就能跑 68k 代碼。在必要的情況下可以轉(zhuǎn)回到 PowerPC 模式下,基于中斷處理程序(interrupt handler)實現(xiàn),并將虛擬內(nèi)存系統(tǒng)映射到 PowerPC 硬件上。不過維基百科說,這個過程,也可能只是由跑在用戶態(tài)的模擬器去處理的。

iMac G4,采用 PowerPC G4 處理器

無論如何,這都是個看起來十分簡單,而且還非常低效的方案(原生的 PowerPC 性能似乎很難發(fā)揮);不過好像也很有效,Mac OS nanokernal 的 68k 模擬器也就為舊軟件提供了這種低層級的兼容性。當(dāng)時的模擬器提供的運行環(huán)境,和 Macintosh Centris 610(處理器具體型號為摩托羅拉 68LC040)最為接近。

早期版本的 68k 模擬器會解碼每一條指令,并立即執(zhí)行一系列對應(yīng)的 PowerPC 指令,實現(xiàn)這種模擬。后續(xù)的 PCI PowerMac(PCI 總線的 PowerPC)中的動態(tài)重編譯模擬器(dynamic recompilation)則對性能做了提升:將代碼常見的部分,“重編譯”為更快的、PowerPC 原生序列——且在本地做了緩存(locally cached)。也就是說這種模擬器能夠識別一些 680x0 代碼序列,并且直接跑已經(jīng)緩存過的 PowerPC 代碼,也就避免了重新轉(zhuǎn)譯。對于一般的開發(fā)者來說,這種轉(zhuǎn)換也就顯得比較無痛,因為模擬器是自動開始和結(jié)束的。

最初的 Mac OS nanokernal 是相當(dāng)簡單的,這就是個單任務(wù)系統(tǒng),把大部分工作交給操作系統(tǒng) 68k 版本的模擬器去跑。有興趣的同學(xué),可以去了解一下當(dāng)年的 Mac OS Classic,它似乎還稱不上一個現(xiàn)代化的操作系統(tǒng),連內(nèi)存保護(hù)都沒有;上層的應(yīng)用程序直接跑在 Toolbox 上,除了獲取系統(tǒng)提供的功能和資源,還能直接操作硬件和內(nèi)存。這個版本的 nanokernal 似乎是到 Mac OS 8.5 終結(jié)的。[2][3][4][5]

第二版 Mac OS nanokernal 也算是越來越像樣了,開始支持多任務(wù)多處理器、消息傳遞,可以算是微內(nèi)核了;內(nèi)核存在于受保護(hù)的內(nèi)存空間中,并在用戶態(tài)下執(zhí)行設(shè)備驅(qū)動。這是題外話了。

Mac OS Classic 時代的操作系統(tǒng)和個人電腦還是相當(dāng)?shù)拇址藕筒恢v究,而且層級結(jié)構(gòu)也比今天要簡單得多。而另一方面,其實也不難發(fā)現(xiàn),即便是當(dāng)年蘋果電腦用戶基數(shù)不多的時代,生態(tài)搬遷都需要付出這般代價;每一次平臺搬遷,實際上都需要付出代價,由上至下。

還有一點值得一提,后來 Mac OS X(PowerPC 版)內(nèi)部有個名為 Classic 的環(huán)境,這是一個抽象層——絕大部分 Mac OS 9 應(yīng)用都依托于 Classic 環(huán)境跑在 Mac OS X 上。從 10.5 美洲豹系統(tǒng)開始,就已經(jīng)去掉了 Classic 環(huán)境(即更晚的 x86 平臺也就不再對 Classic 做出支持)。具體來說,Classic 環(huán)境包含了一個 Mac OS 9 系統(tǒng)文件夾,以及一個 New World ROM 文件(前文提到的早期 Macintosh ROM 算是 Old World ROM;而 New World ROM 時期,早期 Macintosh ROM 不復(fù)存在,原本的 Toolbox 成為一個文件存在硬盤上)。這里的 Classic 可以認(rèn)為是 Mac OS X 之下的一個模擬子系統(tǒng)。[6]

從 PowerPC 轉(zhuǎn)往 Intel x86

2005 年,喬布斯表示蘋果對于 IBM 的 PowerPC 開發(fā)進(jìn)度非常失望(這集我看過!去年的 Intel 基帶事件似乎也是這么演的),而 Intel 顯然可以滿足蘋果的需求。當(dāng)年喬布斯大談每瓦性能,實際上也就是能效比,這似乎也是如今在輿論上,x86 處理器陷入不利的原因。喬布斯在 WWDC 大會上宣稱,Mac OS X 的每個版本都“秘密地”針對 Intel 處理器做了開發(fā)和編譯。所以現(xiàn)在的 macOS 有沒有“秘密地”針對 Arm 做開發(fā)和編譯?

當(dāng)年 Intel 為蘋果站臺的名場面

這次的兼容性解決方案,是一種名為 Rosetta 的指令解釋器,這是一個動態(tài)二進(jìn)制轉(zhuǎn)譯器(dynamic binary translator)。蘋果在宣傳中,把 Rosetta 稱作是“the most amazing software you‘ll never see”。蘋果說對于舊版 PowerPC 應(yīng)用來說,那些重交互、但算力需求比較低的應(yīng)用,非常適用于 Rosetta(比如文字處理);而算力要求比較高的(比如 AutoCAD、Photoshop)可能就會悲?。ê芟?Windows on Arm???);一些“專業(yè)級”的媒體應(yīng)用,比如 Final Cut Pro、Logic Pro,則完全不支持。

Rosetta 所處的層級比 68k 模擬器要高,是個“用戶級”的程序,只能監(jiān)聽和模擬用戶級代碼。這可能和蘋果擔(dān)心安全問題有關(guān),而且畢竟 Rosetta 推出的時間,操作系統(tǒng)也比 68k 模擬器年代要成熟很多了。所以 Rosetta 不支持的環(huán)境和狀況有很多,也包括了不支持轉(zhuǎn)譯 PowerPC G5 指令。

蘋果后來發(fā)布的 Xcode,有針對 Intel 與 PowerPC 的 Universal Binary,就跟前文提到的 fat binary 類似——這樣一來,當(dāng)時面對平臺遷徙的開發(fā)者,在面對 Mac 應(yīng)用開發(fā)時,針對基數(shù)也算多的 PowerPC 用戶,不會不知該選 PowerPC 還是 x86,因為兩個都可以要(微軟 WinRT 借鑒對象?)。

不過 Resotta 的確在過渡平滑性上要差一些。針對 Mac OS 平臺下不同類型的應(yīng)用,開發(fā)者使用 Rosetta 還是需要做一些基本工作的,比如 Cocoa 應(yīng)用需要重新編譯、檢查字節(jié)順序問題;Carbon 應(yīng)用則要求做小幅調(diào)整;而使用 Metrowerks Codewarrior 套裝開發(fā)的應(yīng)用則需要做較大程度的修改(Codewarrior 是一個 IDE,這個 IDE 的早期版本就針對 68k 和 PowerPC Macintosh,當(dāng)年蘋果轉(zhuǎn)往 PowerPC 時,CodeWarrior 成為 Mac 實際上的標(biāo)準(zhǔn)開發(fā)系統(tǒng),快速取代了蘋果自己的 Macintosh Programmer’s Workshop)。[7][8]

就最終的成果來看,Mac 的這第二次轉(zhuǎn)舵還是很成功的。實際上即便到 2009 年,Mac OS X 10.6 雪豹時期,蘋果已經(jīng)完全不再支持 PowerPC,依然有不少開發(fā)者通過 Universal Binary 對這一平臺做出后續(xù)數(shù)年的支持——這還是能夠從側(cè)標(biāo)反映蘋果在兼容性方案上的不錯表現(xiàn)。

但我覺得,這次的成功主要并不來源于蘋果在兼容性工作上的成功,而在于 Mac 轉(zhuǎn)向 x86 本身就是一次從冷門到熱門,以及低效向高效的轉(zhuǎn)變,因為 x86 平臺原本就相當(dāng)成功。Intel 這些年起碼在桌面 CPU 的效率提升上是獨占鰲頭的。另外要知道 PC 市場的絕對大頭:Windows 就一直在用 x86。而 Mac 轉(zhuǎn)往 x86,則很大程度上意味著 Mac 設(shè)備從此以后就可以名正言順地安裝 Windows 系統(tǒng)了。蘋果自 2006 年起引入的 Boot Camp 還對 Windows 的安裝做出了原生支持。

也是從這個時候開始,大批量的人在星巴克用 MacBook 裝逼(以及運行的卻是 Windows 系統(tǒng))才變得可行。或者說至少買一臺 Mac,就不用放棄 Windows——而且同一時間還有大量效率較高的虛擬程序可以跑 Windows 及對應(yīng)的應(yīng)用。我覺得無論如何,這都是 x86 平臺的 Mac 得以大獲成功的原因。

而且也是自此之后,許多軟件大牌企業(yè)才開始將 Mac 生態(tài)納入重要考慮范疇,甚至優(yōu)先于 Windows 做軟件開發(fā)。相較而言,以前的那點生態(tài)損失根本就不算什么;和當(dāng)年 68k -》 PowerPC 的轉(zhuǎn)變相比,這次的轉(zhuǎn)變有著天然的生態(tài)優(yōu)勢。當(dāng)然,在 x86 成為 Mac 的選擇以后,Mac 設(shè)備自身的設(shè)計變遷,為行業(yè)樹立標(biāo)桿也是重要原因,如 2008 年推出的 MacBook Air;另外,現(xiàn)在基于 web 的應(yīng)用越來越多,很多人對瀏覽器的依賴已經(jīng)大過操作系統(tǒng)本身,這讓平臺選擇進(jìn)一步脫耦。

所以,我覺得 Mac 在轉(zhuǎn)向 x86 平臺時的成功,更多的是時勢造就,甚至別家生態(tài)使然;亦是蘋果在電子科技發(fā)展史上的一次識時務(wù)之舉;且以當(dāng)年 Mac 的體量,更不存在尾大不掉的問題。

從 x86 轉(zhuǎn)向 Arm?Arm 效率真的高于 x86 嗎?

我們近兩年聽到最多有關(guān) Mac 要從 x86 轉(zhuǎn)向 Arm 的原因,好像并不是蘋果要加大生態(tài)掌控力(這是我覺得蘋果可能決策轉(zhuǎn)向的最主要原因),而是 x86 處理器的效率比 Arm 差很多——這方面的報道也還不少。就相對直觀的消費用戶體驗來看,這一點似乎還是有足夠的論據(jù)的。這些年智能手機、平板產(chǎn)品的性能提升速度如此之快,感覺跟 PC 是不是已經(jīng)差不多了?

蘋果前些年發(fā)布 iPad Pro,并將其定位于生產(chǎn)力工具的時候,就不忘在發(fā)布會上黑現(xiàn)在的 PC,聲稱 iPad Pro 所用的 Ax 處理器比市面上 90% 的 PC 還要快。雖然也不知道這種對比是如何產(chǎn)生此等量化數(shù)據(jù)的。加上還有 GeekBench 這種蘋果專用跑分工具(誤)助陣,像 A13 這種芯片的跑分成績比 AMD Ryzen 3850X 還要高;單核平均功耗才 7、8W 的 A12X,單核跑分和 TDP 95W 的 Intel Core i7-8700K 差不多,多核成績則比 8600K 還要高。

這么說來,Arm 和蘋果掌握的黑科技,已經(jīng)達(dá)成體積小如此之多、功耗少如此之多的情況下,性能達(dá)成與 x86 平臺幾乎齊頭并進(jìn)的水準(zhǔn)啦?我前倆月就聽有人在社區(qū)大談 RISC 相比 CISC 有多大優(yōu)勢,并以此得出 iPad 性能為何比如今 PC 強那么多的結(jié)論,言下之意是你們根本就不懂指令、現(xiàn)代半導(dǎo)體技術(shù)的神速發(fā)展。Intel 估計應(yīng)該被釘在歷史的恥辱柱上。

有關(guān) GeekBench 娛樂工具跑分相近的問題,其實我們必須承認(rèn)一個大前提:當(dāng)代處理器微架構(gòu)優(yōu)化,能用上的技術(shù)基本上都用上了,前十幾年的發(fā)展,什么流水線、分支預(yù)測、亂序執(zhí)行、多級緩存、超線程、時間空間并發(fā)之類亂七八糟的,及這些技術(shù)本身的反復(fù)優(yōu)化,外加制程工藝進(jìn)化,CPU 性能總能有“質(zhì)”的飛躍。但如今,CPU 單核性能提升已經(jīng)十分緩慢,不僅是制程工藝步進(jìn)緩慢甚而停滯,還在于能用的優(yōu)化技術(shù)都已經(jīng)用上了。當(dāng)然我們不能排除未來還有什么黑科技出現(xiàn),但至少就這兩年的情況來看,新貨已經(jīng)鮮見了,不似當(dāng)年某種新技術(shù)一出立刻造成轟動。

所以雖然 Zen 2 如此神奇,而且還被我們吹得神乎其神,但實際上其單核性能也就那么回事,拼死了也就比同代 Intel 10nm 的十代酷睿強一丟丟——當(dāng)然其 CCX 架構(gòu)讓 Zen 2 堆核更容易了,臺積電的 7nm 也的確給力。

扯遠(yuǎn)了,上面這兩段是為了表明,Arm 即便作為低功耗領(lǐng)域的主力架構(gòu),這些年的發(fā)展致其單核心性能可與 x86 比肩也并不稀罕。不過那么大的功耗差距,卻可達(dá)成相似 GeekBench 跑分又是怎么回事呢?這個問題,我在之前探討 Surface Pro 時就提到過:不考慮散熱系統(tǒng)的跑分成績都是在耍流氓,尤其是 GeekBench 這種短時跑分測試。

我們知道蘋果 Ax 系列 SoC 瞬時突發(fā)性能還是比較強的,包括 GPU,但一旦考察持續(xù)性能,則會有一個較大幅度的折扣,因為畢竟手機這么小的體積,而且就靠那點被動散熱面積,很難做到長時間的性能發(fā)揮。有關(guān)這個問題可參考我之前寫的兩篇文章[9][10]。我們常戲謔說 GeekBench 是 AppleBench,一方面原因在于其中的某些測試項,在 Ax 系列 CPU 中有專門硬件單元做計算,而 x86 很多時候只能依靠通用計算單元來解決,解題效率會略低(這部分內(nèi)容各位可以去自行研究,早年比較典型的是 AES 加密單元——A 系列處理器就有專用單元,所以這類項目的跑分成績可以很高,現(xiàn)在可能有差別);另一方面就在 GeekBench 整個測試周期很短,那么系統(tǒng)真正的綜合性能其實是難以體現(xiàn)的。

知乎上有高人給出了 Arm 是否真的比 x86 更省電的理論分析,有興趣的可以去看一看[11]。很多人對 x86 留下高功耗印象的原因,其實是平臺(以及使用場景)差異造成的,PC 的處理器 TDP 在設(shè)定上就很高,而這種相比移動設(shè)備高得多的參考功耗,很大程度上就源于前面我說到的 PC 要求在一個較長時間內(nèi)持續(xù)高性能,而不只是簡單的瞬時突發(fā)性能。另一方面還在于,Arm 指令集的處理器普遍采用大小核設(shè)計,小核心是專用于低功耗場景的(而且這種小核心現(xiàn)在看來似乎也越來越有必要)——而直到前一陣,Intel 才表示準(zhǔn)備要搞這種大小核設(shè)計。

當(dāng)然這也是因為 PC 的具體使用場景,以往并沒有多少需要像手機那樣超低功耗狀態(tài)的應(yīng)用,或者這種必要性并不大(雖然現(xiàn)在也逐漸開始有這種需求);而 Arm 平臺的移動設(shè)備多用電池做電源,本身也需要對功耗做限制。

所以 x86 能效比低于 Arm 的這種印象,大抵上是兩者使用場景的常年差別造成的。能效比怎么樣,要對比的應(yīng)該是同性能下的功耗情況。恰好 AMD 開始使用臺積電的 7nm 工藝,這也給這種對比有了一個基于類似制造工藝下,同性能(而不單純是同頻)下的功耗情況對比的依據(jù)。不過這種對比需要考慮的問題還有很多,比如 x86 平臺的很多 CPU 還有“睿頻”的概念,而 Arm 手機和移動平臺 CPU 則沒有;兩者的流水線長度不同等等;而且前面提到,兩者使用場景目前還是有差別,這也是芯片內(nèi)部專用單元有差異的關(guān)鍵。

蘋果 A12 的頻率功耗曲線,來源:AnandTech

從相對直觀的角度來說,隨性能的提升,功耗也在提升,但這兩者的關(guān)系并不呈線性;意即如今 Arm 低功耗與性能的關(guān)系看起來還挺美好,但如果進(jìn)一步提升性能,所需付出的功耗代價在達(dá)到一個拐點以后,就會出現(xiàn)指數(shù)級躥升的狀況——在高性能領(lǐng)域,Arm 現(xiàn)有的移動處理器也未必會有什么出色的表現(xiàn):這其中,蘋果并未掌握什么黑科技,Intel 也并不存在多大的過錯。(服務(wù)器領(lǐng)域和 PC 領(lǐng)域在應(yīng)用場景上又是不一樣的,這里不討論。)

上面這張圖來自 AnandTech[12],好像被人援引了無數(shù)次。這是蘋果 A12 的頻率功耗相關(guān)曲線。AnandTech 認(rèn)為蘋果做得還是比較出色的,而且在后續(xù)幾百 MHz 區(qū)間內(nèi)也相對保守。如果說蘋果期望再把頻率抬高,則按照 A12 的現(xiàn)狀來看,很快就可以在 3GHz 附近讓功耗徹底達(dá)到標(biāo)壓筆記本的水平。

這次的轉(zhuǎn)舵可能有所不同,看看微軟

上面這個大段落好像說了不少廢話,與本文的主旨關(guān)系并不算太大。不過我想表達(dá)的是,其實 x86 并不像人們想的那樣不堪,Arm 也不像人們想的那么美好。在不考慮散熱、功耗的情況下,這兩者的性能水平可能正在趨同——這也是 AnandTech 之前評價 A12 接近桌面處理器水平的原因。但就系統(tǒng)和具體應(yīng)用場景的角度,即便 A12 有這種能力,也不可能發(fā)揮到桌面處理器的水準(zhǔn),因為它被功耗與散熱限制了。

就性能來看,蘋果應(yīng)該是有能力造出 Intel 同等性能的 PC 處理器的,而且 Intel 如今在半導(dǎo)體制程工藝上有落伍的跡象(Intel 前不久才承認(rèn)到 2021 年之前,工藝技術(shù)都將落后于競爭對手[13])。但在 macOS 的軟件生態(tài)和兼容性層面,就又要多花一番心思了。這個過程可能仍然需要數(shù)年,而且這次的轉(zhuǎn)舵還不同于以往。只不過在過去蘋果積累的經(jīng)驗,這會兒似乎還是可以派上用場。

彭博社的報道提到,可能會有部分 Mac 產(chǎn)品將采用 Arm 處理器。就前期來看,合理的推測是,低性能、低功耗產(chǎn)品線的 MacBook(比如說早前 12 寸的 MacBook)可能會率先采用蘋果自己的 Arm 處理器。但如果真的是這樣,那么也就意味著,Mac 產(chǎn)品系列將有兩種架構(gòu)、兩種平臺并存,這對開發(fā)者來說應(yīng)該是個災(zāi)難。蘋果大概需要重啟過去兩次轉(zhuǎn)平臺時 fat binary 和 Universal Binary 方案——一人開發(fā),倆平臺共享。..

實際上在早年 fat binary 時期,把兩種編譯版本封裝到一起,造成的文件尺寸大,在當(dāng)時是比較敏感的——因為那會兒 PC 的硬盤容量真的很可憐,所以那一時期還涌現(xiàn)出了為了節(jié)省硬盤空間,可剝離不需要編譯版本的工具。現(xiàn)在這已經(jīng)不算什么大事兒了。

而就當(dāng)代來看,蘋果實際上有一個更好的參照對象,就是微軟。不過微軟在計劃上看,并不是“轉(zhuǎn)舵”,而是“擴展”,這里我們可以稍微提一提:即 Windows 不僅要在 x86 平臺上發(fā)展,而且要在 Arm 平臺上發(fā)展。這個計劃從 Windows RT 操作系統(tǒng)時期就出現(xiàn)了,那時微軟就搞了一個 Windows Runtime,這個運行時之上搭的應(yīng)用可以同時支持 x86 和 Arm。當(dāng)時的 Windows Phone 8.1 其實也用上了 Windows Runtime,所以那會兒微軟應(yīng)用商店的很多 app 都同時支持手機、PC、平板,雖然商店里的應(yīng)用數(shù)量也是少的可憐。

這算是實現(xiàn)微軟“偉大”生態(tài) Universal Windows Platform(UWP)的重要組成部分。UWP 本質(zhì)上就是為所有 Windows 設(shè)備,包括 PC、IoT、平板設(shè)備之類,或者說所有 Arm、x86 平臺的 Windows 設(shè)備,提供一個通用的 API。UWP 就是一種建立在 Windows Runtime 之上的應(yīng)用模型。[14][15]

Windows Runtime 提供的 API 以類庫的形式,為開發(fā)者提供 Windows 8 的功能。跑在 Windows Runtime 上的應(yīng)用實際上是跑在一個沙盒里,需要用戶批準(zhǔn)才能訪問一些關(guān)鍵系統(tǒng)特性及下層的硬件。這個東西當(dāng)時就可以打通 Windows RT、Windows 8,絕大部分應(yīng)用部署在微軟的應(yīng)用商店里。早期 Windows Runtime 之上跑的應(yīng)用被稱作 Metro app(好像是因為當(dāng)時微軟還熱衷于推 Metro UI,后來叫 modern-style app,應(yīng)該還會改)。

只不過這東西到現(xiàn)在為止都還不能算是成功,微軟的營銷話術(shù)也堪稱災(zāi)難,沒人知道 Windows RT、on Arm、10S、10X 之類究竟是什么鬼。一般人真的很難搞懂微軟這兩年究竟在做什么——可見當(dāng)年喬布斯在給 Mac 轉(zhuǎn)平臺,在告訴用戶和開發(fā)者現(xiàn)在正在發(fā)生什么的時候,是多么科學(xué)(所以比爾蓋茨說喬布斯是超級銷售員)。不過在實際的決策上,我覺得微軟的搖擺不定、瞻前顧后,才真正令 Windows RT 以及后來的 Windows 10S 都很失敗。

微軟接下來的一個“偉(zuo)大(si)”計劃是 Windows 10X。從外顯上來看,Windows 10X 是為雙屏設(shè)備準(zhǔn)備的一個操作系統(tǒng)(比如 Surface Neo 之類還沒發(fā)布的設(shè)備),預(yù)計今年下半年才會看到實物。不過我覺得 Windows 10X 的意義遠(yuǎn)不止此,Windows 10X 支持 Windows Runtime API(這個是肯定的),并且“通過一個原生 container 跑 Win32 應(yīng)用”[16]。我沒怎么研究過如今 Windows 系統(tǒng)架構(gòu)狀況,但就對舊有 Windows 生態(tài)來看,Windows 10X 如果是微軟接下來意欲統(tǒng)一 PC 市場的操作系統(tǒng),則這個決心下的還是比較大的;而且貌似雙屏 Windows 設(shè)備都是基于 Arm 平臺。

誰不想要 Surface Pro X 這么性感的筆記本呢?

聽起來 Windows 10X 在這一點上,和 Windows on Arm 很像(Surface Pro X 用的就是 Windows on Arm),所以我在想 Surface Pro X 將來是不是可以升級到 Windows 10X——反正微軟改名部門創(chuàng)下那么多的“豐功偉績”。

在針對開發(fā)者的兼容性問題上,Windows on Arm 平臺下的 x86 應(yīng)用是跑在模擬器上的,一個叫 WOW64 的 x86 模擬器。和前文提到蘋果的 Rosetta 有點像,模擬過程就是把 x86 指令塊編譯成 ARM64 指令,加一些優(yōu)化。會有服務(wù)對轉(zhuǎn)譯代碼塊做緩存,減少指令轉(zhuǎn)譯開銷。貌似到目前為止,x86-64 應(yīng)用(也就是傳統(tǒng)的 Windows 64 位應(yīng)用)還無法在 Arm 版 Windows 上面跑,而且某些大型應(yīng)用的模擬運行比較災(zāi)難級,比如 Photoshop。WOW64 也跑在用戶態(tài)[17]。

其實突然又有點搞不懂微軟將來計劃怎么發(fā)展,從如今微軟的動作來看,好像十分偏向 Arm(和高通),只不過大業(yè)未成,生態(tài)也暫未見起色,x86 也不想拋棄。不知 Intel 看此情此景是什么心情。畢竟 Windows 作為歷史用戶基數(shù)龐大的操作系統(tǒng),兼容性的歷史包袱遠(yuǎn)大于蘋果的 Mac OS:我沒法從技術(shù)細(xì)節(jié)上來探討誰做得更好,但微軟一定比蘋果更有難度;何況蘋果還有 iOS 這顆大棋子。

如果說蘋果要在同一時間針對 Mac 系列產(chǎn)品,既保有 x86 平臺(典型如 Mac Pro 這種更新沒多久的高性能工作站),又開發(fā) Arm 平臺(很可能就是 MacBook),那么對兩個平臺的同時支持,以及對開發(fā)者的友好度,不知能否做到比微軟如今的方案更好——因為這次似乎并不是徹底拋棄上一個平臺這么簡單(畢竟彭博社是說部分 Mac 產(chǎn)品采用 Arm 處理器),也就不能以斬斷過往、說拋棄就拋棄這種蘋果式的任性方法來做決策(但好似當(dāng)年 PowerPC 與 x86 在 Mac OS 系統(tǒng)上也共存了起碼 5 年)。

Mac 轉(zhuǎn)舵可能會遭遇的問題

一氣寫下來,感覺篇幅有點過長了,本來還想聊聊蘋果自己在 Mac 設(shè)備里面搞的 T2 芯片,以及可將 iPad app 輕松移植給 macOS 的 Catalyst 項目——畢竟這倆看起來都很像本次轉(zhuǎn)舵的重要緩沖或預(yù)備手段。但再寫的話,這文章字?jǐn)?shù)就要破萬了,實在是太廢紙了。在轉(zhuǎn)換平臺的問題上,即便有那么多的困難,自主掌握芯片迭代節(jié)奏,以及牢固生態(tài)發(fā)展,采用自研芯片還是有好處。

其實上面這些算是一個資料匯總,也算是我近期的學(xué)習(xí)過程吧,以簡短的形式匯報給各位。這里最后談一談 Mac 如果真的要從 x86 轉(zhuǎn)往 Arm(而不是兩者并行發(fā)展,畢竟蘋果很少做這么二的事情),除了兼容性和技術(shù)層面,如上述文字中提到的難度,在實際實施中還會有一些非常現(xiàn)實的問題。

第一就是,可能面臨拋棄 Windows 用戶的問題,Mac 如果徹底拋棄 x86,則未來的 Mac 設(shè)備很可能就不能再安裝 Windows 系統(tǒng)了:這個問題我覺得十分嚴(yán)重,或許很多 Mac 用戶對于在 Mac 設(shè)備上使用 Windows 是非常嗤之以鼻的,但這個選擇對很多人來說仍然十分重要。畢竟 Windows 的生產(chǎn)力生態(tài)仍然十分完備,某些很偏的應(yīng)用都只支持 Windows。(現(xiàn)在 Windows 也支持 Arm 了,只是兩者的平臺還是有差異)

第二是,如果低端 MacBook 產(chǎn)品線開始用 Arm 處理器,那么目前的 iPad Pro 產(chǎn)品定位會顯得很尷尬。因為后者就是定位于輕度生產(chǎn)力工具,如果要說生產(chǎn)力,iOS 和 macOS 似乎并非同臺競爭的對象。

第三,有個比較實際的問題:Intel 畢竟是個造芯片的公司,可以搞出一大堆不同定位的 SKU,比如什么酷睿 i3、i5、i7;超低壓、低壓、標(biāo)壓、桌面等等,并且應(yīng)用到不同售價的 Mac 設(shè)備上。蘋果即便有能力造芯片,是否能在短時間內(nèi),按照體質(zhì)劃分不同 SKU,并且應(yīng)用到將來更多的 Mac 設(shè)備上?如果不能的話,難道真的要 x86 和 Arm 并行發(fā)展嗎?

值得注意的是,這次的轉(zhuǎn)舵并不像上次 PowerPC -》 x86 那樣,是轉(zhuǎn)向一個在桌面市場十分受歡迎和健全的平臺;而且如今蘋果公司的體量遠(yuǎn)非 2005 年可比,所以這次轉(zhuǎn)舵的困難程度大約不小。另外,前面花了那么多篇幅談兼容性問題,針對某些十分細(xì)節(jié)的點,比如小到 Final Cut Pro X 中的一個插件,即便容易想見 Final Cut Pro X 會第一批支持 Arm 版 macOS,但插件未更新就可以徹底埋葬一部分用戶。

具體是什么狀況,等到今年的 WWDC 或可一見分曉。最后的最后,Intel 哭泣的時間應(yīng)該會更長:為什么全世界都針對我?

參考來源:

[1] Apple Aims to Sell Macs With Its Own Chips Starting in 2021 - Bloomberg

https://www.bloomberg.com/news/articles/2020-04-23/apple-aims-to-sell-macs-with-its-own-chips-starting-in-2021

[2] 小議Mac OS Classic的底層架構(gòu)與Mac的固件沿革 - 老Mac與MacOS收藏

https://zhuanlan.zhihu.com/p/44934452

[3] Mac OS nanokernel - Wikipedia

https://en.wikipedia.org/wiki/Mac_OS_nanokernel

[4] Mac 68k emulator - Wikipedia

https://en.wikipedia.org/wiki/Mac_68k_emulator

[5] Fat binary - Wikipedia

https://en.wikipedia.org/wiki/Fat_binary

[6] List of macOS components - Wikipedia

https://en.wikipedia.org/wiki/List_of_macOS_components#Classic

[7] Rosetta (software) - Wikipedia

https://en.wikipedia.org/wiki/Rosetta_(software)

[8] CodeWarrior - Wikipedia

https://en.wikipedia.org/wiki/CodeWarrior

[9] 聊聊無風(fēng)扇的Surface Pro:性能比一般筆記本差多少? - 面包板

https://mbb.eet-china.com/blog/3893689-413612.html

[10] 一場硬仗:華為和高通的GPU差距還有多大? - EE Times China

https://www.eet-china.com/news/202001061219.html

[11] 為啥 Arm 架構(gòu)比 x86 x64 省電? - 木頭龍的回答

https://www.zhihu.com/question/387240856/answer/1186307900

[12] The Apple iPhone 11, 11 Pro & 11 Pro Max Review: Performance, Battery, & Camera Elevated - AnandTech

https://www.anandtech.com/show/14892/the-apple-iphone-11-pro-and-max-review/4

[13] Intel Says Process Tech to Lag Competitors Until Late 2021, Will Regain Lead with 5nm - Intel

https://www.tomshardware.com/news/intel-process-tech-lag-competitors-late-2021-leadership-5nm

[14] Windows Runtime - Wikipedia

https://en.wikipedia.org/wiki/Windows_Runtime

[15] How the Universal Windows Platform relates to Windows Runtime APIs - Microsoft

https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide#how-the-universal-windows-platform-relates-to-windows-runtime-apis

[16] Windows 10X Developer FAQ - Microsoft

https://docs.microsoft.com/en-us/windows/apps/10x/faq

[17] WOW64 Implementation Details - Microsoft

https://docs.microsoft.com/zh-cn/windows/win32/winprog64/wow64-implementation-details

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19160

    瀏覽量

    229121
  • 蘋果
    +關(guān)注

    關(guān)注

    61

    文章

    24351

    瀏覽量

    196836
  • Mac
    Mac
    +關(guān)注

    關(guān)注

    0

    文章

    1099

    瀏覽量

    51368
收藏 人收藏

    評論

    相關(guān)推薦

    這次來真的了?蘋果Wi-Fi7芯片采用臺積電N7工藝,或明年iPhone上首發(fā)

    落地。 ? 10月最后一天,天風(fēng)國際分析師郭明爆料稱,蘋果計劃在2025年下半年推出的新品上搭載的Wi-Fi7芯片,該芯片采用臺積電N7工藝制造,支持目前最新的Wi-Fi7規(guī)格。他
    的頭像 發(fā)表于 11-02 00:02 ?4942次閱讀
    這次來真的了?<b class='flag-5'>蘋果</b><b class='flag-5'>自</b><b class='flag-5'>研</b>Wi-Fi7芯片<b class='flag-5'>采用</b>臺積電N7工藝,或明年iPhone上首發(fā)

    蘋果5G芯片或于明年亮相

    蘋果公司正加速推進(jìn)其5G芯片的研發(fā)進(jìn)程,有望最快在明年推出首款5G調(diào)制解調(diào)。這一舉措對
    的頭像 發(fā)表于 11-12 15:24 ?237次閱讀

    蘋果2025年iPhone將采用Wi-Fi 7芯片,減少博通依賴

    11月2日,天風(fēng)國際分析師郭明錤透露,蘋果計劃在2025年下半年推出的新產(chǎn)品,如iPhone 17等,將搭載的Wi-Fi 7芯片。這款芯片將基于臺積電的N7工藝制造,旨在降低對芯片制造商博通Wi-Fi芯片的依賴,并推動
    的頭像 發(fā)表于 11-04 15:25 ?416次閱讀

    蘋果加速芯片進(jìn)程,iPhone SE 4將首發(fā)自5G基帶

    階段,標(biāo)志著蘋果在擺脫外部5G基帶供應(yīng)方面邁出了重要一步。盡管蘋果與高通之間的5G基帶供應(yīng)協(xié)議一直延續(xù)至2027年,但海通國際證券分析師Jeff Pu的研究報告指出,iPhone SE 4將首次采用
    的頭像 發(fā)表于 11-04 14:20 ?402次閱讀

    蘋果2025下半年將采用Wi-Fi 7芯片

    據(jù)天風(fēng)國際分析師郭明錤透露,蘋果計劃在2025年下半年推出的新品中,將首次采用的Wi-Fi 7芯片。這款芯片將基于臺積電N7工藝制造,預(yù)計將為
    的頭像 發(fā)表于 11-01 16:58 ?406次閱讀

    蘋果iPhone 17將首發(fā)搭載Wi-Fi 7芯片

    了博通公司提供的Wi-Fi芯片,博通每年向蘋果供應(yīng)超過3億枚Wi-Fi+藍(lán)牙芯片。然而,蘋果正逐步減少對博通的依賴。據(jù)悉,從明年起,蘋果將開始使用
    的頭像 發(fā)表于 11-01 16:19 ?613次閱讀

    蘋果Wi-Fi芯片或明年商用,用于部分iPad

    9月20日最新資訊顯示,蘋果公司在芯片領(lǐng)域的成就斐然,其標(biāo)志性的A系列芯片在iPhone和iPad上持續(xù)多年引領(lǐng)性能巔峰,而2020年起推出的M系列芯片更是成功助力
    的頭像 發(fā)表于 09-20 16:23 ?1109次閱讀

    本土再上新!安謀科技發(fā)布首款“玲瓏”DPU和新一代VPU

    2024年9月19日,安謀科技(中國)有限公司(以下簡稱“安謀科技”)正式推出本土的首款“玲瓏”D8/D6/D2顯示處理器,以及新一代的“玲瓏”V510/V710視頻處理器。聚焦國
    的頭像 發(fā)表于 09-19 17:58 ?936次閱讀
    本土<b class='flag-5'>自</b><b class='flag-5'>研</b>再上新!安謀科技發(fā)布首款“玲瓏”DPU和新一代VPU

    華無風(fēng)扇BOX PC搭載兆芯KX-6000G處理器

    近日,工控領(lǐng)導(dǎo)企業(yè)華基于兆芯開先KX-6000G高效能處理器打造的新一代多擴展無風(fēng)扇BOX PC——ITA-166順利上市。此前,華基于兆芯處理器已經(jīng)成功開發(fā)出多款工業(yè)電腦,并取得
    的頭像 發(fā)表于 08-28 11:19 ?485次閱讀

    擺脫高通:iPhone 17有望搭載蘋果基帶

    年推出的iPhone 17系列中,首次采用自家研發(fā)的5G基帶芯片。 這有望大幅減少蘋果對高通的依賴,導(dǎo)致高通從蘋果獲得的營收在2025年同比減少35%,2026年將進(jìn)一步減少35%。 分析師Chris Caso指出,盡管初期只有
    的頭像 發(fā)表于 08-19 09:22 ?316次閱讀

    華工控機購買指南:Intel vs AMD工控機處理器(CPU)怎么選?

    華(Advantech)作為全球領(lǐng)先的工業(yè)計算機(IPC)制造商,提供了廣泛的工控機產(chǎn)品系列。這些產(chǎn)品搭載了多種不同類型的處理器,以滿足從基礎(chǔ)到高級的各種工業(yè)應(yīng)用需求。本文蘇州訊電子科技有限公司
    的頭像 發(fā)表于 06-26 11:46 ?882次閱讀
    <b class='flag-5'>研</b>華工控機購買指南:Intel vs AMD工控機<b class='flag-5'>處理器</b>(CPU)怎么選?

    國產(chǎn)兆芯主板GM9-6002采用KX-U6780A處理器#兆芯處理器

    處理器主板
    國產(chǎn)計算機小秦
    發(fā)布于 :2024年04月13日 13:58:31

    蘋果Micro LED會影響到三星、LG Display的顯示業(yè)務(wù)

    據(jù)媒體報道,蘋果內(nèi)部正在開發(fā)Micro-LED技術(shù),分析師稱“蘋果Micro LED會影響到三星、LG Display的顯示業(yè)務(wù)”。
    的頭像 發(fā)表于 02-20 16:34 ?897次閱讀

    蘋果Wi-Fi芯片之路充滿挑戰(zhàn)

    據(jù)悉,蘋果5G調(diào)制解調(diào)芯片上投入了大量資金,如今希望在Wi-Fi芯片上取得突破。然而
    的頭像 發(fā)表于 12-26 14:46 ?710次閱讀

    蘋果芯片實驗室都做了什么事?

    蘋果還沒有制造其設(shè)備需要的所有芯片。例如,基帶芯片是該公司尚未靠自己攻克的一個重大難關(guān)。拉斯貢說:“蘋果處理器已經(jīng)非常好,但他們在基帶
    的頭像 發(fā)表于 12-08 10:12 ?883次閱讀