A Macek Intel processzorokról ARM chipekre cserélése már egy ideje a levegőben lóg, és csak idő kérdése, mikor történik meg valóban a váltás. De pontosan milyen lépések is történtek az elmúlt évtizedben, hogy ez valósággá válhat?
Egyelőre úgy néz ki, hogy a nagy bejelentés végre megtörténhet az előttünk álló WWDC-n, az első ARM processzorokkal szerelt Macek pedig 2021-ben meg is érkezhetnek a boltok polcaira. De mit is jelent pontosan a váltás?
Intel vs. ARM
Az Intel és ARM chipek összehasonlítása gyakorlatilag 2010 óta trending topic. Steve Jobs ekkor azt mondta, igenis az ARM lesz az Apple termékek jövője. Aztán mit ad Isten, az ARM-es chipek valóban „kitúrták” az Intelt a mobilprocesszorok piacáról. Így „szegény” Intelnek meg kellett elégednie az asztali gépek, laptokok és szerverek piacával. De pontosan miben is rejlik a picike chipek különbsége?
Amikor a fejlesztők különböző applikációkat készítenek, a megírt kód utasításkészlete típus szerint lehet CISC és RISC – meg még más is, de esetünkben most ez a két típus mérvadó –. A Complex Instruction Set Computer, azaz Összetett Utasításkészlettel Rendelkező Számítógép és Reduced Instruction Set Computer, azaz Csökkentett Utasításkészletű Számítógép.
Az utasításkészlet legegyszerűbben megfogalmazva egy sor utasítás a kódban, amit aztán a CPU felismer és végrehajt. Ennek tükrében a CISC és RISC közti legfőbb különbség, hogy míg az utóbbi egyszerű, szimpla utasításokat végez el több sorban egy számítási ciklusban, addig az előbbi egysornyi komplex utasítást tartalmaz több feladat számára. Ez sokkal inkább energiaigényes és kevéssé hatékony.
Ezért a RISC architektúrájú processzorok energiafogyasztása sokkal kisebb, míg a CISC CPU-knak jóval több energiára van szüksége a komplex utasítások miatt.
Innen már nem lehet nehéz kitalálni, hogy melyik gyártó melyik architektúrát preferálja. Az Intel és AMD RISC és CISC hibridet használ, míg az ARM-es CPU-k kizárólag RISC architektúrára használatára korlátozódnak.
Az ARM processzorok utasításkészletét még akkor fejlesztették ki, amikor ki kellett használni a prociban rejlő minden erőt, de azok csak néhány millió tranzisztort tartalmaztak. Mostanában egy átlagos okostelefon processzora olyan 6 milliárd tranzisztorból áll.
Igazából a PC-k korában nem volt szükség arra, hogy kihasználjuk az ARM-ben rejlő lehetőségeket, azonban a mobil technológia teljes előretörésével egyre inkább fókuszba került a processzorok energiafogyasztása.
Összehasonlításként: a legújabb iPad Próban található 64-bites A12Z Bionic chip olyan erővel bír, mint a Microsoft Xbox One S, aminek a működése folyamatos áramellátást igényel.
És bár az Apple A-szériás ARM chipjei jelenleg csak mobileszközök számára elérhetők, a Qualcomm Snapdragon processzoraiból már érkezett laptoba való is. De az Amazon Web Services virtuális gépei között is akad, amit ARM hajt meg.
Anno lemérték egy ARM-es proci Intel Xeon E5-höz mért sebességét, 12 millió prímszám megtalálására. A Intel Xeon E5-nek 9,8 másodpercre, az ARM-es CPU-nak pedig 8,9 másodpercre volt szüksége a listázáshoz. De hogy jönnek ehhez a Macek?
Ha visszatekintünk a Macek történetére az elmúlt 5-6 évben, akkor teljesen egyértelművé válnak azok a lépések, amiket a vállalat megtett azért, hogy a Mac ökoszisztémája ARM-baráttá váljon.
Xcode
2003-ban az Apple megtette az első publikus lépést az ARM-es Mac felé, még pedig az Xcode kiadásával.
A Maces integrált fejlesztői környezet teljes egészében újra definiálta azt, ahogy a fejlesztők elkészítették alkalmazásaikat és programjaikat az Apple különböző platformjaira. Az integrált fejlesztői környezet bemutatása előtt minden egyes környezethez más és más eszközt kellett használni.
Bár abban biztosak lehetünk, hogy az Apple mérnökeinek lelki szemei előtt nem az ARM-es Macek lebegtek, amikor előálltak az Xcode ötletével, azonban az iPhone-ok fejlesztéséhez elengedhetetlen lépés volt. Egységesítés nélkül ma a macOS teljesen más lenne.
OpenGL és Metal
A 2010-es évek második felére már egyre jobban kialakulóban volt az Apple mára már jellegzetessé vált hardver-szoftver-OS integrációja. A Metal 2014-es iOS-es bemutatásával, majd az OpenGL 2018-as száműzésével teljesen új szintre vitte az Apple fejlesztők szabadságát.
A korábbi grafikai technológiákhoz képest az Apple szerint a Metal keretrendszer lehetővé teszi, hogy a CPU és GPU még hatékonyabban dolgozzon együtt. A Metal API használatával mind a macOS és iOS fejlesztők képessé váltak olyan kódok létrehozására, amik már a GPU-tól függetlenül működnek. Ez az Apple által elkészített ARM chipek estében főleg azért fontos, mert a vállalat saját GPU-ja még a kanyarban sincs.
Az OpenGL elhagyásával újabb ajtó nyílt meg az alkalmazások és fejlesztői felületek cross-platform működése előtt. A Metal bemutatása végülis fontos szerepet játszott az igazán kiterjedt Apple ökoszisztéma kialakulásában.
Több fórumon is felvetették már annak a lehetőségét, hogy az ARM-re való átállással az olyan trónfosztott technológiák, mint az OpenGL teljesen eltűnhetnek. Lévén az összes OpenGL függő dolog már bekerült a Metalba, lehet a vállalat már azóta erre készült, amióta szakítottak a technológiával.
Swift
Az Apple saját fejlesztésű, open-source programozási nyelve is éppen ekkortájt indult meg, lehetőséget biztosítva mind a vállalat, mind pedig a fejlesztők számára, hogy több terméket is közelebb hozzanak egymáshoz.
A Swifttel az Apple eredeti célja az volt, hogy olyan programozási nyelvet hozzanak létre, ami gyorsabb, intuitívabb és biztonságosabb, mint az akkor elérhető megoldások. És az egész megalkotásakor azt tartották szem előtt, hogy az Apple minden termékével működjön. Később aztán kiderült, hogy ez is csak része volt a nagyobb képnek, aminek része az iOS és iPadOS alkalmazások optimalizálása is.
Továbbá a SwiftUI-nak szintén óriási szerepe volt az ARM-es átalakulásban, ugyanis a SwiftUI lehetőséget biztosított a fejlesztők számára, hogy különböző user interfaceket hozzanak létre az Apple minden terméke számára.
SIP – System Integrity Protection, azaz Rendszerintegritás-védelem
2015-ben az Apple bemutatott egy új rendszerfunkciót az SIP személyében az OS X El Capitannal. Néhány fejlesztő szerint ez volt az első valódi lépés a macOS biztonsági funkciónak közelebb hozására az iOS rendszeréhez.
Bár az SIP dobott egy jó nagyot a biztonságon, megszüntetett egy csomó UNIX-ból örökölt funkciót, ami a macOS-nek már évek óta része volt. Ezzel még távolabb sodorva a macOS-t a többi OS-től, amik viszont már készek voltak az ARM rendszerére.
Ez leginkább azért lényeges, mert a legtöbb biztonsági rés chip-szintű sebezhetőség volt az elmúlt évek során. Így simán lehet, hogy a vállalat az ARM-re váltást leginkább biztonsági frissítésként könyveli majd el.
T-szériás chipek és Secure Boot
Még mielőtt az ARM-re váltás egyáltalán képbe került volna, alapvetően már csomó ARM-alapú technológiát sűrített a gépbe, pl. a T1-es processzort és a 2016-os MacBook Prók Touch Barját, ami gyakorlatilag ennek köszönhetően külön életet él a rendszertől.
Az OLED-es Touch Bar mellett a T1-es chip még a Touch ID szenzor működéséért is felelt és irányította a SMC-t is.
Aztán 2017-ben jött a T-chip következő verziója az iMac Próval. Ahogy a mobileszközökben található A-szériás chipek esetén a T2 is csomó biztonsági lehetőséget tett lehetővé a macOS számára, pl. az új Secure Enclave-et, vagy az on-the-fly encryption lehetőségét. Ez hozta el a Hey Siri opciót és működteti biztonságosan a Macek mikrofonját és FaceTime kameráját is, valamint felelős néhány videokódolási folyamat felgyorsításáért.
A 32 bites appok vége
Az egyik legnagyobb lépés az ARM-es Macek felé a 32 bites alkalmazások támogatásának megszüntetése volt. A macOS Catalina megjelenése minden 32 bites app végét jelentette, amihez a vállalat már megkezdte a 64 bites rendszerre történő átállás még 2009-ben az OS X Snow Leopard megjelenésével.
Az A-szériás chipek az iPhone-okban és iPadekben már mind kizárólag 64 bites alkalmazásokat futtatnak és ARM-esek. A Metal kizárólag 64 bites architektúrával működik. Ide csatlakozott a komplett macOS rendszerrel az összes támogatott Mac is.
Catalyst
Aztán jött a Catalyst a 2019-es WWDC-n, ami már egyértelmű jele volt az ARM-támogatásának. A Catalyst lehetőséget biztosít a fejlesztők számára, hogy könnyebben portolják iOS és iPadOS alkalmazásaikat Macre. Persze, ez nem jelenti még automatikusan a macOS specifikus alkalmazások végét, vagy azt, hogy a macOS valaha megszűnne külön operációs rendszer lenni.
Bár az első fejlesztői reakciók nem voltak kizárólag pozitívak, az új platform bemutatása valóban könnyebbé tette a fejlesztők számára az iOS-es és macOS-es alkalmazások integrálását. Egészen annyira, hogy konkrétan egy gombnyomás lett portolni az appokat. És mivel az iPhone-ra és iPadre készített alkalmazások már mind ARM-re optimalizáltak, ez még indokoltabbá teszi az ARM-es Mac vonalat.
Természetesen ez nem jelenti azt, hogy az Apple majd dob minden nem Catalystos alkalmazást, de legalább könnyebbé teszik a fejlesztők számára a váltást.
A váltás igazi kezdete
Talán a 2018-ban megjelent iPad Pro adta meg a végső lökést ahhoz, hogy kialakuljon a valódi kép arról, az Apple hogyan is határozza meg számítógépeit a jövőben. A Keynote-on bemutatott termék gyorsabb volt a piacon akkor elérhető laptopok 92%-ánál. Világossá téve, hogy az A-szériás chipekben valódi erő lapul. És bár a vállalat egyértelműen kimondta korábban, hogy nem fog a Macből és iPadből egy készüléket összegyúrni, arról nem mondtak semmit, hogy a Mac ökoszisztémáját hogyan fogják az iPadéhez hasonlóvá tenni.
Az ARM-re váltás lenne a harmadik nagy architektúrabeli változás a Macek életében. Először Motorola 68000-ről PowerPC-re, majd PowerPC-ről Intelre váltottak 2005-ben a gépek. A korábbi architektúra váltások során is mindig azt tartották szem előtt, hogy jobbá tegyék a Maceket és növeljék a teljesítményt.
Utolsó lépések
Ahhoz, hogy a váltás minél simább és fájdalommentesebb legyen, a vállalatnak még nagyon sok lépést meg kell tennie és óriás feladatok várnak rájuk, csak úgy, mint a független fejlesztőkre is.
Az előző körös váltásnál több évig tartott, míg végül az OS X Snow Leoparddal végleg megszűnt a PowerPC támogatása. A legutolsó PowerPC-s gépek 2013-ban lettek elavulttá nyilvánítva, hét évvel azután, hogy a váltás megkezdődött.
Aztán ott vannak még a Development Transition Kitek, amiket a legnagyobb fejlesztők biztosan be kell, hogy szerezzenek. Az előző körben ezek egyenként közel ezer dolláros Intel hardvereket jelentettek, amin mehetett a tesztelés. Nem lesz ez valószínűleg másképp az ARM-es konstrukciók esetén sem, maximum az árcímke változik.
Nem egyszerű egy ekkora váltás véghez vinni egy egész termék palettán, de amint túlesünk az első nehézségeken, és elül a vihar, a felhasználók végül sokkal jobb teljesítményt és élményt kaphatnak.
Profi felhasználóként szerinted képes lesz az ARM-es Mac számodra egy stabilabb és erősebb hardvert biztosítani? Akad még kérdésed az idei WWDC előtt? Ha van még olyan téma, ami nem lenne világos, írjátok meg a hozzászólások között, és mi feldolgozzuk!
Borítókép: Getty Images