IPC, ¿qué significa y por qué los fabricantes de procesadores lo usan tanto?
La informática es un campo donde hay un montón de términos y siglas que, la mayoría de usuarios, desconoce su significado. Uno de los parámetros que se suele mostrar cuando se presenta una nueva serie de procesadores es el IPC. Pero, ¿qué quiere decir y cuál es la importancia de las instrucciones por ciclo de reloj?
Cuando hablamos de procesadores nos solemos fijar en los parámetros que nos muestran los fabricantes. Básicamente, prestamos atención a la cantidad de núcleos, frecuencias de trabajo y TDP. Si eres un usuario algo más avanzado igual te fijas en la caché u otros elementos.
Uno de esos parámetros que no aparece es el IPC, que solamente se muestra en las prestaciones. Dicho dato lo utilizan los fabricantes para decirnos que los nuevos procesadores son mejores que los anteriores. Vamos a explicarte realmente lo que nos dice este valor.
¿Qué es el IPC?
Es un valor que nos dice la cantidad de instrucciones que puede realizar un procesador en un ciclo de reloj. Literalmente, IPC quiere decir instrucciones por ciclo. Es posible que no tengas muy claro que son las instrucciones o un ciclo de reloj, pero tranquilo, que te lo explicamos:
- Instrucciones: son las diferentes operaciones básicas que puede realizar cualquier CPU. Estas se componen de tareas como sumas, restas, accesos de memoria, etc.
- Ciclo de reloj: hablamos de una unidad de tiempo y que viene representado por la frecuencia, que normalmente se expresa en GHz. Simplificándolo mucho, es la cantidad de cambios de estado que se dan en un segundo. Por ejemplo, si nuestro procesador trabaja a 5 GHz, tendremos 5.000.000.000 oscilaciones en 1 segundo.
Ahora ya entendemos un poco mejor que es una instrucción y un ciclo de reloj. Pues bien, lo que nos aporta este valor es cuantas tareas puede realizar el procesador en un ciclo de reloj. Incluso, podríamos expresarlo en cuantas tareas puede hacer una CPU en 1 segundo.
Debes saber que la cantidad de instrucciones que se ejecutan por ciclo no son una constante. En primer lugar, depende del software que se está ejecutando y afectan el resto de componentes, sobre todo la jerarquía de memoria. Entonces, ¿es posible determinarlo?
¿Cómo se calcula el IPC?
Ningún fabricante nos dice que la cantidad de instrucciones que un procesador puede operar en un ciclo de reloj, ya que depende de cada software. Por lo tanto, si queremos calcularlo matemáticamente nosotros en casa es totalmente imposible.
Existen diferentes mecanismos. El más sencillo y que nos puede dar un valor más aproximado es ejecutar dos procesadores con las mismas condiciones. Habitualmente se deja solo un núcleo operativo en ambos y se establece una frecuencia fija de trabajo. Luego, ambos deben realizar una tarea determinada.
Aunque ambos operan en las mismas condiciones, lo normal es que uno termine antes de realizar la tarea que otro. Esta diferencia se convierte a un porcentaje y es lo que determina el IPC.
Debemos decir que no es la manera más correcta, pero es la única manera de hacerlo a nivel usuario. Las empresas utilizan otros mecanismos más precisos.
¿Para qué se usa este valor?
Se utiliza para expresar con una cifra la mejora existente entre dos generaciones de procesadores. Por ejemplo, AMD en la presentación de los Ryzen 9000, dijo que estos tenían un aumento del IPC de hasta el 16% con respecto a los Ryzen 7000.
Concretamente, los Ryzen 9000 que basan en la arquitectura Zen 5 y el proceso de fabricación de 5 nm de TSMC. Mientras que los Ryzen 7000 se basan en la arquitectura Zen 4 y el proceso de fabricación de 7 nm de TSMC. Precisamente, usar un proceso más avanzado es lo que permite gran parte del aumento del IPC. Luego hay otros factores como mejoras en el diseño o implementación de otros elementos.
No deberíamos tomarlo como algo cierto, sino como un valor aproximado. Vendría a ser como las velocidades de transferencias de los SSD, cuya velocidad real y la especificada por el fabricante difieren.