¿Por qué una CPU funciona más rápido que otra?

En general, el rendimiento de la CPU es un tema complicado, ciertamente hay mucho más que simples núcleos y velocidades de reloj, todo desde la forma en que se colocan los circuitos en el chip hasta el tipo de tecnología de puerta en uso que puede afectar el rendimiento. Además, otro factor significativo es la escala litográfica utilizada, cuanto más pequeña es la escala, más eficiente es el chip en su mayor parte, ya que la distancia entre los componentes disminuye, lo que conduce a una transmisión de señal más rápida y a un rendimiento mejorado en general, además, los transistores adicionales posibles permiten un mayor número y diversidad de unidades funcionales.

Los factores ambientales también pueden influir con chips modernos, por ejemplo, la disponibilidad de enfriamiento suficiente ya que los chips modernos tienden a tener circuitos de protección térmica que reducen su velocidad de reloj si se calientan demasiado.

Sin embargo, para los procesadores modernos, uno de los factores más importantes es la cantidad y el diseño de la memoria caché de los procesadores, esto se debe a un fenómeno conocido como la pared de la memoria. Esencialmente, la velocidad del procesador ha superado significativamente la velocidad de DRAM (memoria) hasta el punto de que tener que recuperar cualquier cosa de la memoria principal es un gran impacto en el rendimiento, ciertamente mucho menos que tener que recuperarlo del almacenamiento secundario como un disco duro, pero aún puede ser a tener un núcleo inactivo durante decenas a cientos de ciclos en espera de datos.

El software también puede tener un impacto en esto, al igual que el compilador, ya que es importante que el software tenga en cuenta la asociatividad de la memoria caché para maximizar la tasa de aciertos de la memoria caché y optimizar el rendimiento, lo que puede hacer que algunos programas funcionen bien en un procesador con una memoria caché diseño y mal en otro.

Dicho esto, como se mencionó al principio para comprender realmente este tema, requeriría un estudio del diseño del microprocesador, el diseño moderno del microprocesador es una tecnología muy madura en este momento. Décadas de investigación, desarrollo más una gran cantidad de pruebas y errores han llevado al desarrollo de muchos trucos y técnicas para mejorar el rendimiento y, a lo largo de las décadas, se han desarrollado muchos trucos para mejorar el rendimiento. La interacción de todas estas tecnologías es compleja y varía entre líneas de productos y especialmente entre fabricantes, ya que la tecnología generalmente está protegida por numerosas patentes y específicas del fabricante.

El rendimiento de la CPU viene dado por la solidez con la que, en primer lugar, puede acceder a los datos y luego procesarlos.

Esto significa que es importante cómo gestiona el acceso a los datos debido a su arquitectura y qué tan rápido puede procesar las operaciones.

Todos los procesos deben ser completados por la contraparte del software.

Por ejemplo, un Pentium dual core tiene extractos de datos con dos decodificadores de instrucciones. En este caso, el sistema operativo ve dos núcleos. El Pentium dual-core también tiene dos ejecutores de instrucciones.

A modo de comparación, un i3 tiene 4 decodificadores de instrucciones y 2 ejecutores. El sistema operativo ve 4 núcleos. ¿El beneficio? Los ejecutores están empeñados en trabajar duro para procesar la alta velocidad de datos que proviene de los decodificadores, mientras que en el caso del doble núcleo simple, un ejecutor procesará una instrucción que esperará otra y así sucesivamente. Es fácil concluir que la CPU de doble núcleo pierde un tiempo precioso esperando que se decodifique la instrucción mientras que el i3 realiza más multiprocesamiento en el mismo tiempo.

Esto significa que, en líneas generales, toda la visión sobre la creación de una CPU es importante.

Además, el FX-8350 de AMD tiene 8 decodificadores de instrucciones con 8 unidades de ejecución de enteros completadas por 4 unidades de coma flotante.

Pero la gran visión de la CPU no lo hace todo en términos de rendimiento.

Importa cuán rápido y eficiente se crean las unidades de procesamiento de instrucciones, cómo funciona su propia arquitectura, qué tan optimizado está el software al usarlas a su máxima capacidad, qué tan rápido es el acceso a la memoria caché y la memoria RAM y otros buses, cuántos carriles tiene por total, cuán perfeccionada es la tecnología de fabricación, incluso dos CPU están construidas en la tecnología de 32 nm, una tecnología puede consumir menos energía que la otra. También es importante qué tan bien modularizados son los módulos de la CPU, qué tan óptimos están interconectados, qué tan bien se administran los tiempos de espera entre dos operaciones diferentes y no al menos, cuántas instrucciones nuevas conoce la CPU, instrucciones que pueden disminuir el tiempo de procesamiento , haciendo que una CPU de nueva generación funcione de manera más eficiente y más fluida, por ejemplo, youtube, mejor que una CPU más antigua que incluso tiene más potencia trabaja mucho para hacer muchas instrucciones, mientras que la más nueva ejecuta un número menor, pero las instrucciones y acabados son más eficientes que tareas específicas más rápido!

Además de lo que Matt Joyce ha indicado, algunas CPU tienen circuitos especializados destinados a realizar algunos cálculos y / o acciones mucho más rápido.

Anteriormente, incluso obtuviste una CPU secundaria solo para cálculos matemáticos (llamada Maths-Co-Processor) ya que esas CPU antiguas no incluían circuitos para hacer cosas como multiplicación y división (o incluso exponenciación y raíces) de (especialmente) números fraccionales . Entonces, si no tuviera ese coprocesador, algunos cálculos tomarían mucho tiempo, ya que el software necesitaba simular cálculos fraccionarios realizando aritmética de números completos.

Más recientemente, cosas como SSE2 pueden realizar las mismas acciones (o similares) en múltiples datos a la vez, en lugar de que la CPU tenga que tomar un dato a la vez. En algunos casos, tales optimizaciones de hardware pueden superar a los cálculos singulares muchas veces.

Además de la memoria caché, Matt Joyce se refirió a algunas CPU que agregan vectorización en el sentido de que pueden cargar múltiples instrucciones y luego usar partes de la CPU para realizar una parte de una instrucción mientras que otras partes continúan con una instrucción más antigua. Esto no debe confundirse con los núcleos múltiples, ya que incluso se puede aplicar a un solo núcleo.

Básicamente, todas estas cosas pueden ser diferencias entre dos CPU. Y así, uno puede realizar ciertas acciones mucho más rápido que otro. Incluso puede encontrar una situación en la que una CPU hace una cosa casi de inmediato, pero otra lleva varios segundos y, sin embargo, en otros cálculos, las velocidades se invierten.

Gran arquitectura, en el mejor estado de funcionamiento. El diseño más pequeño pero más funcional con la ruta más corta posible entre todos los demás componentes de trabajo en su PC. Compare el automóvil clásico con los automóviles más populares disponibles actualmente y compare los motores, las ruedas y las especificaciones.

Más reciente no necesariamente significa mejor, así que asegúrese de comparar las CPU y elija la que tenga el costo más razonable que supere a otras CPU

Las CPU económicas no tienen nada sofisticado y son más que simples para una CPU