此前,蘋果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”,而非英特爾。eW4esmc
事實上,兩家的合作始于2005年,當(dāng)時蘋果創(chuàng)始人喬布斯在WWDC宣布放棄PowerPC處理器計劃,轉(zhuǎn)身就牽手英特爾。這一決定象征著蘋果與英特爾在Mac電腦業(yè)務(wù)合作關(guān)系即將走向“終結(jié)”。eW4esmc
那么,蘋果Mac采用自研處理器,可能遇到什么問題呢?來自面包板社區(qū)的明星博主——歐陽洋蔥在今年5月,在WWDC 2020之前就這一角度發(fā)表了自己的看法。eW4esmc
實際上,有關(guān) Mac 系列計算機(jī)要開始采用 Arm 處理器的傳言似乎是從2010年就開始的,那會兒蘋果也才剛剛開始做 iPhone 的 SoC。這一傳言就10年過去了,起碼今年前不久才更新的MacBook Air都還在用 Intel 的處理器。eW4esmc
想起來以蘋果的“慣例”,對自家生態(tài)的管控,恨不得從硬件到軟件由內(nèi)到外全部一手包辦。這樣一家公司,在如今有能力自己設(shè)計處理器,為何還要受制于Intel?況且Mac設(shè)備本身的開發(fā)周期,還面臨與 Intel 處理器迭代撞期的尷尬,導(dǎo)致Mac經(jīng)常無法用上 Intel 最新的處理器。如果用自家的 A 系列 SoC,豈不是很美的一件事情嗎?eW4esmc
這次的傳言看起來格外靠譜,彭博社報道稱,2021 年采用 Arm 處理器的 Mac 電腦就要問世了。彭博社線人消息稱,Mac 要搭載的處理器將比 iPhone 和 iPad 之上的都更快(好像是廢話)。“蘋果準(zhǔn)備在明年,至少推出一款采用自家芯片的 Mac.”“臺積電將會負(fù)責(zé)制造新款的 Mac 芯片,基于 5nm 制造技術(shù)。”eW4esmc
“首批 Mac 處理器將有 8 個核心,核心代號 Firestorm,其中有 4 個是節(jié)能核心——內(nèi)部代號 Icestorm。蘋果針對未來的 Mac 處理器,還計劃探索超過 12 個核心的設(shè)計。”值得一提的是,傳言中的 Mac 處理器也是以 SoC 的形態(tài)出現(xiàn),其上至少包含了 CPU、GPU。[1]eW4esmc
eW4esmc
當(dāng)年的 iBook,采用 PowerPC G3 處理器eW4esmc
這件事情的可行性當(dāng)然是有的,只是在具體實施上會遇到不少問題。如果說 macOS 轉(zhuǎn)往 Arm 平臺真的那么容易,蘋果估計早就干這事兒了。而且事實上,微軟這兩年正在做這件事情,但在具體的方向上有些小差異。在這篇文章里,我們做一些簡單的分享,雖然無法得出結(jié)論,也可與各位做探討。eW4esmc
多插一句,一般來說,我首發(fā)在面包板的文章籌備周期比較短,而且相對來說內(nèi)容更加個人化、娛樂化。與電子工程專輯或者其他平臺發(fā)布的文章相較,會顯得沒有那么正式和考究。另外,這篇文章主要參照的是維基百科,我不想去翻以前蘋果的開發(fā)者文檔了——基于維基百科的不可靠性,以下內(nèi)容可能有部分是存在事實錯誤的;另外,我也不搞軟件和系統(tǒng)工程,所以貽笑大方之處還請海涵。eW4esmc
蘋果的 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 奔騰快多少倍之類。eW4esmc
在此之前,蘋果就有過兩次在指令集平臺上轉(zhuǎn)舵的經(jīng)歷,看起來已經(jīng)是個老手了。至于為什么要換用其他平臺,這可能和軟硬件更具體的技術(shù)問題相關(guān),不過從社會上廣為流傳的資訊來看,都是因為老平臺的效率越來越不濟(jì)(就好像如今主流觀點認(rèn)為 x86 處理器的效率不如 Arm,雖然我不這么看;很多人認(rèn)定,Mac 轉(zhuǎn)向 Arm 也算是合情合理)。eW4esmc
從這兩次轉(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)過渡。而“過渡”的平滑與否,真的就要看廠商的水平。eW4esmc
eW4esmc
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í)行程序中。eW4esmc
另一方面,當(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)境。eW4esmc
Mac OS nanokernal 在電腦啟動時加載,內(nèi)存里開辟一個 PowerPC 內(nèi)核空間加載模擬器。隨后模擬器繼續(xù)加載 Toolbox 對系統(tǒng)硬件初始化,隨后的操作和 68k 時代基本上一樣。這時期 PowerPC 設(shè)備的內(nèi)核,實際上就是運行在 68k 模擬器里的 Toolbox。eW4esmc
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)的模擬器去處理的。eW4esmc
eW4esmc
iMac G4,采用 PowerPC G4 處理器eW4esmc
無論如何,這都是個看起來十分簡單,而且還非常低效的方案(原生的 PowerPC 性能似乎很難發(fā)揮);不過好像也很有效,Mac OS nanokernal 的 68k 模擬器也就為舊軟件提供了這種低層級的兼容性。當(dāng)時的模擬器提供的運行環(huán)境,和 Macintosh Centris 610(處理器具體型號為摩托羅拉 68LC040)最為接近。eW4esmc
早期版本的 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é)束的。eW4esmc
最初的 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]eW4esmc
第二版 Mac OS nanokernal 也算是越來越像樣了,開始支持多任務(wù)多處理器、消息傳遞,可以算是微內(nèi)核了;內(nèi)核存在于受保護(hù)的內(nèi)存空間中,并在用戶態(tài)下執(zhí)行設(shè)備驅(qū)動。這是題外話了。eW4esmc
Mac OS Classic 時代的操作系統(tǒng)和個人電腦還是相當(dāng)?shù)拇址藕筒恢v究,而且層級結(jié)構(gòu)也比今天要簡單得多。而另一方面,其實也不難發(fā)現(xiàn),即便是當(dāng)年蘋果電腦用戶基數(shù)不多的時代,生態(tài)搬遷都需要付出這般代價;每一次平臺搬遷,實際上都需要付出代價,由上至下。eW4esmc
還有一點值得一提,后來 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]eW4esmc
2005 年,喬布斯表示蘋果對于 IBM 的 PowerPC 開發(fā)進(jìn)度非常失望(這集我看過!去年的 Intel 基帶事件似乎也是這么演的),而 Intel 顯然可以滿足蘋果的需求。當(dāng)年喬布斯大談每瓦性能,實際上也就是能效比,這似乎也是如今在輿論上,x86 處理器陷入不利的原因。喬布斯在 WWDC 大會上宣稱,Mac OS X 的每個版本都“秘密地”針對 Intel 處理器做了開發(fā)和編譯。所以現(xiàn)在的 macOS 有沒有“秘密地”針對 Arm 做開發(fā)和編譯?eW4esmc
eW4esmc
當(dāng)年 Intel 為蘋果站臺的名場面eW4esmc
這次的兼容性解決方案,是一種名為 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,則完全不支持。eW4esmc
Rosetta 所處的層級比 68k 模擬器要高,是個“用戶級”的程序,只能監(jiān)聽和模擬用戶級代碼。這可能和蘋果擔(dān)心安全問題有關(guān),而且畢竟 Rosetta 推出的時間,操作系統(tǒng)也比 68k 模擬器年代要成熟很多了。所以 Rosetta 不支持的環(huán)境和狀況有很多,也包括了不支持轉(zhuǎn)譯 PowerPC G5 指令。eW4esmc
蘋果后來發(fā)布的 Xcode,有針對 Intel 與 PowerPC 的 Universal Binary,就跟前文提到的 fat binary 類似——這樣一來,當(dāng)時面對平臺遷徙的開發(fā)者,在面對 Mac 應(yīng)用開發(fā)時,針對基數(shù)也算多的 PowerPC 用戶,不會不知該選 PowerPC 還是 x86,因為兩個都可以要(微軟 WinRT 借鑒對象?)。eW4esmc
不過 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]eW4esmc
eW4esmc
就最終的成果來看,Mac 的這第二次轉(zhuǎn)舵還是很成功的。實際上即便到 2009 年,Mac OS X 10.6 雪豹時期,蘋果已經(jīng)完全不再支持 PowerPC,依然有不少開發(fā)者通過 Universal Binary 對這一平臺做出后續(xù)數(shù)年的支持——這還是能夠從側(cè)標(biāo)反映蘋果在兼容性方案上的不錯表現(xiàn)。eW4esmc
但我覺得,這次的成功主要并不來源于蘋果在兼容性工作上的成功,而在于 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 的安裝做出了原生支持。eW4esmc
也是從這個時候開始,大批量的人在星巴克用 MacBook 裝逼(以及運行的卻是 Windows 系統(tǒng))才變得可行?;蛘哒f至少買一臺 Mac,就不用放棄 Windows——而且同一時間還有大量效率較高的虛擬程序可以跑 Windows 及對應(yīng)的應(yīng)用。我覺得無論如何,這都是 x86 平臺的 Mac 得以大獲成功的原因。eW4esmc
而且也是自此之后,許多軟件大牌企業(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)一步脫耦。eW4esmc
所以,我覺得 Mac 在轉(zhuǎn)向 x86 平臺時的成功,更多的是時勢造就,甚至別家生態(tài)使然;亦是蘋果在電子科技發(fā)展史上的一次識時務(wù)之舉;且以當(dāng)年 Mac 的體量,更不存在尾大不掉的問題。eW4esmc
我們近兩年聽到最多有關(guān) Mac 要從 x86 轉(zhuǎn)向 Arm 的原因,好像并不是蘋果要加大生態(tài)掌控力(這是我覺得蘋果可能決策轉(zhuǎn)向的最主要原因),而是 x86 處理器的效率比 Arm 差很多——這方面的報道也還不少。就相對直觀的消費用戶體驗來看,這一點似乎還是有足夠的論據(jù)的。這些年智能手機(jī)、平板產(chǎn)品的性能提升速度如此之快,感覺跟 PC 是不是已經(jīng)差不多了?eW4esmc
蘋果前些年發(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 還要高。eW4esmc
這么說來,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)該被釘在歷史的恥辱柱上。eW4esmc
eW4esmc
有關(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ù)一出立刻造成轟動。eW4esmc
所以雖然 Zen 2 如此神奇,而且還被我們吹得神乎其神,但實際上其單核性能也就那么回事,拼死了也就比同代 Intel 10nm 的十代酷睿強一丟丟——當(dāng)然其 CCX 架構(gòu)讓 Zen 2 堆核更容易了,臺積電的 7nm 也的確給力。eW4esmc
扯遠(yuǎn)了,上面這兩段是為了表明,Arm 即便作為低功耗領(lǐng)域的主力架構(gòu),這些年的發(fā)展致其單核心性能可與 x86 比肩也并不稀罕。不過那么大的功耗差距,卻可達(dá)成相似 GeekBench 跑分又是怎么回事呢?這個問題,我在之前探討 Surface Pro 時就提到過:不考慮散熱系統(tǒng)的跑分成績都是在耍流氓,尤其是 GeekBench 這種短時跑分測試。eW4esmc
我們知道蘋果 Ax 系列 SoC 瞬時突發(fā)性能還是比較強的,包括 GPU,但一旦考察持續(xù)性能,則會有一個較大幅度的折扣,因為畢竟手機(jī)這么小的體積,而且就靠那點被動散熱面積,很難做到長時間的性能發(fā)揮。有關(guān)這個問題可參考我之前寫的兩篇文章[9][10]。我們常戲謔說 GeekBench 是 AppleBench,一方面原因在于其中的某些測試項,在 Ax 系列 CPU 中有專門硬件單元做計算,而 x86 很多時候只能依靠通用計算單元來解決,解題效率會略低(這部分內(nèi)容各位可以去自行研究,早年比較典型的是 AES 加密單元——A 系列處理器就有專用單元,所以這類項目的跑分成績可以很高,現(xiàn)在可能有差別);另一方面就在 GeekBench 整個測試周期很短,那么系統(tǒng)真正的綜合性能其實是難以體現(xiàn)的。eW4esmc
eW4esmc
知乎上有高人給出了 Arm 是否真的比 x86 更省電的理論分析,有興趣的可以去看一看[11]。很多人對 x86 留下高功耗印象的原因,其實是平臺(以及使用場景)差異造成的,PC 的處理器 TDP 在設(shè)定上就很高,而這種相比移動設(shè)備高得多的參考功耗,很大程度上就源于前面我說到的 PC 要求在一個較長時間內(nèi)持續(xù)高性能,而不只是簡單的瞬時突發(fā)性能。另一方面還在于,Arm 指令集的處理器普遍采用大小核設(shè)計,小核心是專用于低功耗場景的(而且這種小核心現(xiàn)在看來似乎也越來越有必要)——而直到前一陣,Intel 才表示準(zhǔn)備要搞這種大小核設(shè)計。eW4esmc
當(dāng)然這也是因為 PC 的具體使用場景,以往并沒有多少需要像手機(jī)那樣超低功耗狀態(tài)的應(yīng)用,或者這種必要性并不大(雖然現(xiàn)在也逐漸開始有這種需求);而 Arm 平臺的移動設(shè)備多用電池做電源,本身也需要對功耗做限制。eW4esmc
所以 x86 能效比低于 Arm 的這種印象,大抵上是兩者使用場景的常年差別造成的。能效比怎么樣,要對比的應(yīng)該是同性能下的功耗情況。恰好 AMD 開始使用臺積電的 7nm 工藝,這也給這種對比有了一個基于類似制造工藝下,同性能(而不單純是同頻)下的功耗情況對比的依據(jù)。不過這種對比需要考慮的問題還有很多,比如 x86 平臺的很多 CPU 還有“睿頻”的概念,而 Arm 手機(jī)和移動平臺 CPU 則沒有;兩者的流水線長度不同等等;而且前面提到,兩者使用場景目前還是有差別,這也是芯片內(nèi)部專用單元有差異的關(guān)鍵。eW4esmc
eW4esmc
eW4esmc
蘋果 A12 的頻率功耗曲線,來源:AnandTecheW4esmc
從相對直觀的角度來說,隨性能的提升,功耗也在提升,但這兩者的關(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)用場景上又是不一樣的,這里不討論。)eW4esmc
上面這張圖來自 AnandTech[12],好像被人援引了無數(shù)次。這是蘋果 A12 的頻率功耗相關(guān)曲線。AnandTech 認(rèn)為蘋果做得還是比較出色的,而且在后續(xù)幾百 MHz 區(qū)間內(nèi)也相對保守。如果說蘋果期望再把頻率抬高,則按照 A12 的現(xiàn)狀來看,很快就可以在 3GHz 附近讓功耗徹底達(dá)到標(biāo)壓筆記本的水平。eW4esmc
上面這個大段落好像說了不少廢話,與本文的主旨關(guān)系并不算太大。不過我想表達(dá)的是,其實 x86 并不像人們想的那樣不堪,Arm 也不像人們想的那么美好。在不考慮散熱、功耗的情況下,這兩者的性能水平可能正在趨同——這也是 AnandTech 之前評價 A12 接近桌面處理器水平的原因。但就系統(tǒng)和具體應(yīng)用場景的角度,即便 A12 有這種能力,也不可能發(fā)揮到桌面處理器的水準(zhǔn),因為它被功耗與散熱限制了。eW4esmc
就性能來看,蘋果應(yīng)該是有能力造出 Intel 同等性能的 PC 處理器的,而且 Intel 如今在半導(dǎo)體制程工藝上有落伍的跡象(Intel 前不久才承認(rèn)到 2021 年之前,工藝技術(shù)都將落后于競爭對手[13])。但在 macOS 的軟件生態(tài)和兼容性層面,就又要多花一番心思了。這個過程可能仍然需要數(shù)年,而且這次的轉(zhuǎn)舵還不同于以往。只不過在過去蘋果積累的經(jīng)驗,這會兒似乎還是可以派上用場。eW4esmc
彭博社的報道提到,可能會有部分 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ā),倆平臺共享...eW4esmc
實際上在早年 fat binary 時期,把兩種編譯版本封裝到一起,造成的文件尺寸大,在當(dāng)時是比較敏感的——因為那會兒 PC 的硬盤容量真的很可憐,所以那一時期還涌現(xiàn)出了為了節(jié)省硬盤空間,可剝離不需要編譯版本的工具?,F(xiàn)在這已經(jīng)不算什么大事兒了。eW4esmc
而就當(dāng)代來看,蘋果實際上有一個更好的參照對象,就是微軟。不過微軟在計劃上看,并不是“轉(zhuǎn)舵”,而是“擴(kuò)展”,這里我們可以稍微提一提:即 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 都同時支持手機(jī)、PC、平板,雖然商店里的應(yīng)用數(shù)量也是少的可憐。eW4esmc
這算是實現(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]eW4esmc
eW4esmc
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)該還會改)。eW4esmc
只不過這東西到現(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 都很失敗。eW4esmc
微軟接下來的一個“偉(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 平臺。eW4esmc
eW4esmc
誰不想要 Surface Pro X 這么性感的筆記本呢?eW4esmc
聽起來 Windows 10X 在這一點上,和 Windows on Arm 很像(Surface Pro X 用的就是 Windows on Arm),所以我在想 Surface Pro X 將來是不是可以升級到 Windows 10X——反正微軟改名部門創(chuàng)下那么多的“豐功偉績”。eW4esmc
在針對開發(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]。eW4esmc
其實突然又有點搞不懂微軟將來計劃怎么發(fā)展,從如今微軟的動作來看,好像十分偏向 Arm(和高通),只不過大業(yè)未成,生態(tài)也暫未見起色,x86 也不想拋棄。不知 Intel 看此情此景是什么心情。畢竟 Windows 作為歷史用戶基數(shù)龐大的操作系統(tǒng),兼容性的歷史包袱遠(yuǎn)大于蘋果的 Mac OS:我沒法從技術(shù)細(xì)節(jié)上來探討誰做得更好,但微軟一定比蘋果更有難度;何況蘋果還有 iOS 這顆大棋子。eW4esmc
如果說蘋果要在同一時間針對 Mac 系列產(chǎn)品,既保有 x86 平臺(典型如 Mac Pro 這種更新沒多久的高性能工作站),又開發(fā) Arm 平臺(很可能就是 MacBook),那么對兩個平臺的同時支持,以及對開發(fā)者的友好度,不知能否做到比微軟如今的方案更好——因為這次似乎并不是徹底拋棄上一個平臺這么簡單(畢竟彭博社是說部分 Mac 產(chǎn)品采用 Arm 處理器),也就不能以斬斷過往、說拋棄就拋棄這種蘋果式的任性方法來做決策(但好似當(dāng)年 PowerPC 與 x86 在 Mac OS 系統(tǒng)上也共存了起碼 5 年)。eW4esmc
一氣寫下來,感覺篇幅有點過長了,本來還想聊聊蘋果自己在 Mac 設(shè)備里面搞的 T2 芯片,以及可將 iPad app 輕松移植給 macOS 的 Catalyst 項目——畢竟這倆看起來都很像本次轉(zhuǎn)舵的重要緩沖或預(yù)備手段。但再寫的話,這文章字?jǐn)?shù)就要破萬了,實在是太廢紙了。在轉(zhuǎn)換平臺的問題上,即便有那么多的困難,自主掌握芯片迭代節(jié)奏,以及牢固生態(tài)發(fā)展,采用自研芯片還是有好處。eW4esmc
其實上面這些算是一個資料匯總,也算是我近期的學(xué)習(xí)過程吧,以簡短的形式匯報給各位。這里最后談一談 Mac 如果真的要從 x86 轉(zhuǎn)往 Arm(而不是兩者并行發(fā)展,畢竟蘋果很少做這么二的事情),除了兼容性和技術(shù)層面,如上述文字中提到的難度,在實際實施中還會有一些非常現(xiàn)實的問題。eW4esmc
第一就是,可能面臨拋棄 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 了,只是兩者的平臺還是有差異)eW4esmc
第二是,如果低端 MacBook 產(chǎn)品線開始用 Arm 處理器,那么目前的 iPad Pro 產(chǎn)品定位會顯得很尷尬。因為后者就是定位于輕度生產(chǎn)力工具,如果要說生產(chǎn)力,iOS 和 macOS 似乎并非同臺競爭的對象。eW4esmc
第三,有個比較實際的問題:Intel 畢竟是個造芯片的公司,可以搞出一大堆不同定位的 SKU,比如什么酷睿 i3、i5、i7;超低壓、低壓、標(biāo)壓、桌面等等,并且應(yīng)用到不同售價的 Mac 設(shè)備上。蘋果即便有能力造芯片,是否能在短時間內(nèi),按照體質(zhì)劃分不同 SKU,并且應(yīng)用到將來更多的 Mac 設(shè)備上?如果不能的話,難道真的要 x86 和 Arm 并行發(fā)展嗎?eW4esmc
值得注意的是,這次的轉(zhuǎn)舵并不像上次 PowerPC -> x86 那樣,是轉(zhuǎn)向一個在桌面市場十分受歡迎和健全的平臺;而且如今蘋果公司的體量遠(yuǎn)非 2005 年可比,所以這次轉(zhuǎn)舵的困難程度大約不小。另外,前面花了那么多篇幅談兼容性問題,針對某些十分細(xì)節(jié)的點,比如小到 Final Cut Pro X 中的一個插件,即便容易想見 Final Cut Pro X 會第一批支持 Arm 版 macOS,但插件未更新就可以徹底埋葬一部分用戶。eW4esmc
具體是什么狀況,等到今年的 WWDC 或可一見分曉。最后的最后,Intel 哭泣的時間應(yīng)該會更長:為什么全世界都針對我?eW4esmc
eW4esmc
[1] Apple Aims to Sell Macs With Its Own Chips Starting in 2021 - BloombergeW4esmc
https://www.bloomberg.com/news/articles/2020-04-23/apple-aims-to-sell-macs-with-its-own-chips-starting-in-2021eW4esmc
[2] 小議Mac OS Classic的底層架構(gòu)與Mac的固件沿革 - 老Mac與MacOS收藏eW4esmc
https://zhuanlan.zhihu.com/p/44934452eW4esmc
[3] Mac OS nanokernel - WikipediaeW4esmc
https://en.wikipedia.org/wiki/Mac_OS_nanokerneleW4esmc
[4] Mac 68k emulator - WikipediaeW4esmc
https://en.wikipedia.org/wiki/Mac_68k_emulatoreW4esmc
[5] Fat binary - WikipediaeW4esmc
https://en.wikipedia.org/wiki/Fat_binaryeW4esmc
[6] List of macOS components - WikipediaeW4esmc
https://en.wikipedia.org/wiki/List_of_macOS_components#ClassiceW4esmc
[7] Rosetta (software) - WikipediaeW4esmc
https://en.wikipedia.org/wiki/Rosetta_(software)eW4esmc
[8] CodeWarrior - WikipediaeW4esmc
https://en.wikipedia.org/wiki/CodeWarrioreW4esmc
[9] 聊聊無風(fēng)扇的Surface Pro:性能比一般筆記本差多少? - 面包板eW4esmc
https://mbb.eet-china.com/blog/3893689-413612.htmleW4esmc
[10] 一場硬仗:華為和高通的GPU差距還有多大? - EE Times ChinaeW4esmc
https://www.eet-china.com/news/202001061219.htmleW4esmc
[11] 為啥 Arm 架構(gòu)比 x86 x64 省電? - 木頭龍的回答eW4esmc
https://www.zhihu.com/question/387240856/answer/1186307900eW4esmc
[12] The Apple iPhone 11, 11 Pro & 11 Pro Max Review: Performance, Battery, & Camera Elevated - AnandTecheW4esmc
https://www.anandtech.com/show/14892/the-apple-iphone-11-pro-and-max-review/4eW4esmc
[13] Intel Says Process Tech to Lag Competitors Until Late 2021, Will Regain Lead with 5nm - InteleW4esmc
https://www.tomshardware.com/news/intel-process-tech-lag-competitors-late-2021-leadership-5nmeW4esmc
[14] Windows Runtime - WikipediaeW4esmc
https://en.wikipedia.org/wiki/Windows_RuntimeeW4esmc
[15] How the Universal Windows Platform relates to Windows Runtime APIs - MicrosofteW4esmc
https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide#how-the-universal-windows-platform-relates-to-windows-runtime-apiseW4esmc
[16] Windows 10X Developer FAQ - MicrosofteW4esmc
https://docs.microsoft.com/en-us/windows/apps/10x/faqeW4esmc
[17] WOW64 Implementation Details - MicrosofteW4esmc
https://docs.microsoft.com/zh-cn/windows/win32/winprog64/wow64-implementation-detailseW4esmc
*國際電子商情對文中陳述、觀點判斷保持中立,不對所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。eW4esmc
微信掃一掃,一鍵轉(zhuǎn)發(fā)
關(guān)注“國際電子商情” 微信公眾號
歐盟大力投資以RISC-V開源架構(gòu)實現(xiàn)芯片獨立的倡議。這項工作由巴塞羅那超級計算中心牽頭,該中心在RISC-V技術(shù)的開發(fā)方面一直走在前列。
隨著物聯(lián)網(wǎng)設(shè)備的快速增長和智能化水平的提高,微控制器(MCU)作為智能設(shè)備的核心部件,正面臨著前所未有的發(fā)展機(jī)遇。
我們一直都很好奇,MCU作為一種對實時性有要求的控制器,是如何實現(xiàn)邊緣AI處理工作的。所以這篇文章,我們期望借著RA8來談?wù)凙rm?Helium技術(shù)。
國際電子商情25日訊 RISC-V已成為中美先進(jìn)芯片技術(shù)戰(zhàn)略競爭的新戰(zhàn)線。
種種跡象表明,得益于自身對神經(jīng)網(wǎng)絡(luò)計算進(jìn)行的專門優(yōu)化,在端側(cè)和邊緣側(cè)處理復(fù)雜神經(jīng)網(wǎng)絡(luò)算法時擁有的更高效率和更低能耗,神經(jīng)網(wǎng)絡(luò)處理器(NPU)正成為推動AI手機(jī)、AI PC和端側(cè)AI市場前行的強大動能,并有望開啟屬于自己的大規(guī)模商用時代。
戴爾首席運營官 Jeff Clarke 在上周公司的財報電話會議上透露 Nvidia 最新的 AI 加速器將消耗 1,000 瓦,比前身增加 42%。即便如此,他表示即將推出的 Nvidia 芯片(他稱之為 B20
國際電子商情28日訊 繼美國、歐盟提出反壟斷調(diào)查后,高通收購以色列半導(dǎo)體公司Autotalks Ltd. 的交易目前也在面臨來自英國反壟斷監(jiān)管機(jī)構(gòu)的正式調(diào)查。
國際電子商情27日訊 據(jù)外媒報道,在KKR宣布同意以約為40億美元價格收購博通旗下終端用戶計算部門(EUC) 后,后者暫停了其Carbon Black安全軟件業(yè)務(wù)銷售…
國際電子商情19日訊 據(jù)外媒報道,美國網(wǎng)通巨頭思科 (Cisco) 將在全球裁員5%,即4000多個工作崗位……
國際電子商情18日訊 據(jù)外媒報道,在去年11月宣布將解雇在中國的大部分員工,并停止在中國的銷售的英國芯片設(shè)計公司Graphcore日前傳出正在考慮出售。
本次大會邀請了40多位重磅嘉賓進(jìn)行分享,行業(yè)領(lǐng)域?qū)<掖罂R聚一堂,精彩觀點碰撞,吸引了來自國內(nèi)外汽車電子與半導(dǎo)體產(chǎn)業(yè)領(lǐng)域代表性企業(yè)和組織機(jī)構(gòu)近1700人報名,1000+人次出席參會。
國際電子商情25日訊 據(jù)外媒報道,芯片設(shè)計初創(chuàng)公司SiFive表示,該公司已解雇約 20% 的員工,裁員涉及公司所有部門…
在各大半導(dǎo)體廠商搶攻AI商機(jī)之際,芯片產(chǎn)能卻趕不上需求。
TrendForce集邦咨詢預(yù)估AI服務(wù)器第2季出貨量將季增近20%,全年出貨量上修至167萬臺,年增率達(dá)41.5%。
根據(jù)TrendForce集邦咨詢最新存儲器產(chǎn)業(yè)分析報告,受惠于位元需求成長、供需結(jié)構(gòu)改善拉升價格,加上HBM(高帶寬內(nèi)
根據(jù)TrendForce集邦咨詢最新存儲器產(chǎn)業(yè)分析報告,受惠于位元需求成長、供需結(jié)構(gòu)改善拉升價格,加上HBM(高帶寬內(nèi)
近日,中國科學(xué)院上海微系統(tǒng)與信息技術(shù)研究所宋志棠、雷宇研究團(tuán)隊,在三維相變存儲器(3D PCM)亞閾值讀取電路、高
7月21日,TCL電子公布2024年上半年全球出貨量數(shù)據(jù),TCL電子表示,得益于公司在全球市場的積極開拓和品牌影響力的
據(jù)美國趣味科學(xué)網(wǎng)站16日報道,來自美國麻省理工學(xué)院、美國陸軍作戰(zhàn)能力發(fā)展司令部(DEVCOM)陸軍研究實驗室和加拿
全球LED市場復(fù)蘇,車用照明與顯示、照明、LED顯示屏及不可見光LED等市場需求有機(jī)會逐步回溫,億光下半年車用及
三星最新推出的Galaxy Watch 7,繼續(xù)重新定義可穿戴技術(shù)的極限。這款最新型號承襲了其前身產(chǎn)品的成功之處,同時
2024年第二季度,在印度大選、季節(jié)性需求低迷以及部分地區(qū)極端天氣等各種因素的影響下,印度智能手機(jī)市場微增1%
根據(jù)TechInsights無線智能手機(jī)戰(zhàn)略(WSS)的最新研究,2024年Q1,拉丁美洲智能手機(jī)出貨量強勁增長,同比增長21%。
Chiplet的出現(xiàn)標(biāo)志著半導(dǎo)體設(shè)計和生產(chǎn)領(lǐng)域正在經(jīng)歷一場深刻的變革,尤其在設(shè)計成本持續(xù)攀升的背景下。
7月25日,由全球領(lǐng)先的專業(yè)電子機(jī)構(gòu)媒體AspenCore與深圳市新一代信息產(chǎn)業(yè)通信集群聯(lián)合主辦的【2024國際AIoT生
“芯”聚正當(dāng)時!第二十一屆中國國際半導(dǎo)體博覽會(IC?CHINA?2024)正式定檔,將于2024年11月18-20日在北京·國家
7月25日,由全球領(lǐng)先的專業(yè)電子機(jī)構(gòu)媒體AspenCore與深圳市新一代信息產(chǎn)業(yè)通信集群聯(lián)合主辦的【2024國際AIoT生
2024年7月17日-19日,國內(nèi)專業(yè)的電子元器件混合分銷商凱新達(dá)科技(Kaxindakeji)應(yīng)邀參加2024年中國(西部)電子信息
在7月12日下午的“芯片分銷及供應(yīng)鏈管理研討會”分論壇上,芯片分銷及供應(yīng)鏈專家共聚一堂,共謀行業(yè)發(fā)展大計。
7月8日-10日,2024慕尼黑上海電子展(elec-tronica China)于上海新國際博覽中心盛大開展,凱新達(dá)科技被邀重磅亮
2024年7月8日到10日 ,浙豪半導(dǎo)體(杭州)有限公司作為小華半導(dǎo)體的優(yōu)秀合作伙伴,在2024慕尼黑上海電子展上展出了
7月25日,由全球領(lǐng)先的專業(yè)電子機(jī)構(gòu)媒體AspenCore與深圳市新一代信息產(chǎn)業(yè)通信集群聯(lián)合主辦的【2024國際AIoT生
近日,2024?Matter?中國區(qū)開發(fā)者大會在廣州隆重召開。
7月25日,由全球領(lǐng)先的專業(yè)電子機(jī)構(gòu)媒體AspenCore與深圳市新一代信息產(chǎn)業(yè)通信集群聯(lián)合主辦的【2024國際AIoT生
7月13日,以“共筑先進(jìn)封裝新生態(tài),引領(lǐng)路徑創(chuàng)新大發(fā)展”為主題的第十六屆集成電路封測產(chǎn)業(yè)鏈創(chuàng)新發(fā)展論壇(CIPA
新任副總裁將推動亞太地區(qū)的增長和創(chuàng)新。
點擊查看更多
北京科能廣告有限公司深圳分公司 版權(quán)所有
分享到微信
分享到微博
分享到QQ空間
推薦使用瀏覽器內(nèi)置分享
分享至朋友圈