Examen: Parcial 1:2023_10_09:GISAM - myTeachingURJC/Arq-computadores-01 GitHub Wiki
Examen Parcial 1: 2023-10-09. GISAM
- Tiempo: 40 minutos
- Tipo de examen: Presencial. Realizado a través de Aula Virtual. Acceso a la wiki (Internet)
- Temario: S1-S4
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
Para un proyecto audiovisual que estamos desarrollando, tenemos un programa que realiza todos los cálculos necesarios para renderizar en tiempo real una imagen y mostrarla en una pantalla. Necesitamos que este programa tarde como máximo 20ms. El 80% de las instrucciones son de multiplicación y el 20% restante de los demás tipos. También necesitamos que el sistema computador consuma lo menos posible para alargar la vida de la batería
En el mercado hemos encontrado los procesadores P1 y P2, que funcionan en el rango de frecuencias entre 50Mhz - 1GHZ. Los fabricantes nos proporcionan la información sobre los ciclos que tarda cada instrucción
Multiplicacion | Resto de Instrucciones | |
---|---|---|
P1 | 5 ciclos | 1 ciclo |
P2 | 2 ciclos | 1 ciclo |
Sabemos que nuestro programa tiene un total de 1 millón de instrucciones En la documentación técnica de los procesadores encontramos también que el consumo aumenta con la frecuencia de su reloj
Se pide:
a) (1 pto) Calcular el CPI del procesador P1 al ejecutar este programa
b) (1 pto) ¿A qué frecuencia de reloj tiene que funcionar el procesador P1 para que el programa se ejecute como máximo en 20ms?
c) (1 pto) Calcular el CPI del procesador P2 al ejecutar este programa
d) (1 pto) ¿A qué frecuencia de reloj tiene que funcionar el procesador P2 para que el programa se ejecute como máximo en 20ms?
e) (1 pto) ¿Qué procesador elegirías para la aplicación?
Solución al problema
a) Para obtener el CPI del P1 al ejecutar el programa basta con calcular la media de los ciclos. Sabemos que el 80% de las instrucciones tardan 5 ciclos y que el 20% restante 1 ciclo, en media tardarán:
- CPI1 =
0.8 * 5 + 0.2 * 1
= 4.2
b) Queremos que el programa tarde 20ms, por tanto su tiempo de CPU será de 20ms: Tcpu1 = 20ms Utilizando la ecuación clásica del rendimiento despejamos la frecuencia:
- Tcpu1 <=
(I * CPI1) / F1 --> F1 >= I * CPI1 / Tcpu1 --> F1 >= (10^6 * 4.2) / (20 * 10^-3)
= 210Mhz
Necesitamos que el reloj del procesador P1 sea al menos de 210 Mhz
c) Repetimos los cálculos para P2:
- CPI2 =
0.8 * 2 + 0.2 * 1
= 1.8
d) Recalculamos la frecuencia para P2: El tiempo de cpu es el mismo: tcpu2 = 20ms
- F2 >=
I * CPI2 / Tcpu2 ---> F2 >= (10^6 * 1.8) / (20 * 10^-3)
= 90Mhz
e) El procesador P1 a 210Mhz ejecuta el programa en el mismo tiempo que el procesador P2 a 90Mhz. Es decir, que tienen el mismo rendimito. Pero P2 tiene un reloj de frecuencia menor, por lo que consumirá menos. Elegiría el procesador P2 (¡P2, te elijo a ti!)
Autores
- Katia Leal Algara
- Juan González-Gómez (Obijuan)