Allt du behöver veta om Rosetta 2 på Apple Silicon Macs

Allt du behöver veta om Rosetta 2 på Apple Silicon Macs Problemet är det applikationer är utformade för att köras på specifika processorer och inte alla utvecklare har gjort allt arbete för att få sina appar att köras på Apple Silicon Macs. Mac-datorer med M1-teknik kan köra inbyggda, universella (där installationsprogrammet innehåller kod för Intel- och Apple-chips) och Intel-program. Apple uppmuntrar utvecklare att släppa universella appar där det är möjligt och låter även Intel-appar köras på Apple-kisel med emuleringsteknik som Apple kallar Rosetta 2.

Vad är Rosetta 2?

Rosetta 2 är en emulator designad för att underlätta övergången mellan Intel- och Apple-processorer.. Översätt applikationer designade för Intel att köras på Apple Silicon. Vissa applikationer (inklusive Microsoft Office-applikationer) översätts också första gången du kör dem. Detta behov av översättning vid första körningen innebär att applikationer kan starta lite långsammare än normalt (upp till 20 sekunder i vissa fall), men du kommer inte att uppleva samma fördröjning nästa gång du kör applikationen. 'Ansökan. Hela processen äger rum i bakgrunden, och även om det kan ha en liten inverkan på applikationsprestanda, tyder tidiga rapporter på att prestandaförbättringen för bytet till M1-chippet mer än kompenserar för det.

vad säger apple

"Rosetta är en översättningsprocess som tillåter användare att köra applikationer som innehåller instruktioner", säger dess utvecklarsida. "Rosettas mål är att underlätta övergången till Apple-kisel, vilket ger dig tid att skapa en universell binär för din applikation. Det är inte en ersättning för att skapa en inbyggd version av din app. "

Vad är översättningsprocessen?

"Om en körbar fil endast innehåller Intel-instruktioner, startar macOS automatiskt Rosetta och påbörjar översättningsprocessen. När översättningen är klar, startar systemet den översatta körbara filen istället för originalet. Men översättningsprocessen tar tid, så användare kan känna att översatta appar startar eller kör långsammare”, säger Apple. Rosetta kan också översätta dynamisk kod eller JavaScript om framstegen.

Kan jag köra ett x86-plugin med min app?

När du använder en Mac M1 kommer du att upptäcka att du alltid föredrar att köra arm64-instruktioner på Apple silicon. Dock, ibland innehåller en applikation ARM- och X86-instruktioner, och i så fall kan användaren starta om programmet med hjälp av Rosetta-översättningen från fönstret Få info. 'appen i Finder. Välj appen, tryck på Kommando-I och markera rutan Öppna med Rosetta. Detta är bara riktigt användbart om du behöver köra ett gammalt plugin i en app som körs inbyggt på M1, till exempel.

Vem stöder Rosetta 2?

Alla Apples applikationer och alla dess kommersiella applikationer är redan kompatibla med M1-kretsen. Utvecklare skapar också universella appar som kommer att köras på Intel- och M1 Mac-datorer. Appar som ännu inte är tillgängliga inbyggt eller universellt kan kräva en liten uppdatering för att aktivera Rosetta 2-stöd, men kommer då att fungera utmärkt. Nyckelapplikationer som Word körs redan på M1 och Adobe lovar en inbyggd M1-version av Photoshop i början av nästa år, med Lightroom som kommer "snart". Naturligtvis kan du även köra alla iOS-appar på M1-chippet, om utvecklarna tillåter det.

Vad kan inte Rosetta 2 översätta?

Rosetta kan inte översätta kärntillägg eller virtuella maskinapplikationer som virtualiserar x86_64-datorplattformar. Utvecklare bör vara medvetna om att Rosetta inte heller kan översätta AVX-, AVX2- och AVX512-vektorinstruktioner.

Lite historia

Apple har använt Rosetta-namnet tidigare. När du migrerade Mac från PowerPC till Intel-chips använde du något med samma namn för att utföra samma funktion för att aktivera PowerPC-program på Intel-chips. Även om namnet och syftet förblir detsamma är det en stor skillnad mellan den här formen av Rosetta och den Rosetta vi använder idag, eftersom Apple utvecklade målprocessorn, vilket innebär att man tänkte på Rosettas behov när man designade M1. . Detta betyder att den kunde bygga några av de element som var nödvändiga för att ge detta stöd på själva chippet. Det är därför vissa applikationer som körs i Rosetta-emulering på en Apple Silicon Mac körs snabbare än på Intel, för trots att de har en låg prestandapåverkan drar de fortfarande nytta av de enorma prestandafördelarna som ger byte. till M1-processorer.

Hur ser föreställningen ut?

Som jag förklarade här har jag använt en Mac mini M1 ett tag. Enligt min erfarenhet fungerar de flesta applikationer lika bra (ofta mycket snabbare) när de körs på M1-chippet som de gör på motsvarande Intel-drivna Mac. Det bör också noteras att dessa processorer erbjuder utmärkt minneshantering. Apple har utvecklat en teknik som heter Unified Memory Architecture (UMA) som delar minne mellan alla processorfunktioner. Eftersom minnet, processorn och andra delar av systemet alla finns på chippet kan du förvänta dig bra prestanda. Detta märks särskilt i grafiskt intensiva applikationer, som jag tycker går ännu snabbare än tidigare.

Hur länge kommer Rosetta 2 att vara tillgänglig?

Vi vet inte om Rosetta 2 kommer att fortsätta att vara tillgänglig. Historiskt sett, Rosetta ingick i OS X 10.4.4 Tiger, blev ett nedladdningsbart alternativ i OS X 10.6 Snow Leopard och som stöd, men försvann följande år, även om övergången i detta fall slutfördes tidigare. än väntat när Apple slutade sälja Mac-datorer baserade på den äldre arkitekturen. Apple har åtagit sig att slutföra övergången mellan Intel och Apple Silicon-processorer inom två år, vilket tyder på att det kommer att finnas där för att stödja detta och kommer att fortsätta att finnas tillgängligt i efterföljande versioner. Apple vet att folk alltid kommer att köpa nya Mac-datorer med Intel-processorer under denna övergång. Med det i åtanke verkar det troligt att Apple kommer att behålla stödet för Rosetta 2 i macOS till åtminstone 2023. För mer om Rosetta, kolla in denna Apple Developer Note.