Una breve historia de la CPU de escritorio de varios núcleos

0
Es difícil enfatizar demasiado lo lejos que han llegado las computadoras y cómo han transformado casi todos los aspectos de nuestras vidas. Desde dispositivos rudimentarios como tostadoras hasta dispositivos de vanguardia como naves espaciales, será difícil no encontrar estos dispositivos haciendo uso de alguna forma de capacidad informática.

En el corazón de cada uno de estos dispositivos hay alguna forma de CPU, responsable de ejecutar las instrucciones del programa, así como de coordinar todas las demás partes que hacen que la computadora funcione. Para obtener una explicación detallada de lo que implica el diseño de la CPU y cómo funciona un procesador internamente, consulte esta increíble serie aquí en TechSpot. Sin embargo, para este artículo, la atención se centra en un solo aspecto del diseño de la CPU: la arquitectura de múltiples núcleos y cómo está impulsando el rendimiento de las CPU modernas.


A menos que esté usando una computadora de hace dos décadas, es probable que tenga una CPU de múltiples núcleos en su sistema y esto no se limita a los sistemas de escritorio y de nivel de servidor de tamaño completo, sino también a los dispositivos móviles y de bajo consumo. . Para citar un solo ejemplo convencional, el Apple Watch Series 7 promociona una CPU de doble núcleo. Teniendo en cuenta que este es un dispositivo pequeño que se envuelve alrededor de su muñeca, muestra cuán importantes innovaciones de diseño ayudan a mejorar el rendimiento de las computadoras.

En el lado del escritorio, echar un vistazo a las recientes encuestas de hardware de Steam puede decirnos cuánto dominan las CPU multinúcleo en el mercado de las PC. Más del 70% de los usuarios de Steam tienen una CPU con 4 o más núcleos. Pero antes de profundizar más en el enfoque de este artículo, debería ser apropiado definir alguna terminología y, aunque estamos limitando el alcance a las CPU de escritorio, la mayoría de las cosas que discutimos se aplican igualmente a las CPU móviles y de servidor en diferentes capacidades. 


En primer lugar, definamos qué es un "núcleo". Un núcleo es un microprocesador totalmente autónomo capaz de ejecutar un programa de computadora. El núcleo generalmente consta de aritmética, lógica, unidad de control, así como cachés y buses de datos, que le permiten ejecutar instrucciones de programa de forma independiente.

El término multinúcleo es simplemente una CPU que combina más de un núcleo en un paquete de procesador y funciona como una sola unidad. Esta configuración permite que los núcleos individuales compartan algunos recursos comunes, como cachés, y esto ayuda a acelerar la ejecución del programa. Idealmente, esperaría que la cantidad de núcleos que tiene una CPU se amplíe linealmente con el rendimiento, pero este no suele ser el caso y algo que discutiremos más adelante en este artículo.


Otro aspecto del diseño de la CPU que causa un poco de confusión a muchas personas es la distinción entre un núcleo físico y uno lógico. Un núcleo físico se refiere a la unidad física de hardware que se actualiza mediante los transistores y los circuitos que componen el núcleo. Por otro lado, un núcleo lógico se refiere a la capacidad de ejecución de subprocesos independiente del núcleo. Este comportamiento es posible gracias a una serie de factores que van más allá del núcleo de la CPU y dependen del sistema operativo para programar estos subprocesos de proceso. Otro factor importante es que el programa que se está ejecutando debe desarrollarse de una manera que se preste a múltiples subprocesos, y esto a veces puede ser un desafío debido al hecho de que las instrucciones que componen un solo programa difícilmente son independientes.

Además, el núcleo lógico representa un mapeo de los recursos virtuales a los recursos del núcleo físico y, por lo tanto, en el caso de que un subproceso esté utilizando un recurso físico, otros subprocesos que requieren el mismo recurso deben detenerse, lo que afecta el rendimiento. Lo que esto significa es que un solo núcleo físico puede diseñarse de una manera que le permita ejecutar más de un subproceso al mismo tiempo, donde el número de núcleos lógicos en este caso representa el número de subprocesos que puede ejecutar simultáneamente.

Casi todos los diseños de CPU de escritorio de Intel y AMD están limitados a subprocesos múltiples simultáneos de 2 vías (SMT), mientras que algunas CPU de IBM ofrecen SMT de hasta 8 vías, pero estos se ven con más frecuencia en sistemas de estaciones de trabajo y servidores. La sinergia entre la CPU, el sistema operativo y el programa de aplicación del usuario proporciona una visión interesante de cómo el desarrollo de estos componentes independientes se influyen entre sí, pero para no desviarnos, dejaremos esto para un artículo futuro.

Antes de las CPU multinúcleo

Echar un breve vistazo a la era anterior a los núcleos múltiples nos permitirá desarrollar una apreciación de lo lejos que hemos llegado . Una CPU de un solo núcleo, como su nombre lo indica, generalmente se refiere a CPU con un solo núcleo físico. La primera CPU disponible comercialmente fue la Intel 4004, que fue una maravilla técnica en el momento de su lanzamiento en 1971

Esta CPU de 4 bits y 750 kHz revolucionó no solo el diseño de microprocesadores, sino toda la industria de circuitos integrados. Por esa misma época, se desarrollaron otros procesadores notables como el Texas Instruments TMS-0100 para competir en mercados similares que consistían en calculadoras y sistemas de control. Desde entonces, las mejoras en el rendimiento del procesador se debieron principalmente al aumento de la frecuencia del reloj y la expansión del ancho del bus de datos / direcciones. Esto es evidente en diseños como el Intel 8086, que era un procesador de un solo núcleo con una frecuencia de reloj máxima de 10MHz y un ancho de datos de 16 bits y un ancho de dirección de 20 bits lanzado en 1979.


Pasar del Intel 4004 al 8086 representó un aumento de 10 veces en el recuento de transistores, que se mantuvo constante para las generaciones posteriores a medida que aumentaron las especificaciones. Además de los aumentos típicos de frecuencia y ancho de datos, otras innovaciones que ayudaron a mejorar el rendimiento de la CPU incluyeron unidades de punto flotante dedicadas, multiplicadores, así como mejoras y extensiones en la arquitectura de conjuntos de instrucciones generales (ISA).

La investigación e inversión continuas llevaron al primer diseño de CPU en canalización en Intel i386 (80386) que le permitió ejecutar múltiples instrucciones en paralelo y esto se logró separando el flujo de ejecución de instrucciones en distintas etapas y, por lo tanto, como una instrucción se estaba ejecutando en en una etapa, se podrían ejecutar otras instrucciones en las otras etapas

También se introdujo la arquitectura superescalar, que puede considerarse la precursora del diseño de múltiples núcleos. Las implementaciones superescalares duplican algunas unidades de ejecución de instrucciones que permiten que la CPU ejecute múltiples instrucciones al mismo tiempo dado que no hubo dependencias en las instrucciones que se están ejecutando. Las primeras CPU comerciales en implementar esta tecnología incluyeron Intel i960CA, AMD 29000 series y Motorola MC88100.

Uno de los principales factores que contribuyeron al rápido aumento del rendimiento de la CPU en cada generación fue la tecnología de transistores, que permitió reducir el tamaño del transistor. Esto ayudó a disminuir significativamente los voltajes operativos de estos transistores y permitió que las CPU se acumularan en conteos masivos de transistores, redujo el área del chip, mientras aumentaba las memorias caché y otros aceleradores dedicados.


En 1999, AMD lanzó la CPU Athlon , ahora clásica y favorita de los fanáticos , que alcanzó la alucinante frecuencia de reloj de 1GHz meses después, junto con todas las tecnologías de las que hemos hablado hasta ahora. El chip ofreció un rendimiento notable. Mejor aún, los diseñadores de CPU continuaron optimizando e innovando en nuevas funciones como la predicción de ramas y el multiproceso.

La culminación de estos esfuerzos dio como resultado lo que se considera una de las mejores CPU de escritorio de un solo núcleo de su tiempo (y el techo de lo que se podría lograr en términos de velocidades de reloj), el Intel Pentium 4 que funciona hasta 3.8GHz y admite 2 subprocesos. . Mirando hacia atrás en esa época, la mayoría de nosotros esperábamos que las frecuencias de reloj siguieran aumentando y esperábamos CPU que pudieran funcionar a 10 GHz y más, pero uno podría excusar nuestra ignorancia ya que el usuario promedio de PC no estaba tan informado sobre la tecnología como lo es hoy.

El aumento de las frecuencias de reloj y la reducción del tamaño de los transistores dieron como resultado diseños más rápidos, pero esto tuvo el costo de un mayor consumo de energía debido a la relación proporcional entre la frecuencia y la potencia. Este aumento de potencia da como resultado un aumento de la corriente de fuga que no parece un gran problema cuando se tiene un chip con 25.000 transistores, pero con los chips modernos que tienen miles de millones de transistores, plantea un gran problema.

Un aumento significativo de la temperatura puede hacer que las virutas se rompan, ya que el calor no se puede disipar de manera eficaz. Esta limitación en los aumentos de frecuencia de reloj significó que los diseñadores tuvieron que repensar el diseño de la CPU si se quería lograr algún progreso significativo en la continuación de la tendencia de mejorar el rendimiento de la CPU.

Ingrese a la era de múltiples núcleos

Si comparamos los procesadores de un solo núcleo con múltiples núcleos lógicos a un solo humano con tantos brazos como núcleos lógicos, entonces los procesadores de múltiples núcleos serán como un solo humano con múltiples cerebros y el número correspondiente de brazos también. Técnicamente, tener múltiples cerebros significa que su capacidad de pensar podría aumentar drásticamente. Pero antes de que nuestras mentes se alejen demasiado pensando en el personaje que acabamos de visualizar, demos un paso atrás y veamos otro diseño de computadora que precedió al diseño de múltiples núcleos y ese es el sistema multiprocesador.


Estos son sistemas que tienen más de una CPU física y un grupo de memoria primaria compartida y periféricos en una sola placa base. Como la mayoría de las innovaciones de sistemas, estos diseños se orientaron principalmente a cargas de trabajo y aplicaciones con fines especiales que se caracterizan por lo que vemos en supercomputadoras y servidores. El concepto nunca despegó en el frente de las computadoras de escritorio debido a lo mal que escalaba su rendimiento para la mayoría de las aplicaciones de consumo típicas. El hecho de que las CPU tuvieran que comunicarse a través de buses externos y RAM significaba que tenían que lidiar con latencias significativas. La RAM es “rápida” pero en comparación con los registros y cachés que residen en el núcleo de la CPU, la RAM es bastante lenta. También,

Por el contrario, debido a que los núcleos de un diseño de CPU de múltiples núcleos están mucho más cerca y construidos en un solo paquete, tienen buses más rápidos para comunicarse. Además, estos núcleos tienen cachés compartidos que están separados de sus cachés individuales y esto ayuda a mejorar la comunicación entre núcleos al disminuir drásticamente la latencia. Además, el nivel de coherencia y cooperación central significó que el rendimiento escalado mejor en comparación con los sistemas multiprocesador y los programas de escritorio podrían aprovechar mejor esto. En 2001, vimos el primer verdadero procesador multinúcleo lanzado por IBM bajo su arquitectura Power4 y, como se esperaba, estaba orientado a aplicaciones de estaciones de trabajo y servidores. En 2005, sin embargo,

A medida que la carrera de los GHz se desaceleraba, los diseñadores tenían que centrarse en otras innovaciones para mejorar el rendimiento de las CPU y esto se debió principalmente a una serie de optimizaciones de diseño y mejoras generales de la arquitectura. Uno de los aspectos clave fue el diseño de múltiples núcleos que intentó aumentar los recuentos de núcleos para cada generación. Un momento decisivo para los diseños de múltiples núcleos fue el lanzamiento de la serie Core 2 de Intel, que comenzó como CPU de doble núcleo y subió a cuatro núcleos en las generaciones siguientes. Del mismo modo, AMD siguió con el Athlon 64 X2, que era un diseño de doble núcleo, y más tarde la serie Phenom, que incluía diseños de tres y cuatro núcleos.


En estos días, ambas empresas distribuyen series de CPU multinúcleo. La serie Intel 11th-gen Core alcanzó un máximo de 10 núcleos / 20 subprocesos, mientras que la serie más nueva de 12th-gen llega hasta 24 subprocesos con un diseño híbrido que incluye 8 núcleos de rendimiento que admiten múltiples subprocesos, más 8 núcleos eficientes que no lo hagas. Mientras tanto, AMD tiene su potencia Zen 3 con la friolera de 16 núcleos y 32 hilos. Y se espera que esos recuentos de núcleos aumenten y también se mezclen con los enfoques de big.LITTLE, como acaba de hacer la familia Core de 12a generación.

Además de los recuentos de núcleos, ambas empresas han aumentado los tamaños de caché, los niveles de caché y han agregado nuevas extensiones ISA y optimizaciones de arquitectura. Esta lucha por el dominio total del escritorio ha resultado en un par de aciertos y errores para ambas empresas.

Hasta este punto, hemos ignorado el espacio de la CPU móvil, pero como todas las innovaciones que se filtran de un espacio a otro, los avances en el sector móvil que se enfoca en la eficiencia y el rendimiento por vatio, ha llevado a algunos diseños y arquitecturas de CPU muy eficientes.


Como lo demuestra completamente el chip Apple M1 , las CPU bien diseñadas pueden tener perfiles de consumo de energía eficientes y un rendimiento excelente, y con la introducción del soporte nativo de Arm en Windows 11, se garantiza que Qualcomm y Samsung harán un esfuerzo para eliminar una parte del mercado de las computadoras portátiles.

La adopción de estas estrategias de diseño eficientes del sector móvil y de bajo consumo de energía no ha ocurrido de la noche a la mañana, sino que ha sido el resultado del esfuerzo continuo de fabricantes de CPU como Intel, Apple, Qualcomm y AMD para adaptar sus chips para que funcionen en dispositivos portátiles.

¿Qué sigue para la CPU de escritorio?

Al igual que la arquitectura de un solo núcleo se ha convertido en uno de los libros de historia, lo mismo podría ser el destino final de la arquitectura de múltiples núcleos de hoy. Mientras tanto, tanto Intel como AMD parecen estar adoptando enfoques diferentes para equilibrar el rendimiento y la eficiencia energética.

Las últimas CPU de escritorio de Intel (también conocidas como Alder Lake ) implementan una arquitectura única que combina núcleos de alto rendimiento con núcleos de alta eficiencia en una configuración que parece sacada directamente del mercado de CPU móviles, con el modelo más alto con 8 núcleos de alto rendimiento. / 16 hilos además de una pieza de 8 núcleos de bajo consumo que hace un total de 24 núcleos.

AMD, por otro lado, parece estar presionando por más núcleos por CPU, y si hay que creer en los rumores, la compañía seguramente lanzará una enorme CPU de escritorio de 32 núcleos en su arquitectura Zen 4 de próxima generación , lo que parece bastante En este punto, es creíble ver cómo AMD construye literalmente sus CPU agrupando múltiples complejos de núcleos, cada uno con varios núcleos en el mismo dado.


Sin embargo, fuera de los rumores, AMD ha confirmado la introducción de lo que llama caché 3D-V , que le permite apilar un caché grande en la parte superior del núcleo del procesador y esto tiene el potencial de disminuir la latencia y aumentar el rendimiento drásticamente. Esta implementación representa una nueva forma de empaquetado de chips y es un área de investigación que tiene mucho potencial para el futuro.

Sin embargo, en el lado negativo, la tecnología de transistores, tal como la conocemos, se está acercando a su límite a medida que continuamos viendo que los tamaños se reducen. Actualmente, 5nm parece ser la vanguardia y, aunque TSMC y Samsung han anunciado pruebas en 3nm , parece que nos estamos acercando al límite de 1nm muy rápido. En cuanto a lo que sigue después de eso, tendremos que esperar y ver.

Por ahora, se está haciendo un gran esfuerzo para investigar los reemplazos adecuados para el silicio, como los nanotubos de carbono, que son más pequeños que el silicio y pueden ayudar a mantener la contracción de tamaño durante un tiempo más. Otra área de investigación tiene que ver con cómo los transistores están estructurados y empaquetados en troqueles, como el apilamiento V-cache de AMD y el empaquetado Foveros-3D de Intel, que pueden contribuir en gran medida a mejorar la integración de IC y aumentar el rendimiento.


Otra área que promete revolucionar la informática son los procesadores fotónicos . A diferencia de la tecnología tradicional de transistores semiconductores que se basa en la electrónica, los procesadores fotónicos utilizan luz o fotones en lugar de electrones, y dadas las propiedades de la luz con su ventaja de impedancia significativamente menor en comparación con los electrones que tienen que viajar a través del cableado metálico, esto tiene el potencial de ser dramáticamente mejorar la velocidad del procesador. Siendo realistas, podemos estar a décadas de realizar computadoras ópticas completas, pero en los próximos años podríamos ver computadoras híbridas que combinen CPU fotónicas con placas base electrónicas tradicionales y periféricos para lograr los aumentos de rendimiento que deseamos.

Lightmatter, LightElligence y Optalysys son algunas de las empresas que están trabajando en sistemas de computación óptica de una forma u otra, y seguramente hay muchas otras en segundo plano trabajando para llevar esta tecnología a la corriente principal.

Otro paradigma informático popular y, sin embargo, dramáticamente diferente es el de las computadoras cuánticas , que aún está en su infancia, pero la cantidad de investigación y progreso que se está realizando allí es tremendo.

Los primeros procesadores 1-Qubit se anunciaron no hace mucho tiempo y, sin embargo, Google anunció un procesador 54-Qubit en 2019 y afirmó haber logrado la supremacía cuántica, que es una forma elegante de decir que su procesador puede hacer algo que una CPU tradicional no puede hacer. en una cantidad de tiempo realista.

Para no quedarse atrás, un equipo de diseñadores chinos presentó su supercomputadora 66-Qubit en 2021 y la carrera sigue calentándose con compañías como IBM anunciando su chip de computación cuántica 127-Qubit y Microsoft anunciando sus propios esfuerzos para desarrollar computadoras cuánticas.


Aunque es probable que no utilice ninguno de estos sistemas en su PC para juegos en el corto plazo, siempre existe la posibilidad de que al menos algunas de estas tecnologías novedosas lleguen al espacio del consumidor de una forma u otra. La adopción generalizada de nuevas tecnologías ha sido generalmente una de las formas de reducir los costos y allanar el camino para una mayor inversión en mejores tecnologías.

Esa ha sido nuestra breve historia de la CPU de múltiples núcleos, diseños anteriores y paradigmas con visión de futuro que podrían reemplazar la CPU de múltiples núcleos como la conocemos hoy. Si desea profundizar en la tecnología de CPU, consulte nuestra Anatomía de la CPU (y toda la serie Anatomía del hardware ), nuestra serie sobre cómo funcionan las CPU y la historia completa del microprocesador.

Publicar un comentario

0 Comentarios
* Por favor, no envíe spam aquí. Todos los comentarios son revisados ​​por el administrador.
Publicar un comentario (0)

#buttons=(Accept !) #days=(20)

Our website uses cookies to enhance your experience. Learn More
Accept !
Subir