En arquitectura de computadoras , las instrucciones por ciclo ( IPC ), comúnmente llamadas instrucciones por reloj , son un aspecto del rendimiento de un procesador : el número promedio de instrucciones ejecutadas por cada ciclo de reloj . Es el inverso multiplicativo de los ciclos por instrucción . [ 1 ] [ 2 ] [ 3 ]
Explicación
Mientras que las primeras generaciones de CPU ejecutaban todas las instrucciones de forma secuencial, las CPU modernas pueden realizar muchas tareas en paralelo. Dado que es imposible duplicar continuamente la velocidad del reloj, la segmentación de instrucciones y el diseño de procesadores superescalares han evolucionado para que las CPU puedan utilizar diversas unidades de ejecución en paralelo, anticipando las instrucciones entrantes para optimizarlas. Esto da como resultado un número de instrucciones completadas por ciclo muy superior a 1 y es responsable de gran parte de las mejoras de velocidad en las generaciones posteriores de CPU.
Cálculo del IPC
El cálculo del IPC se realiza ejecutando un fragmento de código, calculando el número de instrucciones de máquina necesarias para completarlo y, a continuación, utilizando temporizadores de alto rendimiento, calculando el número de ciclos de reloj necesarios para completarlo en el hardware real. El resultado final se obtiene dividiendo el número de instrucciones entre el número de ciclos de reloj de la CPU.
El número de instrucciones por segundo y de operaciones de coma flotante por segundo de un procesador se puede calcular multiplicando el número de instrucciones por ciclo por la frecuencia de reloj (ciclos por segundo, expresados en hercios ) del procesador en cuestión. El número de instrucciones por segundo es un indicador aproximado del rendimiento probable del procesador.
El número de instrucciones ejecutadas por ciclo de reloj no es constante para un procesador dado; depende de cómo el software en ejecución interactúa con el procesador y, de hecho, con toda la máquina, en particular con la jerarquía de memoria . Sin embargo, ciertas características del procesador tienden a generar diseños con valores de IPC superiores al promedio; la presencia de múltiples unidades aritmético-lógicas (una ALU es un subsistema del procesador que puede realizar operaciones aritméticas y lógicas elementales) y las tuberías cortas. Al comparar diferentes conjuntos de instrucciones , un conjunto de instrucciones más simple puede resultar en una cifra de IPC más alta que una implementación de un conjunto de instrucciones más complejo utilizando la misma tecnología de chip; sin embargo, el conjunto de instrucciones más complejo puede lograr un trabajo más útil con menos instrucciones. Por lo tanto, comparar las cifras de IPC entre diferentes conjuntos de instrucciones (por ejemplo, x86 frente a ARM) generalmente carece de sentido.
Velocidad de la computadora
El trabajo útil que se puede realizar con cualquier ordenador depende de muchos factores además de la velocidad del procesador. Estos factores incluyen la arquitectura del conjunto de instrucciones , la microarquitectura del procesador y la organización del sistema informático (como el diseño del sistema de almacenamiento en disco y las capacidades y el rendimiento de otros dispositivos conectados), la eficiencia del sistema operativo y el diseño de alto nivel del software de aplicación .
Para los usuarios y compradores de computadoras, las pruebas de rendimiento de las aplicaciones , en lugar de las instrucciones por ciclo, suelen ser un indicador mucho más útil del rendimiento del sistema. Sin embargo, el IPC (instrucciones por ciclo) demuestra por qué la velocidad de reloj no es el único factor relevante para el rendimiento de una computadora.
Véase también
Referencias
- ↑ Patterson, David A.; Hennessy, John L. (2014). Organización y diseño de computadoras: la interfaz hardware/software . Serie Morgan Kaufmann de arquitectura y diseño de computadoras (5.ª ed.). Ámsterdam; Boston: Elsevier/Morgan Kaufmann. Morgan Kaufmann es un sello editorial de Elsevier. ISBN 978-0-12-407726-3OCLC 859555917
- ↑ Hennessy, John L.; Patterson, David A. (3 de noviembre de 2006). Arquitectura de computadoras: un enfoque cuantitativo . Elsevier. ISBN 978-0-08-047502-8.
- ↑ Stallings, William (2016). Organización y arquitectura de computadoras: diseño para el rendimiento (Décima ed.). Boston: Pearson-Prentice Hall. ISBN 978-0-13-410161-3.
- Procesamiento de instrucciones
- señal de reloj
- Tarifas
- Rendimiento informático