La rumorología de las últimas semanas respecto al futuro de los procesadores de Intel es clara: el Hyper-Threading tiene los días contados. Pues bien, por fin tenemos la patente de la Renting Unit de Intel y con ello podemos saber cómo funciona esta pieza que será clave a partir de las CPU Arrow Lake que se verán en la segunda mitad de 2024.
Es un desafío sacarle provecho a una CPU con núcleos de procesador de rendimiento dispar, en especial en PC. No olvidemos que, tradicionalmente, es el núcleo del sistema operativo el encargado de distribuir los diferentes hilos de ejecución de la CPU, pero con los P-Cores y E-Cores, la cosa se complica y mucho. ¿La solución más clara? Dejar que sea el procesador, a través de una unidad especial, el encargado de distribuir los diferentes procesos a los diferentes núcleos disponibles. No obstante, esto es algo del futuro, y por el momento es el sistema operativo el encargado de realizar dicha distribución del trabajo. Pues bien, si te interesa saber cómo las futuras CPU de Intel solucionarán este problema, entonces sigue leyendo.
Una patente nos describe el futuro de las CPU de Intel
La fuente para este artículo es una patente de Intel titulada: Métodos y aparatos para planificar instrucciones en paralelo utilizando núcleos híbridos. Por lo que no es ninguna especulación de nuestra parte o un rumor y en ella viene explicado el motivo por el cual el Hyper-Threading desaparecerá en futuros procesadores de Intel, al mismo tiempo que se nos explica lo que son las llamadas Renting Unit que tanto se están rumoreando últimamente.
Y es que la suma de los E-Cores a las CPU de Intel plantea un problema de rendimiento, el cual es fácil de explicar: el hecho de asignar tareas en segundo plano o de menos carga computacional a los E-Cores supone reducir el rendimiento de los P-Cores al dejarles buena parte del tiempo sin hacer nada. Por lo que al final se hace necesario tirar del Hyper-Threading, dejando patas arriba la idea de los núcleos heterogéneos.
Pues bien, en la patente aparece el concepto de Renting Unit, del cual os hemos hecho referencia en varias noticias reciente sobre los futuros procesadores Arrow Lake de Intel, pertenecientes a los Intel Core 15. Un concepto que se ha relacionado con el final del Hyper-Threading, pero que hasta el momento no hemos podido acotar y describir de forma precisa.
¿Qué es y cómo funciona la Renting Unit según su patente?
La pieza encargada de hacer todo el trabajo es llamada en la patente como circuito de procesamiento de instrucciones (104), al que para acortar llamaremos Renting Unit a partir de ahora. Su trabajo de forma ordenada es el siguiente:
- A través de la captación de instrucciones del procesador, la Renting Units recibe los diferentes procesos que irán a los distintos hilos de ejecución.
- El siguiente paso es teniendo en cuenta la configuración y recursos disponibles, la Renting Unit dividirá cada uno de los procesos en diferentes particiones. Lo hará según la complejidad del código y el tiempo de ejecución de cada una y la configuración de la propia CPU, así como el orden de las particiones.
- La idea no es otra que programar las particiones de un mismo hilo en diferentes núcleos para aumentar la eficiencia o velocidad de la ejecución de la carga de trabajo.
Con esta nueva pieza en las futuras CPU Intel Core, lo que se busca es aumentar el IPC sin tener que subir de forma exagera el número de núcleos o la complejidad de estos, al mismo tiempo que se eliminan los problemas de consumo del Hyper-Threading.
¿Por qué será el final del Hyper-Threading?
Para explicar mejor el concepto, vamos a usar el ejemplo de la patente de la Renting Unit. Donde tenemos dos tareas diferentes, las cuales antes de la reorganización por la Renting Unit, cada una de ellas se ejecuta en un hilo de ejecución distinto.
- La primera tarea se ejecuta en el P-Core y debido a su mayor rendimiento se termina antes del 100% del tiempo disponible, creando una burbuja en la que dicho núcleo no hace nada.
- Mientras que el E-Core con un rendimiento mucho menor termina por tardar más del tiempo asignado.
La idea no es otra que descomponer en subprocesos cada uno de los hilos de ejecución y distribuirlos para aprovechar el 100% del tiempo de cada uno del P-Core sin que haya por el medio la necesidad de usar Hyper-Threading. Es decir, la Renting Unit está pasando parte del trabajo del E-Core al P-Core para que el segundo no se encuentre parado una parte del tiempo. Por lo que se consigue aprovechar su capacidad de trabajo sin tener que depender del Hyper-Threading para ello, por lo que ya no será necesaria su implementación.
Al mismo tiempo, esta colaboración se puede dar entre diferentes E-Cores e incluso P-Cores y no solo en combinaciones mixtas. El concepto es que, si un núcleo no llega, pueda aprovechar los recursos disponibles de otros para acelerar la ejecución de los programas, al mismo tiempo que no se dejan recursos del procesador sin usar. Ya para terminar, hemos de aclarar que no hemos explicado todos los detalles de la patente de la Renting Unit, solo los que son clave para entender el concepto y el fin del Hyper-Threading.