Examen: Parcial 1:2023_10_20:TELECO - myTeachingURJC/Arq-computadores-01 GitHub Wiki

Examen Parcial 1: 2023-10-20. Teleco

  • Tiempo: 40 minutos
  • Tipo de examen: Presencial. Realizado a través de Aula Virtual. Acceso a la wiki (Internet)
  • Temario: S1-S3

Contenido

Enunciado

El examen se ha realizado a través de Aula virtual. Tiene dos partes: Test y un problema

Test (5 ptos)

  • Realizado a través de Aula virtual
  • 10 preguntas tipo test
  • Las respuesats incorrectas restan un 25% del valor de la pregunta
  • Solución disponible en Aula virtual

Problema (5 ptos): Rendimiento

Resuelve el siguiente problema:

Diseñando la nueva ECU de un coche, tenemos que decidir si utilizar el mismo modelo de procesador que en la anterior versión. Dicho procesador cuenta con dos tipos de instrucciones (A y B) y sus características se resumen en la siguiente tabla:

Procesador Frecuencia (Ghz) CPI A CPI B
P.ant 2.1 1.5 2.2

Para probar el funcionamiento del sistema, se escribe un código de prueba que simula los cálculos más comunes en dicha ECU. Al analizar el código compilado, de las 4500 instrucciones que tiene, el 30% Son de tipo A y las restantes de tipo B.

a) Calcular el número de ciclos que tarda el procesador antiguo en ejecutar el código de prueba.

b) Calcular el tiempo que tardará en ejecutarlo.

c) Calcular el CPI global

Revisando alternativas, encontramos el procesador de otro fabricante, que incluye un tipo adicional de instrucciones para las operaciones de división (Tipo C), con el cual asegura aumentará el rendimiento. Las características de este procesador son las siguientes:

Procesador Frecuencia (Ghz) CPI A CPI B CPI C
P.nuevo 1.9 1.6 2.6 1.5

Al compilar el programa de ejemplo para este nuevo procesador, el número total de instrucciones se incrementa en un 10%, y se reparten de la siguente manera: 30% de Tipo A, 30% de Tipo B y 40% de Tipo C

d) Calcular el número de ciclos que tarda el procesador nuevo en ejecutar el código de prueba.

e) Calcular el tiempo que tardará en ejecutarlo.

f) Calcula el CPI global de este procesador

g) ¿Cambiaráis el procesador por el nuevo?, ¿Cuánto es mejor el procesador elegido con respecto a otro?

NOTA: Justifica todas las respuestas, indicando las ecuaciones y razonamiento usados, e incluye las unidades de tus respuestas.

Solución al problema

a) Al compilar el programa de pruebas para el procesador antiguo, se obtiene un programa en código máquina de I1=4500 instrucciones. El número total de ciclos que tarda en ejecutarse será igual a los ciclos que tardan en ejecutarse las instrucciones de tipo A (30%) más los ciclos que tardan las de tipo B (70%)

  • Ciclos = Instrucciones x CPI
  • Ciclos en ejecutar las instrucciones de tipo A: CiclosA = 0.3 * 4500 * 1.5 = 2025 ciclos
  • ciclos en ejecutar las instrucciones de tipo B: CiclosB = 0.7 * 4500 * 2.2 = 6930 ciclos
  • Ciclos totales = CiclosA + CiclosB = 2025 + 6930 = 8955 ciclos

b) Como conocemos la frecuencia del procesador y los ciclos, aplicamos directamente la fórmula para calcular el tiempo de CPU:

  • Tcpu1 = ciclos / F = 8955 / 2.1Ghz = 4264 ns = 4.2 µs

c) El CPI global lo calculamos dividiendo el nímero de ciclos totales entre el número de instrucciones

  • CPI1 = Ciclos1 / I1 = 8955 / 4500 = 1.99

d) Al compilar el programa de pruebas para el procesador nuevo, tenemos un programa en código máquina con un 10% más de instrucciones I2 = 1.1 x 4500 = 4950 instrucciones. El número de ciclos lo calculamos usando las mismas ecuaciones que el apartado a

  • CiclosA = 0.3 * 4950 * 1.6 = 2376 ciclos
  • CiclosB = 0.3 * 4950 * 2.6 = 3861 ciclos
  • CiclosC = 0.4 * 4950 * 1.5 = 2970 ciclos
  • Ciclos totales = CiclosA + CiclosB + CiclosC = 2376 + 3861 + 2970 = 9207 ciclos

e) Aplicando directamente la fórmula, calculamos el tiempo de CPU:

  • Tcpu2 = ciclos / F = 9207 / 1.9Ghz = 4845 ns = 4.8 µs

f) El CPI global lo calculamos dividiendo el nímero de ciclos totales entre el número de instrucciones

  • CPI2 = Ciclos2 / I2 = 9270 / 4950 = 1.87

g) El mejor procesador será el que tarda menos tiempo, en este caso, el antiguo que tarda 4.2 µs frente a los 4.8 µs del nuevo. Para calcular cuántas veces mejor, utilizamos la fórmula del rendimiento relativo

  • n = T2 / T1 = 4845 / 4264 = 1.13 El procesador antiguo es 1.13 veces mejor

Autores

Licencia

Enlaces