ARM big.LITTLE

De la Viquipèdia, l'enciclopèdia lliure

big.LITTLE és una arquitectura de computadors heterogènia desenvolupada per ARM Holdings, aquesta arquitectura es compon de dos tipus de processadors els big els quals són els més potents però en conseqüència també consumeixen més energia, i els LITTLE, els quals disposen de menys potència de computació però a la vegada també consumeixen menys energia. Amb aquesta arquitectura s'aconsegueix un multiprocessador que s'ajusta millor a la necessitat dinàmica de computació que una que tan sols faci servir l'escalat dinàmic de freqüència.

Existeixen tres tipus[1] de maneres de distribuir els nuclis en un multiprocessador big.LITTLE, en funció de la implementació del planificador del nucli del sistema operatiu.

Commutació en clúster[modifica]

Aquesta és la implementació més senzilla de les tres, s'organitzen els processadors en dos clústers d'idèntica mida, un de big i un de LITTLE, i el planificador tan sols és capaç de canviar entre aquests dos tipus de clúster, el que no s'estigui fent servir estarà apagat, i per a fer la transferència de dades importants s'utilitza la cache L2. Aquest model està implementat en el Exynos5 Octa (5410)[2]

In-kernel switcher[modifica]

El In-kernel switcher, en el qual tenim s'emparella cada big amb un LITTLE, de manera que tindrem diverses parelles de processadors en un mateix SoC, aquests es veuen com un processador virtual, en cada moment tindrem només un encès, el big o el LITTLE, però cada processador virtual per la seva banda, amb el que la granuralitat del estalvi energètic és molt més fina, ja que com més nuclis virtuals tinguem més precís podrà ser el consum energètic necessari per a nosaltres.

Aquest tipus de big.LITTLE es troba implementat en el kernel 3.11 de Linux.

Com a derivació d'aquest tipus de big.LITTLE va néixer l'anomenat companion core, que és un processador extra que s'incorpora en algun SoC per a ser usat quan el nucli del sistema operatiu es troba en estat d'espera o de poquísim consum, aquesta tecnologia l'incorporen algunes tecnologies d'Nvidia com ara el Tegra 3, es tracta de diversos processadors big i un sol LITTLE dissenyat pensant en l'estalvi energètic.

Heterogeneous multi-processing[modifica]

L'última modalitat de big.LITTLE de la que ARM disposa s'anomena Heterogeneous Multi Processing (HMP),altrament anomenat Global Task Scheduling (GTS). En aquesta modalitat es disposa de diversos processadors big i de diversos LITTLE, no necessàriament la mateixa quantitat dels dos, el nucli del sistema operatiu pot col·locar processos en qualsevol dels processadors, amb el que es pot aconseguir un millor rendiment al poder usar tots els nuclis a la vegada i al mateix temps aconseguir que tan sols estiguin funcionant els nuclis els quals realment són necessaris per a cada moment, amb el qual podem aconseguir gastar exactament l'energia que ens és necessària, o col·locar els processos menys prioritaris en els nuclis menys potents.

Referències[modifica]