Din ARMa Mac

3 May 2020

arm

Ännu ett CPU-byte på gång i din Mac? När vi hade den här diskussionen förra gången var året 2003-2004 och ryktena blev allt starkare i takt med att Apple inte presenterade en PowerBook-dator med en G5-processor. 2005 hände det till slut och få som var med då glömmer chocken som trots alla rykten, och trots att Apple publicerat kärnan i Mac OS X, Darwin, samt en bunt tillhörande mjukvaror för både PowerPC- och x86-arkitekturerna i flera år innan bytet faktiskt ägde rum. Apple hade ledsnat på IBM som var företaget som utvecklade, tillverkade och levererade det Apple kallade G3, G4 och G5-processorn. IBM hade inget som helst intresse av att lägga miljoner, eller möjligen miljarder, dollar på att utveckla en “G5”-processor som fungerade i en bärbar dator med tanke på att Apples totala marknadsandel för alla deras datormodeller då låg på 3-4 procent globalt sett.

Apple var helt enkelt en för liten kund för att IBM skulle orka bry sig. Apple gjorde således vad de gjort under hela sin livstid: de tog saken i egna händer och ville bestämma sitt eget öde istället för att låta IBM diktera vilka produkter Apple kunde och inte kunde sälja. Samma problem hade Apple när de 1993-94 gick från Motorola till PowerPC: framtiden för processorarkitekturen såg inte tillräckligt bra ut:

Det var alltså 15 år sedan bytet till x86-arkitekturen skedde och det började i maklig takt med en “hackintosh” där ett moderkort med en Pentium 4-processor, lite minne och annat som smackats in i ett PowerMac G5-chassi och som i praktiken hyrdes ut till registrerade utvecklare för 999 dollar. Först i januari 2006 lanserades de första datorerna med de nya Core Duo-processorerna från Intel, en 15-tums Macbook Pro och en iMac.

För de som köpt en PowerBook G4 eller PowerMac G5 kom kanske inte helt lägligt och andrahandsvärdet för en PowerPC-baserad Mac rasade givetvis, men det var ett byte som var helt nödvändigt för att Apple skulle kunna fortsätta utveckla sina datorprodukter och, på sätt och vis, överleva. Det är viktigt att komma ihåg att detta var två år innan iPhone presenterades och 2,5 år innan iPhone började säljas, och kanske tre år innan iPhone började bli den storsäljare som Apple kunde luta sig mot. Givetvis sålde Apple tonvis med iPod på den tiden men de genererade inte alls samma intäkter som iPhone kom att göra.

Det passar bra att nämna iPhone för det var där Apples arbete med ARM började. Den första iPhone-modellen från 2007 innehöll nämligen en ARM-processor, en 412 MHz 90 nanometers ARM11-processor med en kärna och en separat grafikkrets av modell PowerVR MBX Lite. Processorn tillverkades av Samsung åt Apple och det är intressant att lägga just 90 nanometer på minnet för det är en bra indikation på hur snabbt utvecklingen gått.

Varför man “mäter” processorerna i nanometer har inget att göra med hur stor processorn i sig är, även om en lägre storlek bidrar till att kunna göra processorerna fysiskt mindre. Antalet nanometer anger hur pass tätt man kan packa transistorer i en processor – ju tätare de sitter desto kortare väg måste signalerna färdas inne i processorn och ju fler processorkärnor, buffertminne och annat får plats på samma eller till och med mindre yta desto bättre. Utvecklingen har gått så pass snabbt sedan 2007 då Apple presenterade sin första iPhone att vi idag har Apples A13-kretsar som är baserade på sju nanometer.

A-processorerna

På 13 år har alltså Apple gått från att använda sig av processorer och grafikkretsar som i princip fanns på marknaden att köpa till att med A4-processorn slå ihop en processor och en grafikkrets och därefter accelerera utvecklingen av sina ARM-baserade processorer så pass mycket så att de är snabbare än de flesta Mac-modeller som går att köpa idag. Vill Apple bygga in funktioner för maskininlärning i sin processor och sedan bygga in funktioner för att använda detta i ett operativsystem kan de göra det och det ger företaget en enorm konkurrensfördel gentemot konkurrerande Android-baserade produkter som i mångt och mycket fortfarande befinner sig i samma situation som Apple gjorde för 13 år sedan: de får köpa vad som erbjuds av exempelvis Qualcomm. Det ska väl också tilläggas att det snackas om att Google nu ska göra “en Apple” och utveckla egna ARM-processorer för sina Nexus-mobiltelefoner, men det lär visa sig om och i så fall när detta blir verklighet.

Att Apple har ett enormt försprång gentemot konkurrenterna där deras A-processorer används (iPhone, iPad, Apple TV, Apple watch, och så vidare) råder det ingen tvekan om. På datorsidan befinner sig Apple däremot i ett prekärt läge, och de sitter där på grund av Intel. När Apple för femton år sedan valde att arbeta med Intel så var inte AMD ett särskilt stort hot gentemot Intel när det gällde 86-processorer. Idag är det som att vända på steken totalt – Intel har stått och stampat i utvecklingen av sina processorer i många år nu och har parallellt med att de putsat och polerat upp sina gamla processormodeller baserade på 14 nanometers-teknik valt att hoppa över tio nanometer och gå direkt till sju nanometer i sin tillverkning av nya processormodeller.

Problemet för Intel är att de i princip stått och stampat på samma plats i många år nu och utvecklingen inom ARM-tekniken som Intel för övrigt övergav år 2006 när de sålde sin XScale-processor till Marwell. Intel har alltså blivit omsprungna av en processorarkitektur de hade chansen att vara med och dominera marknaden med, och istället körde de vidare med x86-plattformen som, vilket ska sägas till Intels försvar, utvecklades enormt snabbt under 2000-talets första decennium. Med Intels processorer kunde Apple göra snabbare, kraftfullare och läckrare Mac-datorer och det syns onekligen i bolagets försäljningssiffror att övergången till Intel-plattformen var ett val som betalade sig relativt omgående:

Försäljningssiffror av Mac-datorer 1997 - 2019 Försäljningssiffror av Mac-datorer 1997 - 2019. Bild från MacPatric

Intel körde helt enkelt fast i sin tekniska utveckling och Dell vet det, Lenovo vet det, HP vet det, Asus vet det och Apple vet det. Oavsett om man tillverkar bärbara datorer, stationära arbetsstationer eller servrar så har man helt enkelt fått vänta på att Intel ska leverera, och man fortsätter att få vänta ett tag till. ARM-processorerna gör exempelvis enorma framsteg inom den världen där man arbetar i datacenter med inte en server utan tusentals, där en minskning av energiåtgången med exempelvis 10 procent innebär stora besparingar varje år och där servrar med ARM-processorer har 50-60 processorkärnor som drar 400 watt vid max belastning gör att även den mest härdade serveradministratör kan tänka sig att släppa greppet om sina Xeon-baserade servrar. Även där finns det dock utmaningar, och det är samma utmaningar som väntar Apple om de går över till ARM i sina datorer, men vi återkommer till det snart.

Med det är vi på samma plats i historien som vi var för 16-17 år sedan: Apple står vid ett vägval. Hålla fast vid sin nuvarande leverantör av processorer till sina Mac-datorer, eller hitta en bättre leverantör som dels kan leverera bra komponenter redan nu men också har en roadmap över kommande produkter fyra-fem år fram i tiden som ser lovande ut. Då var det IBM som petades, och nu ser det ut att bli Intel.

Hur en övergång till ARM i din Mac kan se ut

Att migrera över macOS till ARM är inget större problem för Apple. Sannolikt har de gjort det i flera år nu (Bloomberg hävdar att det pågått sedan 2018 i ett projekt kallat Kalamata. Mer om Bloomberg-artikeln nedan) och precis som med övergången till Intel har det givetvis skett i största hemlighet, även om Apple under flera år innan den officiella övergången till x86-plattformen publicerade källkod och binärfiler för Darwin, kärnan i Mac OS X, och tillhörande verktyg för x86-plattformen.

De senaste ryktena som cirkulerat via en artikel hos Bloomberg, skriven av Mark Gurman med flera, gör gällande att Apple kommer lansera sina första datorer med ARM-processorer under nästa år, 2021:

Taiwan Semiconductor Manufacturing Co., Apple’s partner for iPhone and iPad processors, will build the new Mac chips, said the people, who asked not to be identified discussing private product plans. The components will be based on a 5-nanometer production technique, the same size Apple will use in the next iPhones and iPad Pros, one of the people said. An Apple spokesman declined to comment, as did Intel and TSMC.

Vad kommer då sitta i dessa första Mac-datorer, som inte helt överraskande är bärbara Macbook-modeller. Bloomberg igen:

The first Mac processors will have eight high-performance cores, codenamed Firestorm, and at least four energy-efficient cores, known internally as Icestorm. Apple is exploring Mac processors with more than 12 cores for further in the future, the people said.

Redan här kan man tänka sig att Apple kommer ha åtta processorkärnor, men sannolikt är detta i själva verket sex processorkärnor och två kärnor som fungerar som ett inbyggt grafikkort. Tolv kärnor i en ARM-processor kan innebära åtta processorkärnor och fyra grafikkärnor, om jag skulle gissa, där den “enklare” modellen med totalt åtta kärnor kommer sitta i en motsvarighet till Macbook Air och en större processor med totalt tolv kärnor hamnar i en motsvarighet till Macbook pro. Hur en Mac pro kommer se ut kan man bara sia om – det är en rejäl arbetshäst som har gott om plats inuti och gott om kylning för att hantera bortåt 50-60 processorkärnor, och med tanke på att PCI Express redan finns i exempelvis servrar med ARM-processorer är det egentligen inget större problem att ta redan befintliga tillbehör som videokort och annat och utveckla nya drivrutiner för dem.

Den tekniska utmaningen är med andra ord inget problem för Apple. De har närmast total kontroll över sina plattformar sedan årtionden tillbaka och de vet hur man bygger tajt integrerade system. Genom köpet av Intels tillverkning och utveckling av modem för mobilkommunikation i iPhone och iPad har de också möjlighet att utvidga detta till wifi och därmed inte bara integrera allt detta i framtida Mac-datorer utan ytterligare stärka sin egen position och minska beroendet av tredjepartsleverantörer. På tal om tredjepartsleverantörer uppger Bloomberg i sin artikel att de nya processorerna för Mac-datorerna ska tillverkas i Taiwan av Taiwan Semiconductor Manufacturing, samma bolag som sedan tidigare tillverkar A-processorerna till iPad och iPhone.

Applikationerna är problemet

Gott så. Vad är då problemet? Svaret är mjukvara. Inte operativsystemet i form av macOS, utan i form av tredjepartsutvecklare och deras applikationer. Allt från Adobe och Microsoft till Omni Group och andra stora och små måste alla övertygas om att åtminstone delvis skriva om sina applikationer för ARM-plattformen. Givetvis är det egentligen ingen stor utmaning om man ser till enklare applikationer, och kanske är det inget problem att kompilera om Microsoft Office och Adobes Photoshop och Indesign för en ARM-baserad Mac givet att Apple själva tillhandahåller utvecklingsverktyg och ramverk men det är mer en fråga om dessa tillverkare tycker det är värt att lägga energi på att åstadkomma detta. Apple har historiskt sett blivit bitna i rumpan av både Adobe och Microsoft som båda var relativt långsamma när det gällde att portera över sina applikationer från gamla Mac OS till dåvarande Mac OS X, där Apples dåvarande vd Steve Jobs var minst sagt förbannad på i synnerhet Adobe när de öppet avfärdade Mac OS X under de första åren.

Jag nämnde drivrutiner innan och där kan Apple också gå på pumpen, dels när det gäller hårdvara som har några år på nacken men ändå fungerar med nuvarande versioner av macOS men också framtida tredjepartsprodukter i form av instickskort eller USB-ansluten hårdvara. Man kan förutsätta att Apple är redo för detta, eller gör som de gjort tidigare och kanske helt sonika dumpar USB 2.0 och satsar på USB 3.0 eller senare.

Om det stämmer att Apple hållit på med detta sedan 2018 så har projektet tre år på nacken redan nu. Det är inte omöjligt att Apple vid årets WWDC-konferens kommer presentera sina planer om ett skifte till ARM år 2021 och att utvecklarna därefter har 6-12 månader på sig att vara redo för den nya plattformen, troligen genom att kunna kompilera “feta binärer” där samma applikation kan installeras på Mac-datorer oavsett om de har en x86- eller ARM-processor inbyggt. Apple har ärvt det knepet genom köpet av NeXT då operativsystemet NeXTSTEP erbjöds för x86, Motorola, Sparc och HPPA-plattformarna och en utvecklare enkelt kunde kompilera in stöd för flera eller alla arkitekturer genom den dåvarande utvecklingsplattformen, NeXTSTEP Developer. När Apple gjorde detta möjligt under övergången mellan PowerPC och x86 kallades applikationerna “universala binärfiler”.

Ok, så små utvecklare kommer sannolikt haka på tåget till ARM-land, de stora kommer troligen också ansluta. Det finns bara ett frågetecken kvar som jag ser det: Mac App Store.

När Mac App Store lanserades så skrev jag följande i tidningen januarinumret från 2011 av Macpro Magazine som jag då publicerade:

Jag ska villigt erkänna att jag är en aning skeptisk. Jag var det redan när Steve Jobs presenterade Mac App Store under Back to the Mac-presentationen förra året, och min skepsism handlar inte så mycket om att Apple gör vad de gör i sig, för de har gjort det oerhört bra med butikerna för iPhone och iPad. Men att göra det med Mac OS X är en helt annan sak. För att förklara detta bättre så ska jag rita upp ett par enkla exempel: säg att Apple om 2-3 år framåt i tiden bestämmer sig för att de vill se till att Mac-plattformen är lika säker som iOS-plattformen.
Kanske gör de som Apple ofta gör; förenklar, skär bort fettet och skapar ett mer enhetligt grässnitt där iOS och Mac OS X smälter samman än mer. Om ett par-tre år kommer gissar jag att Apple kommer att ha frågat sig varför det ska finnas två sätt att installera program i en Mac. Kanske har problemet med datorvirus slutligen drabbat Mac-plattformen och genom att se till att alla tredjepartsapplikationer som man kan installera på sin Mac går via Apples applikationsbutik kan Apple behålla kontrollen över Mac:en och se till att den är säker. Inga tredjepartsprogram från andra källor kan längre installeras, och vill du kunna göra det måste “jailbreaka” din Mac.

Jag hade fel om tidsrymden, och än så länge så har jag också haft fel om Apples intentioner när det gäller att låsa ute alla applikationer som inte säljs via Mac App Store. Däremot har Apple de senaste åren dragit åt tumskruvarna allt mer när det gäller Mac-applikationer som inte är kompilerade med ett utvecklarcertifikat som man kan få via. Det går fortfarande att köra “osignerade” applikationer i macOS 10.15 “Catalina” men det har blivit allt svårare för var version som lanserats och det lär inte bli enklare. Kanske är övergången till ARM den tidpunkt då Apple slutligen bestämmer att alla tredjepartsapplikationer ska distribueras via Mac App Store? Å ena sidan skulle jag inte ha något emot det men å andra sidan är det ett enormt hårt slag mot projekt som exempelvis Homebrew, med flera. Ytterligare en uppsida för Apple är också att de inom några få år har slagit ihjäl allt vad “Hackintosh” heter då det inte längre kommer gå att köpa processor och annat ute på den vanliga marknaden.

Slutligen kommer Apple åter ha total och full kontroll över sin Mac-hårdvara, något de inte haft på 15 år. Den stora skillnaden nu är att de inte längre kan skylla förseningar eller eventuella tekniska tillkortakommanden på Intel – nu är det upp till bevis om Apple har de resurser som krävs för att ta steget förbi Intel när det gäller prestanda, batteritid och tätare förbättringar jämfört med vad som kunnat levereras de senaste åren. De som tror att Mac-datorerna slutligen kommer bli en sorts kraftfullare iPad tror jag har fel, åtminstone i det kortare (läs 7-8 år) perspektivet.

I det längre perspektivet kanske vi alla sitter och kör någon form av iPadOS med tangentbord, mus och externa stora skärmar med hiskeligt hög upplösning, vem vet. Det skulle göra livet enklare för mjukvaruutvecklarna, ge Apple ännu större intäkter genom sin applikationsbutik och kanske är ett eventuellt steg mot att enbart erbjuda mjukvaror genom Mac App Store till Mac-datorerna ett lika stort tecken på att Mac och iPad en vacker dag blir en och samma plattform som att iPad numera har stöd för möss och styrplattor.