¿Cómo se mide el rendimiento de un microprocesador?
El rendimiento o la velocidad de un procesador depende, entre otros muchos factores, de la frecuencia de reloj (generalmente dada en múltiplos de hertzios) y de las instrucciones por reloj (IPC), que juntos son los factores de las instrucciones por segundo (IPS) que puede ejecutar la CPU.
Muchos de los valores de IPS comunicados han representado tasas de ejecución “máximas” en secuencias de instrucciones artificiales con pocas bifurcaciones, mientras que las cargas de trabajo realistas consisten en una mezcla de instrucciones y aplicaciones, algunas de las cuales tardan más en ejecutarse que otras.
El rendimiento de la jerarquía de memoria también afecta en gran medida al rendimiento del procesador, una cuestión que apenas se tiene en cuenta en los cálculos de MIPS. Debido a estos problemas, se han desarrollado varias pruebas estandarizadas, a menudo denominadas “benchmarks” para este fin -como SPECint-, para intentar medir el rendimiento efectivo real en aplicaciones de uso común.
Aunque ultimamente se está estandarizando el uso de aplicaciones en línea como son userbenchmark.com
Procesadores de varios núcleos y su mejora en el rendimiento
El rendimiento de procesamiento de los ordenadores se incrementa mediante el uso de procesadores multinúcleo, que básicamente consiste en conectar dos o más procesadores individuales (llamados núcleos en este sentido) en un circuito integrado.
Lo ideal sería que un procesador de doble núcleo fuera casi el doble de potente que uno de un solo núcleo.
En la práctica, la ganancia de rendimiento es mucho menor, sólo un 50% aproximadamente, debido a la imperfección de los algoritmos y la implementación del software. Aumentar el número de núcleos de un procesador (es decir, doble núcleo, cuádruple núcleo, etc.) incrementa la carga de trabajo que puede manejar.
Esto significa que el procesador puede manejar numerosos eventos asíncronos, interrupciones, etc., que pueden hacer mella en la CPU cuando se ve desbordada. Estos núcleos pueden ser considerados como diferentes plantas en un edificio, con cada piso manejando una tarea diferente. A veces, estos núcleos manejarán las mismas tareas que los núcleos adyacentes a ellos si un solo núcleo no es suficiente para manejar la información.

Aumento de complejidad en los Procesadores modernos
Debido a las capacidades específicas de las CPUs modernas, como el hyper-threading y el uncore, que implican compartir los recursos reales de la CPU con el objetivo de aumentar su utilización, la supervisión de los niveles de rendimiento y el uso del hardware se convirtió cada día en una tarea mucho más compleja. Como respuesta, algunas CPU implementan una lógica de hardware adicional que supervisa el uso real de varias partes de una CPU y proporciona varios contadores accesibles para el software; un ejemplo es la tecnología Performance Counter Monitor de Intel.
¿Cómo son los procesadores multinúcleo?
Las CPUs multinúcleo suelen tener varios núcleos de CPU en la misma matriz, conectados entre sí a través de una caché L2 o L3 compartida, un bus en la matriz o un interruptor de barra transversal en la matriz. Todos los núcleos de la CPU en la matriz comparten la interconexión
componentes con los que interconectar con otros procesadores y el resto del sistema. Estos componentes pueden incluir una interfaz de bus frontal, un controlador de memoria para interactuar con la memoria dinámica de acceso aleatorio (DRAM), un enlace coherente de caché con otros procesadores y un enlace no coherente con el puente sur y los dispositivos de E/S. Los términos “multinúcleo” y “unidad de microprocesador” (MPU) se han generalizado para referirse a una matriz con varios núcleos de CPU.
RAM inteligente
Una forma de evitar el cuello de botella de Von Neumann es mezclar un procesador y una DRAM en un solo chip.