Saltar al contenido
Calcumatix
es
esEspañolenEnglish

Cómo calcular ciclos por instrucción

Por El equipo de Calcumatix Revisado por Revisión editorial de Calcumatix 1 min de lectura

Respuesta rápida

CPI es ciclos totales divididos entre instrucciones ejecutadas. IPC es el reciproco. Con 20.000 ciclos y 5.000 instrucciones, CPI = 4 e IPC = 0,25. Para comparar procesadores, usa cargas equivalentes, porque mezcla de instrucciones, cache y reloj cambian mucho el resultado final medido en pruebas.

Los ciclos por instrucción, o CPI, miden cuantos ciclos de reloj necesita en promedio una CPU para ejecutar cada instrucción. Es una parte central de la ecuación de rendimiento junto con el conteo de instrucciones y la frecuencia de reloj.

Usa la calculadora de ciclos por instrucción para resolver CPI, IPC y tiempo de CPU.

Fórmulas

CPI = ciclos totales / conteo de instrucciones

IPC = instrucciones / ciclos totales

Tiempo de CPU = instrucciones x CPI / frecuencia de reloj

MetricaFórmulaObjetivo
CPIciclos / instruccionesMinimizar
IPCinstrucciones / ciclosMaximizar
Tiempoinstrucciones x CPI / relojMinimizar

Ejemplo

Datos: programa con 5.000 instrucciones, 20.000 ciclos y procesador de 2 GHz.

CPI:

20.000 / 5.000 = 4.

IPC:

1 / 4 = 0,25.

Tiempo:

5.000 x 4 / 2.000.000.000 = 0,00001 s = 10 microsegundos.

Resultado: el programa promedia 4 ciclos por instrucción y termina en 10 microsegundos.

CPI ponderado

Los programas reales mezclan instrucciones con costos distintos. Si 70% de las instrucciones cuestan 1 ciclo y 30% cuestan 5 ciclos, el CPI ponderado es:

(0,70 x 1) + (0,30 x 5) = 2,20.

Fuentes

Consulta más herramientas de computación en el hub de calculadoras de ingeniería.

Preguntas frecuentes

¿Qué significa CPI igual a 1?

Significa una instrucción por ciclo en promedio, ideal para una tubería simple sin esperas.

¿CPI puede ser menor que 1?

Si. Procesadores superescalares pueden retirar varias instrucciones por ciclo.

¿La frecuencia de reloj cambia el CPI?

No directamente. Cambia el tiempo por ciclo, no los ciclos promedio por instrucción.