Hvordan vil skiftet fra Intel til Arm CPU'er påvirke Mac-brugere?

Apple har besluttet at skifte fra at bruge Intel CPU'er til at drive sine computere til at bruge sine egne brugerdefinerede ARM-baserede CPU'er, som det kalder "Apple silicium". Apple har designet sine egne mobile CPU'er i årevis, men denne ændring fra Intel til ARM har et potentielt stort problem, som de fleste forbrugere sandsynligvis ikke vil være opmærksomme på. Heldigvis for Mac-brugere arbejder Apple på at minimere enhver effekt for slutbrugeren.

Arkitektur

Intel og AMD CPU'er bruger x86-arkitekturen eller mere specifikt x86_64-arkitekturen, en 64-bit variant af den originale 16-, derefter 32-bit x86-arkitektur. Dette er dybest set et standard sæt instruktioner, som en CPU kan køre. Når apps skrives og kompileres, skal de tage højde for, hvilken slags platform de kører på. Dette betyder ikke kun Windows, macOS eller Linux, men betyder også det instruktionssæt, som CPU'en kører. Med x86-instruktionssættets allestedsnærværende på computermarkedet er stort set alt designet til at bruge det.

Problemet er, at ARM-baserede CPU'er ikke bruger x86-instruktionssættet, de bruger ARM-instruktionssættet, og dette er ikke kompatibelt med x86. Dette betyder, at de fleste programmer, der ville køre på en Intel-baseret Mac, ikke ville være i stand til at køre på en ARM-baseret Mac.

Der er to måder, som Apple planlægger at løse dette problem på. Den første er at overtale udviklere til at ændre deres apps til også at fungere på ARM CPU'er, den anden er at bruge et "Abstraktionslag". I betragtning af størrelsen af ​​Apples markedsandel, vil det sandsynligvis være i stand til at overtale mange udviklere til at udgive en ARM-version af deres software. Dette kan dog tage lidt tid at blive almindeligt, især da det kan kræve nogle kodeændringer.

Abstraktionslaget, kaldet "Rosetta 2" er designet som et stopgap-mål for at tillade x86-applikationer at blive kørt på ARM CPU'er. Denne proces kan evt fungerer ikke perfekt til alle applikationer, hvilket potentielt kan forårsage stabilitets- og ydeevneproblemer, men burde generelt fungere for de fleste applikationer. Det vil også komme med øget behandlingstid, når konverteringen sker, for eksempel når applikationen installeres, eller når koden køres.

Tip: Abstraktionslaget hedder "Rosetta 2", da det følger efter det originale Rosetta-abstraktionslag, der blev brugt, da Apple skiftede fra IBMs PowerPC-arkitektur til Intels x86.

I virkeligheden betyder denne tilgang, at macOS-brugere muligvis skal vænne sig til at kontrollere, at den software, de vil installere, er ARM-kompatibel snarere end for x86 CPU'er. Selve abstraktionslaget formodes dog i det væsentlige at være gennemsigtigt for brugeren, så det burde være en problem.

Ydeevne

Det andet potentielle problem er ydeevne. ARM CPU'er er typisk blevet brugt i mobile enheder, fordi de er meget strømeffektive, og derfor giver enheder længere batterilevetid. Dette lyder ikke specielt som en ulempe, desværre har de heller ikke sammenlignet sig positivt på mellem- til high-end ydeevneniveauerne af traditionelle desktop-CPU'er med hensyn til rå ydeevne.

Samlet set burde effektivitetsændringerne medføre en mærkbar forbedring af batterilevetiden, hvor det er relevant. Mens mid-tier CPU'er sandsynligvis vil forblive noget konkurrencedygtige med deres x86 Intel-forgængere, er dette muligvis ikke tilfældet i toppen af ​​linjen.

Potentielt for at hjælpe med at løse dette problem, vil den første generation af Apple-enheder, der faktisk bruger ARM CPU'er være produkterne på lavt til mellemniveau, hvor de avancerede enheder er tilbage på Intel i mindst én mere generation.