Was ist die big.LITTLE-Architektur?
ARM ist derzeit die am weitesten verbreitete CPU-Architektur der Welt.
Es kann Ihren Computer nicht mit Strom versorgen, aber mit ziemlicher Sicherheit Ihr Smartphone oder Tablet. Darüber hinaus verwendet Apple jetzt die ARM-Architektur in seinen hauseigenen CPU-Designs.
Der Grund dafür ist sofort klar.
ARM-CPUs können eine erstaunliche Leistung aufweisen und gleichzeitig den Stromverbrauch niedrig halten. So niedrig, dass sie in dünne Smartphones mit passiver Kühlung passen. Ein großer Teil dieser Energieeffizienz wird dem big.LITTLE-Kern-Setup zugeschrieben, das von Apple, Qualcomm, MediaTek und anderen CPU-Herstellern verwendet wird.
Aber was genau ist big.LITTLE und warum ist es so wichtig?
Was ist die big.LITTLE-CPU-Architektur von ARM?
Die Funktionsweise der meisten modernen CPUs besteht darin, dass sie normalerweise mehrere Kerne haben, zwischen denen das System die Aufgaben aufteilt. Normalerweise verfügen diese Multi-Core-CPUs über identische Kerne, die in der Lage sind, die gleichen Befehle zu bewältigen und die gleichen Taktraten zu erreichen. Alle Aufgaben, ob groß oder klein, werden zwischen diesen Kernen bearbeitet und verteilt. Nicht so bei ARM big.LITTLE CPUs.
Während es ARM-CPUs mit „herkömmlichen“ Kern-Setups gibt, verfügen big.LITTLE-basierte CPU-Designs über zwei Kern-„Cluster“ mit unterschiedlich ausgelegten Kernen für unterschiedliche Aufgaben. In dieser Art von CPUs sehen wir oft "Hochleistungskerne", die für anspruchsvolle Aufgaben entwickelt wurden, und "energieeffiziente" Kerne, die konventionellere Aufgaben bewältigen. Diese Hochleistungskerne sind in der Regel hochleistungsfähig und energiehungrig und erreichen deutlich höhere Taktraten, während energieeffiziente Kerne schwächer sind, niedriger getaktet sind und deutlich weniger Strom verbrauchen.
Bei einem Smartphone umfassen diese "herkömmlichen Aufgaben" SMS, E-Mail, Anrufe, Audio und mehr, die den Großteil der alltäglichen Aufgaben ausmachen, die ein Smartphone erledigen muss. Diese sollen auf die energieeffizienten Kerne ausgelagert werden, während die größeren Hochleistungskerne für andere, anspruchsvollere Aufgaben wie mobiles Spielen und Surfen im Internet übrig bleiben. Das System verwendet globales Task-Scheduling oder heterogenes Multi-Processing (HMP), um die Arbeitslasten zwischen all den verschiedenen CPU-Kernen zu verteilen.
Der Vorteil ist zweifach. Da die alltäglichen Aufgaben von den kleineren Kernen übernommen werden, die von Natur aus weniger Strom verbrauchen, verbrauchen diese CPUs typischerweise deutlich weniger Strom. Sie haben auch eine bessere Leistung, da anspruchsvollere Aufgaben einen Cluster von CPU-Kernen für sich allein haben. Sie erhalten eine CPU, die sowohl leistungsfähiger als auch energieeffizienter ist.
Eine revolutionäre Idee mit einer steinigen Geschichte
Vor der Einführung von big.LITTLE verfügten alle Multi-Core-ARM-CPUs über eine Anordnung identischer Kerne, genau wie x86-CPUs. big.LITTLE wurde erstmals im Oktober 2011 eingeführt und zusammen mit zwei neuen Kerndesigns, dem Cortex-A7 und dem Cortex-A15, eingeführt. In diesem vorgeschlagenen System könnten beide Kerndesigns gepaart werden: Der Cortex-A15 würde als großer Kern fungieren, während der Cortex-A7 als kleiner Kern fungieren würde. Von da an wären kommende Kerndesigns von ARM Holdings alle mit big.LITTLE kompatibel, da die Siliziumhersteller es für richtig hielten.
Eine der ersten CPUs, die mit diesem Kerndesign auf den Markt kamen, war Samsungs Exynos 5 Octa 5410, der 2013 das Samsung Galaxy S4 antreibte. Er verfügte über vier Cortex-A7-Kerne mit 1,2 GHz und vier Cortex-A15-Kerne mit 1,6 GHz für a insgesamt 8 Kerne.
Die Art und Weise, wie der Scheduler für diese früheren big.LITTLE-CPUs funktionierte, war jedoch ziemlich ungeschickt. Diese früheren Scheduler verwendeten "Clustered Switching", um ganze Cluster auf einmal zu adressieren. Wenn die Belastung des gesamten Prozessors gering ist, werden die stromsparenden Kerne verwendet, aber wenn sie zunimmt, wird die gesamte Arbeitslast auf die großen Kerne übertragen. Es ist definitiv eine Möglichkeit, es zu tun, aber im Nachhinein war es ziemlich ineffizient.
Dann sahen wir den In-Kernel-Switcher. Hier werden große Kerne mit kleinen Kernen gepaart, und beide werden vom Scheduler als ein einziger "virtueller Kern" angesprochen. Je nachdem, ob ein virtueller Kern eine geringe oder eine hohe Last erhielt, wechselt er zwischen der Verwendung des kleinen Kerns und des großen Kerns.
Von da an landeten wir bei heterogenem Multi-Processing. Dabei kann jeder Kern einzeln angesprochen werden. Der Scheduler weiß, welche Kerne groß und welche klein sind und verteilt die Arbeitslasten von dort aus, wobei geringere Lasten auf die energieeffizienten Kerne und größere Lasten auf die Hochleistungskerne verteilt werden.
Wie hat big.LITTLE die CPU-Landschaft verändert?
ARM-Prozessoren hatten bereits einen guten Ruf, ein ausgewogenes Verhältnis zwischen Leistung und Energieeffizienz zu bieten. Bei diesen CPUs ist jedoch eine geringe Leistungsaufnahme unerlässlich. Schließlich werden diese Prozessoren in Smartphones verwendet, und Smartphones sind klein, haben ein schlankes Gehäuse und verfügen über keinerlei aktive Kühlung, sodass die thermischen Einschränkungen sehr gering sind und CPUs Strom verbrauchen müssen, um sie zu erfüllen.
big.LITTLE war jedoch riesig, weil es sowohl Leistung als auch Energieeffizienz gleichzeitig verbessern konnte. Heutzutage basieren die meisten, wenn nicht alle ARM-CPUs auf einem big.LITTLE-basierten Design, sogar Apple-Telefone. Nun wird Intel künftig ein oder zwei Seiten dieser Architektur auf seinen x86-Prozessoren übernehmen: Alder-Lake- Prozessoren werden das Konzept des heterogenen Computings in die PC-Landschaft einführen.
Die Vorteile sind einfach zu groß, um sie zu leugnen.
Was ist DynamIQ?
DynamIQ ist eine neue Kernarchitektur, die ARM im Mai 2017 angekündigt hat und eine Art Nachfolger von big.LITTLE ist. DynamIQ soll das, was big.LITTLE mit heterogenem Computing macht, noch einen Schritt weiter gehen und mehr Flexibilität und bessere Skalierung ermöglichen.
Während big.LITTLE auf nur zwei Cluster beschränkt war, erhöht DynamIQ die maximale Anzahl von Kernen pro Cluster auf 8, ermöglicht mehrere Kerndesigns in einem einzigen Cluster und ermöglicht bis zu 32 Cluster pro CPU. Darüber hinaus bietet DynamIQ eine präzisere Spannungsregelung pro Kern und bessere L2-Cache-Geschwindigkeiten. Kurz gesagt, es ist big.LITTLE ziemlich ähnlich und führt sein Grundkonzept weiter, außer dass es jetzt mehr Flexibilität bei mehreren Clustern und Kerndesigns ermöglicht.
Ein Beispiel für einen DynamIQ-Prozessor ist der Snapdragon 888, Qualcomms Flaggschiff-Chip für das Jahr 2021. Bei big.LITTLE-Prozessoren sieht man häufig Cluster aus großen und kleinen Kernen.
Im Snapdragon 888 gibt es jedoch einen "primären Kern", einen Cortex-X1-Kern mit einer Taktrate von 2,84 GHz, dann einen typischeren Hochleistungscluster (jetzt eine sekundäre Ebene), der drei Cortex-A78-Kerne mit einer Taktrate von 2,42 GHz umfasst . Die stromsparenden Kerne schließlich sind vier Cortex-A55-Kerne, die mit 1,8 GHz getaktet sind. Es ist ein Octa-Core-Setup, verwendet jedoch drei verschiedene Kerndesigns, die verschiedene Aufgaben bewältigen sollen.
Eine komplette Umwälzung der Branche
Man kann mit Sicherheit sagen, dass die Einführung von big.LITTLE und dem Konzept des heterogenen Computings das CPU-Spiel komplett umgedreht hat. ARM-CPUs kämpfen heutzutage mit den größten Prozessoren auf der x86-Seite des Teiches und halten gleichzeitig den Stromverbrauch und die Akkulaufzeit auf einem Minimum, und das alles dank big.LITTLE und seinem Nachfolger DynamIQ.
Wir sind sehr gespannt auf die Zukunft der ARM-Prozessoren.