Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

Warum M1-Macs sich zuweilen viel schneller anfühlen, als sie eigentlich sind

Dass Apples hauseigene Prozessoren überragende Leistungswerte aufweisen, ist hinlänglich bekannt und durch zahlreiche Tests belegt. Die Gründe hierfür sind vielfältig, dazu gehören etwa die ARM-Architektur, der Fertigungsprozess in 5-Nanometer-Technik und der hohe Integrationsgrad der Komponenten wie CPU, RAM und GPU. Schnelle Hardware allein sorgt aber bekanntlich noch nicht für außerordentliche Performance, hinzukommen muss auch intelligent und effizient programmierte Software. Das gilt natürlich vor allem für das Betriebssystem.


Einschneidende Veränderung in macOS
Was nach einer Binsenweisheit klingt, ist beim Vergleich von M1-Geräten mit Intel-Macs von großer Bedeutung. MacBook Air M1, MacBook Pro M1, Mac mini M1 und iMac M1 sind nämlich nicht nur in synthetischen Benchmarks schnell, sie fühlen sich auch im Alltag wesentlich flotter an als ihre eigenen Vorgänger und selbst Highend-Desktops aus Cupertino. Das liegt daran, dass sich viele Aufgaben mit ihnen schneller absolvieren lassen, ein Video-Export also beispielsweise früher erledigt oder ein Programm flinker gestartet ist. Ursächlich hierfür ist nicht nur die reine Geschwindigkeit des M1, sondern auch dessen Big-Little-Architektur im Zusammenspiel mit einer einschneidenden Veränderung, welche Apple in macOS 11 Big Sur für den hauseigenen Prozessor vorgenommen hat.


Apples M1 schlägt fast alle x64-CPUs.
Quelle: Passmark

Quality of Service sorgt für hohe Performance
Das Zauberwort in diesem Zusammenhang heißt "Quality of Service" (QoS). Dieser Begriff bezeichnet – vereinfacht ausgedrückt - eine Technik, mit der das Betriebssystem einzelne Aufgaben zur Abarbeitung auf die Prozessorkerne verteilt. Abhängig von der Dringlichkeit erhalten diese Tasks eine Prioritätsstufe, anhand derer sie dann bevorzugt oder nachrangig ausgeführt werden. App-Entwickler können diese Priorisierung im Falle von macOS in vier Ebenen festlegen. Zudem gibt es ein neutrales Level, welches dem Betriebssystem die Einstufung überlässt. Mit Blick auf den M1 hat Apple dieses Verfahren im Mac-Betriebssystem angepasst: Niedrig priorisierte Tasks werden auf den vier Effizienz-Kernen ("Icestorm") des hauseigenen Prozessors ausgeführt, wichtige und damit zeitkritische Aufgaben erledigen die schnellen High-Performance-Cores ("Firestorm"). Auf Intel-Macs gibt es diese Differenzierung nicht, da eine x64-CPU bislang stets aus identischen und somit gleich schnellen Kernen besteht.

Effizienz-Kerne arbeiten Hintergrund-Tasks ab
Der unter anderem für Apps wie Cormorant und SilentKnight bekannte Entwickler Howard Oakley, Gründer und Betreiber des Blogs The Eclectic Light Company, hat sich QoS auf M1-Macs genauer angesehen. Dabei fand er unter anderem heraus, dass macOS 11 Big Sur niedrig priorisierte Tasks selbst dann ausschließlich auf den langsamen Cores ausführt, wenn das System ansonsten keine Aufgaben zu erfüllen hat, sich also sozusagen im Leerlauf ("idle") befindet. Das führt zwar dazu, dass bestimmte Hintergrund-Tasks wie etwa Time-Machine-Backups unter Umständen sehr viel Zeit in Anspruch nehmen. Die High-Performance-Cores stehen dadurch jedoch unmittelbar zur Verfügung, wenn eine App ihre Leistung in Anspruch nehmen will. Das System kann also instantan reagieren. Darüber hinaus verschiebt macOS 11 Big Sur bereits laufende Tasks nach Icestorm, wenn eine höher priorisierte Aufgabe gestartet wird.


So verteilt macOS die Tasks bei einem Time-Machine-Backup.
Quelle: Howard Oakley

Systemprozesse von macOS halten sich zurück
Dieses Vorgehen führt laut Oakley dazu, dass sich M1-Macs in aller Regel deutlich schneller anfühlen als ihre Intel-Pendants. Der Nutzer hat so gut wie nie das Gefühl, das System reagiere verzögert oder zu langsam. Hinzu kommt, dass Apple den Beobachtungen des Entwicklers zufolge viele nicht zeitkritische Hintergrundaktivitäten von macOS auf den Effizienzkernen ablaufen lässt. Sie machen Apps dadurch keine Rechenzeit streitig, was naturgemäß der Ausführungsgeschwindigkeit zugute kommt. Auch amoklaufende Systemprozesse kommen Anwendungsprogrammen nicht ins Gehege, sondern verlangsamen ausschließlich andere Teile von macOS, was von den meisten Nutzern kaum wahrgenommen wird.


Die Aufgabenverteilung auf einem achtkernigen Intel Xeon
Quelle: Howard Oakley

App-Entwickler müssen mitspielen
Oakley beschreibt das von Apple auf M1-Macs eingesetzte QoS auf The Eclectic Light Company in zwei Beiträgen mit den Titeln Cores shouldn’t all be the same: M1 Macs do better und How M1 Macs feel faster than Intel models: it’s about QoS. Darin enthalten sind zahlreiche praktische Beispiele sowie etliche Screenshots, mit denen er das Verhalten von macOS 11 Big Sur dokumentiert. Seiner Ansicht nach sollte Apple bei künftigen Mx-Chips keinesfalls vom Big-Little-Prinzip abweichen, sondern neben mehr High-Performance-Cores auch weiterhin Effizienz-Kerne einsetzen. Damit die Geschwindigkeitsvorteile von Apples hauseigenen Chips im Zusammenspiel mit macOS von Dauer sind, müssen allerdings auch die App-Entwickler mitspielen. Wenn diese nämlich sämtliche Tasks ihrer Anwendungen stets mit höchster Priorität ausführen lassen wollen, funktioniert Apples Ansatz irgendwann nicht mehr so perfekt wie bisher.

Kommentare

DTP
DTP20.05.21 08:43
MTN:
Danke, dass ihr Howard Oakley und seinen Blog würdigt.

Howard schreibt ja nicht nur gute Artikel, die Hintergründe in MacOS beleuchten (wie zB wie der Bootmechanismus oder TimeMachine funktionieren und sich dessen Funktionsweise im Laufe der Zeit geändert haben), sondern bietet auch wertvolle Tools an. Und schreibt auch zu Kunst (auch wenn sein Kunstgeschmack nicht meiner ist). Und beantwortet auch Kommentare zu seinen Blogposts.

SilentKnight ist auf jeden Falls eins der Sicherheitstools, die jede:r hier regelmäßig laufen lassen sollte.

Hier ist eine kurze Liste aller seiner Tools, auch für M1: https://eclecticlight.co/updates-sierra-and-high-sierra/

+9
Frank Drebin
Frank Drebin20.05.21 08:53
Ja gut, aber dann fühlt es sich nicht nur schneller an, es ist schneller
+4
Paddy2590
Paddy259020.05.21 08:58
Mhm, aber das ließe sich doch auch mit anderen Prozessoren, bspw. von Intel, die nur gleiche Kerne haben, realisieren, oder? Dann laufen die Hintergrundprozesse und solche mit niedriger Priorität eben nur auf einem Teil der Kerne und der Rest steht auf für andere Aufgaben bereit. Oder lassen sich bei anderen Prozessoren nicht einzelne Prozesse einzelnen Kernen zuweisen?

Mir ist bewusst, dass ein solches Vorgehen weniger energieeffizienz wäre, als es das bei Apples M1 mit Icestorm ist. Aber zumindest müssten sich damit auch andere Macs oder PCs schneller anfühlen, oder?
+4
Paddy2590
Paddy259020.05.21 09:03
Frank Drebin
Ja gut, aber dann fühlt es sich nicht nur schneller an, es ist schneller

Das kann man so glaube ich nicht sagen. Bzw. ist die Frage, was man betrachtet. Die Prozesse, die der Nutzer aktiv wahrnimmt, dürften tatsächlich schneller sein. Die Prozesse mit niedriger Priorität und Hintergrundprozesse, bspw. Time Machine-Backups, brauchen aber länger und sind langsamer. Damit stimmt meiner Meinung nach die Aussage, dass sich die M1-Macs schneller anfühlen, weil eben die vom Nutzer wahrgenommenen Prozesse schneller sind, andere sind aber langsamer, also ist es jedenfalls insgesamt nicht schneller.
0
Frank Drebin
Frank Drebin20.05.21 09:09
Naja, also die TimeMachine-Tasks sind jetzt nicht die Dinge, die der Benutzer am Mac macht, alle Hintergrund-Tasks sind irrelevant, solange alles andere dadurch schneller wird.

Somit ist meine Aussage denke ich vom Inhalt korrekt. Der Mac fühlt sich nicht schneller an, sondern er ist schneller und zwar für den Benutzer. Rein Objektiv gesehen und wie das dann technisch umgesetzt wurde ist doch zweitrangig imho.

Und zu deiner Frage, genau das wird man wahrscheinlich mit den Intels nicht so einfach machen können, hierzu denke ich muss man schon die Prozessoren auch entsprechend designen.
+4
splash20.05.21 11:00
Also mein iMac M1 fühlt sich teilweise viel langsamer an als meine Intel Macs. Das liegt vermutlich am schnellen Benutzerwechsel. Nach jedem Wechsel dauert es mehrere Minuten, bis ich vernünftig damit arbeiten kann. Ich habe mal was von Problemen in diesem Zusammenhang gelesen, aber ich weiss jetzt nicht, ob die behoben sind. Entweder ist dem nicht so oder mein Mac hat andere Probleme...Auch entleert sich der Akku bisweilen sehr schnell.
-2
Dunkelbier20.05.21 11:09
iMac M1 & Akku?
+6
chessboard
chessboard20.05.21 11:10
@splash
Ähm, du sprichst wohl eher vom M1 Macbook Air oder Macbook Pro?

Bei einem iMac dürfte der Akku wohl "instant" leer sein, wenn du ihn vom Stromkabel trennst
+3
blackboxberlin20.05.21 11:11
DTP
MTN:
Danke, dass ihr Howard Oakley und seinen Blog würdigt.

Hier ist eine kurze Liste aller seiner Tools, auch für M1: https://eclecticlight.co/updates-sierra-and-high-sierra/

Ja, einer der Guten!

Hier gibt es auch eine gute Übersicht, welche Tools wofür gedacht sind:

+2
splash20.05.21 11:22
@chessboard @Dunkelbier
sorry, ihr habt natürlich recht, habe mich verschrieben. Ich habe ein MacBook Air M1.
+2
Dunkelbier20.05.21 15:25
ok. Also meins ist weder langsam noch ist der Akku schnell leer. Auch der Benutzwechsel geht Ratz-Fatz. Was sagt denn die Ereginisanzeige?
0
ruphi20.05.21 16:28
Paddy2590
Mhm, aber das ließe sich doch auch mit anderen Prozessoren, bspw. von Intel, die nur gleiche Kerne haben, realisieren, oder? Dann laufen die Hintergrundprozesse und solche mit niedriger Priorität eben nur auf einem Teil der Kerne und der Rest steht auf für andere Aufgaben bereit. Oder lassen sich bei anderen Prozessoren nicht einzelne Prozesse einzelnen Kernen zuweisen?

Mir ist bewusst, dass ein solches Vorgehen weniger energieeffizienz wäre, als es das bei Apples M1 mit Icestorm ist. Aber zumindest müssten sich damit auch andere Macs oder PCs schneller anfühlen, oder?
Das dachte ich mir auch. Lässt man die Energieeffizienz weg, handelt es sich doch "nur" um eine Scheduling-Sache auf Betriebssystem-Ebene..
Frank Drebin
Läuft diese Koordinierung zw. OS und CPU nicht unter dem Stichwort 'processor affinity‘, und sollte deshalb mit den jetzigen Intel-CPUs genauso möglich sein? (Ich hab keine Ahnung, aber viel Interesse )
0
ruphi20.05.21 16:32
Frank Drebin
Naja, also die TimeMachine-Tasks sind jetzt nicht die Dinge, die der Benutzer am Mac macht, alle Hintergrund-Tasks sind irrelevant, solange alles andere dadurch schneller wird.
Ich denke, das hängt immer davon ab, was der Nutzer eben tun will. Apples Ansatz nimmt hier einige Annahmen vor, die vlt. den durchschnittlichen use case optimieren.
Klar ist aber auch: Wer gerade mit dem Laptop auf dem Sprung ist und nur darauf wartet, sein TimeMachine-Drive ausstöpseln zu können, wird sich darüber nicht freuen.

Letztlich erfordert eine Bewertung von Geschwindigkeit also immer eine Definition der auszuführenden Aufgabe. Diese variiert von user zu user, und damit wären wir beim Grundproblem des Benchmarks.
0
cps20.05.21 16:44
Frank Drebin
Und zu deiner Frage, genau das wird man wahrscheinlich mit den Intels nicht so einfach machen können, hierzu denke ich muss man schon die Prozessoren auch entsprechend designen.

Intel arbeitet an der Umsetzung, CPUs gibt es schon, allerdings muss das auch die Software (OS und Apps) unterstützen. Bisherige Tests waren da noch nicht so überzeugend.
Apple ist da im Vorteil, weil Hard- und Software aus einer Hand kommt.
+1
pünktchen
pünktchen20.05.21 17:20
Paddy2590
Mhm, aber das ließe sich doch auch mit anderen Prozessoren, bspw. von Intel, die nur gleiche Kerne haben, realisieren, oder?

In den Kommentaren bei Arstechnica war eine interessante Überlegung warum das vielleicht keinen Sinn macht, es könnte an der unterschiedlichen Cache Architektur liegen. Efficiency & Performance Cores haben beim M1 getrennte L2 Caches während sich die Cores bei Intel einen grossen gemeinsamen L3 teilen:
+2
Paddy2590
Paddy259021.05.21 10:22
Danke für eure Antworten. Ich selbst habe zu wenig Ahnung von dem Thema, finde es aber sehr interessant und freue mich daher über Erklärungen und Ideen.
0

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.