Groot en klein
Een term die al een paar keer viel, is big.LITTLE, ARM’s technologie om krachtige CPU-cores te combineren met veel zuinigere varianten en daar dynamisch tussen te schakelen. Het idee achter big.LITTLE is simpel: wanneer je kijkt naar typische gebruiksscenario’s van smartphones en tablets, dan zijn die het gros van de tijd idle, of er is slechts zeer beperkt rekenkracht vereist. Op sommige momenten, bij het starten van een app of het doen van een complexe bewerking bijvoorbeeld, is er juist meer rekenkracht nodig. Het ontwerpen van een processor die zowel erg efficiënt is bij een zeer lage belasting als bij een zeer hoge belasting is nagenoeg onmogelijk. Vandaar het concept om twee soorten cores te combineren. De Samsung Exynos 5 Octa is de eerste big.LITTLE chip op de markt en bevat zoals geschreven een viertal A15 kernen en een viertal A7 kernen. Het extra chipoppervlak dat Samsung hiervoor moest reserveren is overigens beperkt: de grootte van vier A7’s valt in het niet bij die van vier A15’s.
De acht kernen in de Exynos 5 Octa 5410 werken in wat ARM noemt Cluster Migration modus. Dat betekent dat op ieder moment in tijd ofwel de vier A7’s ofwel de vier A15’s actief zijn. Cluster Migration is in feite de simpelste en daarmee nog minst effectieve methode van big.LITTLE. De technologie voorziet ook in twee andere varianten, al zijn er nog geen processors op de markt die deze beheersen. In de CPU of Core Migration modus is iedere kleine core gekoppeld aan een grote core. Bij een acht-core CPU kunnen alle vier de core-paren afzonderlijk van elkaar schakelen tussen groot en klein. In zo’n geval zouden dus drie A7’s en één A15 actief kunnen zijn. Ideaal voor multi-tasking wanneer taken met verschillende CPU-behoefte actief zijn.
De meest geraffineerde, maar daarmee ook vanuit software oogpunt meest complexe variant van big.LITTLE is wat men noemt de Global Task Scheduling (voorheen ook bekend als heterogeneous multiprocessing) modus, waarbij in feite alle verschillende soorten cores binnen de CPU op verzoek actief kunnen worden gemaakt, desnoods allemaal tegelijkertijd! Het OS bepaalt per taak naar welk type CPU deze wordt gestuurd. Dit maakt het bijvoorbeeld ook mogelijk om big.LITTLE CPU’s te maken met een ongelijk aantal cores per type, bijvoorbeeld twee A15’s gecombineerd met vier A7’s. Global Task Scheduling vereist wel serieus werk aan de kernel van een besturingssysteem. Samsungs een tijd geleden aangekondigde Exynos 5 Octa 5420 ondersteunt Global Task Scheduling. Deze nieuwe chip wordt op dit moment echter nog niet in apparaten toegepast.
In een big.LITTLE CPU zitten zowel kleine, zuinige cores als grote, krachtige cores. Afhankelijk van de applicatie worden de meest geschikte kernen ingeschakeld.
Onderzoek van ARM bij een dual-core Cortex-A9 CPU wijst uit dat zelfs bij games de processor zelden op maximale klokfrequentie werkt. In de praktijk zijn bij een big.LITTLE CPU dan ook vrijwel altijd de kleine, zuinige cores actief.
De drie manieren waarop een big.LITTLE CPU kan werken: Cluster Migration, CPU (ook wel: Core) Migration and Global Task Scheduling (voorheen: Heterogeneous Multiprocessing)..