Los núcleos big.LITTLE están en el punto de mira, pues tras años existiendo mayoritariamente en teléfonos móviles estamos empezando a ver las primeras implementaciones en PC y Mac por parte de Intel y Apple. ¿Qué tienen de especial este tipo de cores? ¿Por qué denominamos “híbrida” a una arquitectura así?
Vamos a dar un repaso por las ventajas e inconvenientes que implica su uso, además de cuáles son los procesadores y SoC actuales y futuros que incorporan este tipo de núcleos. ¡Comenzamos!
Índice de contenidos
El concepto de big.LITTLE se refiere en realidad a la computación heterogénea, siendo esta la denominación comercial que le da la compañía ARM. En todo caso, a día de hoy es la forma más común de llamar a este concepto, básicamente porque en ARM big.LITTLE se concentra casi todo su uso.
Dicho esto, las arquitecturas de CPU basadas en computación heterogénea son aquellas que combinan más de un tipo de núcleos de procesador. Es decir, que en vez de añadir núcleos a la CPU que son exactamente iguales, se añaden también núcleos de otros tipos para mejorar el rendimiento y/o la eficiencia energética. Realmente, este concepto engloba la adición de cualquier tipo de núcleo, como podría ser un coprocesador adicional que se dedique únicamente a la realización de tareas
Uno de los grandes problemas que enfrentan los procesadores en lo relativo a la eficiencia energética es el hecho de que escalar un procesador para el máximo rendimiento provoca que su consumo en cargas bajas aumente notablemente. Y es que una CPU optimizada para rendir al máximo necesitará más transistores, más estructuras de control y una complejidad aumentada que, sí o sí, subirá los niveles de consumo. Por ejemplo, los transistores siempre perderán una cantidad de energía aunque haya poco uso del procesador, y aumentar el número de transistores implica necesariamente que suba este consumo.
Puede que este no sea un problema demasiado relevante en procesadores de escritorio, donde a la gente apenas le importa que a cargas bajas la CPU consuma 20W que 50W. Pero en dispositivos móviles y ordenadores portátiles, donde se depende en gran medida del consumo para asegurar una buena duración de la batería, esto se vuelve algo crítico: necesitamos que las CPU sean lo más eficientes posible.
Entonces, ¿vamos a renunciar al buen rendimiento en portátiles y en móviles? Evidentemente no, y ahí es donde entra en juego el concepto de big y LITTLE: si mantenemos esos núcleos pensados para el rendimiento con otros que son muchísimo más eficientes pero menos veloces, podemos repartir las tareas del sistema de una forma mucho más inteligente energéticamente hablando. Además, podemos apagar completamente esos núcleos rápidos y evitar el mencionado desperdicio energético, en aquellos momentos en los que no estemos demandando mucha energía al dispositivo.
De hecho, en un móvil se vuelve todavía más crucial, teniendo en cuenta que estará en un reposo “activo” en el que la CPU tendrá que seguir funcionando para mantener las notificaciones y acciones en segundo plano, y aquí se vuelve todavía más importante la cuestión de apagar esos núcleos tan vitaminados en cuanto a transistores, componentes, memorias caché, etc.
Como decimos, el uso principal de big.LITTLE en la actualidad está en los procesadores basados en arquitecturas ARM, que son básicamente todos los que podemos encontrar en teléfonos móviles actualmente.
Por poner ejemplos, el Apple A14 Bionic de los últimos iPhone usa cuatro núcleos eficientes (Icestorm) y dos de alto rendimiento (Firestorm), el MediaTek Helio P95 tiene 2 Arm Cortex A75 de alto rendimiento y 6 Cortex A55 eficientes, etc.
Si bien es cierto que ya hay portátiles, convertibles y otros dispositivos con procesadores Snapdragon basados en ARM, los grandes cambios llegaron de la mano de Apple, que sacó al mercado su propio SoC M1 basado en ARM, usándolo en sus Mac y abriendo un gran debate sobre la idoneidad de ARM y el big.LITTLE en ordenadores.
Desde el primer momento, estos SoC han prometido mucho por el rendimiento obtenido, algo que en parte se explica por el enfoque en el rendimiento con el que Apple ha implementado su arquitectura basada en Arm, pero sin duda big.LITTLE influye en los increíbles niveles de eficiencia energética obtenidos, marcando un posible paso a seguir en arquitecturas x86.
El gran problema de usar núcleos big y LITTLE está en la “rigidez” que puede suponer el uso de esta arquitectura, pues al fin y al cabo lo que tendremos dentro del procesador son dos clústers de núcleos separados con sus propias cachés, donde una interconexión con coherencia de caché es lo que consigue comunicar ambos grupos.
Desde 2017, Arm DinamIQ unifica todo el diseño en un clúster, eliminando las barreras preexistentes que implicaban, por ejemplo, que todos los núcleos de un clúster tuviesen que ser iguales y llevar la misma frecuencia. Ahora, cada núcleo puede ser distinto y funcionar a la frecuencia que sea, además de contar con una caché L2 individual y una L3 compartida. Por tanto, la nueva generación de big.LITTLE va más allá del concepto original permitiendo muchas más combinaciones de núcleos de distinto tipo.
Podríamos hablar de combinaciones como las siguientes (big + LITTLE o big + intermedio + LITTLE): 2+4 para CPU de gama media, 0+8 para CPU básicas, 2+6 para gamas altas, o 4+4 para el máximo rendimiento. El Snapdragon 888 que mostramos antes seguiría una configuración 1+3+4.
Como decimos, la llegada de los M1 de Apple avivó el interés de los dos grandes fabricantes de CPUs por traer el big.LITLE a los ordenadores personales. Vamos a ver qué es lo que tienen preparado Intel y AMD a este respecto.
Además de esta CPU, también presentaron su i3-L13G4, y a día de hoy apenas los podemos encontrar en otros procesadores y ordenadores, así que desde luego no son del mayor interés.
Se espera que a finales de 2021 se lancen estos procesadores, pero Intel tiene un historial bastante amplio de retrasos en sus lanzamientos, así que es de esperar que lleguen en 2022. En todo caso, como decimos supondrán un cambio impresionante en cómo entendemos los procesadores de nuestros PCs.
Antes del lanzamiento de la exitosa microarquitectura Zen, uno de los planes de AMD era precisamente llevar a los PC algunas CPU con núcleos ARM. Estas se llamarían K6 y desembarcarían entre 2014 y 2016. Está claro que al final a la compañía no le hizo falta hacerlo, pero no han abandonado el interés por lanzar algo así, al menos según algunas de las últimas filtraciones disponibles.
¿Llegará al mercado o se quedará en una idea de investigación frustrada? Es algo que sabremos en los próximos años.
El SO pensará que los núcleos de la CPU son iguales si el planificador no se adapta a ella.
No deberíamos preocuparnos en exceso por esto más allá del rendimiento que pueda tener la CPU en los primeros meses tras su lanzamiento. Y es que es algo que ya ocurrió sin necesidad de hablar de big.LITTLE. Por ejemplo, cuando salieron los primeros procesadores Ryzen, el planificador de Windows no sabía que había núcleos en distintos CCX, y sin darse cuenta podía asignar tareas a núcleos entre los cuales había una gran latencia. Esto se solucionó en las sucesivas actualizaciones del sistema.
Cuando se diseña un procesador, maximizar el rendimiento no sale gratis energéticamente. El propio hecho de que los núcleos tengan más transistores provoca un aumento de su consumo estático, así que incluso cuando no estén haciendo casi nada consumirán más. Esto es un problema cuando desarrollamos CPU en las que necesitamos rendimiento pero a la vez un buen consumo, como por ejemplo las que integran los móviles y portátiles.
¿Cuál es la solución? Sin duda el big.LITTLE. Esta es una implementación de la computación heterogénea que consiste en dividir los núcleos de una CPU en dos categorías: unos más complejos y potentes, y otros más sencillos y de peor desempeño, pero con una eficiencia energética mucho mayor. Cuando esto se combina con un buen reparto de las tareas y el apagado de los núcleos potentes cuando es necesario, se consigue reducir drásticamente el consumo. Así tenemos móviles que duran horas y horas, incluso si cuando están en standby realizan muchas tareas en segundo plano.
Te recomendamos la lectura de nuestros artículos:
Las CPU actuales con big.LITTLE son aquellas que usan arquitecturas Arm, como son las de cualquier móvil con SoC Apple, Qualcomm, Samsung, Mediatek, Huawei… Incluso podemos encontrarlas en ordenadores que usen CPU de estos fabricantes. Pero, ¿qué hay de Intel y AMD?
Al momento de escribir este artículo, se sabe que Intel está preparando sus propias CPU big.LITTLE x86 para la 12ª generación de procesadores Core, y verán la luz en 2021 o 2022. Incluso AMD está tomando posiciones con varias patentes relacionadas con la computación híbrida.
Esperamos que este artículo te haya resultado de utilidad para aclarar uno de los conceptos más interesantes de la informática y el hardware. ¿Se convertirá el big.LITTLE en la norma también en PC?
Hoy tenemos mucha información filtrada sobre la serie RTX 50 y su buque insignia, la…
SK Hynix anuncia la producción de sus memorias flash NAND más avanzadas hasta ahora, que…
Drift DRAIR200 es la silla ergonómica que estabas esperando si tu presupuesto es ajustado, pero…