Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

T1 Problemas

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

Problemas Tema 1: Análisis del Rendimiento

1. Queremos analizar el rendimiento de un computador de 4GHz. que tiene instrucciones


simples, normales y complejas, cada una con un CPI distinto según se muestra en la
tabla siguiente. Para ello, se utiliza un programa compilado en dos compiladores
distintos que generan códigos objeto con diferente número y tipo de instrucciones (ver
tabla). ¿Qué versión compilada del programa produce un mayor rendimiento
atendiendo a los MIPS? ¿Y atendiendo al tiempo de CPU?

Clase de Millones de instrucciones Millones de instrucciones para


CPI
instrucción para el compilador 1 el compilador 2
Simple 1 5000 10000
Regular 2 1000 1000
Compleja 3 1000 1000

2. Un computador ejecuta un programa en 100 segundos, siendo las operaciones de


multiplicación responsables del 80% de ese tiempo. ¿Cuánto habría que mejorar la
velocidad de la multiplicación si se desea que el programa se ejecute 5 veces más
rápido?

3. Considerar dos computadores, P1 y P2, con idéntico repertorio de instrucciones (A, B,


C, D). P1 funciona a 1GHz y con CPIs de 1, 2, 3 y 4 para A, B, C y D, respectivamente.
P2, por el contrario, funciona a 1.5GHz pero con CPIs respectivos de 3, 5, 5 y 7. Si
ejecutamos en ambos un mismo programa compuesto por igual número de
instrucciones de cada tipo, ¿cuál de ellos mostrará un mayor rendimiento en MIPS?

4. Un programa que dedica la mitad de su tiempo a cálculos en punto flotante se ejecuta


sobre un computador en 10 segundos. Si cambiamos su unidad de punto flotante, FPU,
por otra 5 veces más rápida, ¿qué ganancia en velocidad experimentará el programa?

5. Sea un código en ensamblador del MIPS con un único bucle que se repite 5 veces. El
bucle está compuesto por 20 instrucciones de las que 7 son de suma. El tiempo de
ejecución del algoritmo en el procesador GoFast es de 150msg. Supongamos que a
dicho procesador se le cambia la ALU, de tal manera que el tiempo empleado en las
sumas se reduce en un 20%. Utiliza la ley de Amdahl para determinar cuál será el
nuevo tiempo de ejecución del programa.

6. Queremos reducir el tiempo de ejecución de un programa en un computador


incorporándole una memoria caché para almacenar instrucciones. Cuando el
procesador encuentra una instrucción en la caché, ésta se ejecuta 10 veces más rápido
que cuando debe acceder a memoria principal. Indicar el porcentaje mínimo de

Departamento de Arquitectura de Computadores, Universidad de Málaga 1


Problemas Tema 1

tiempo de programa que debería corresponder a instrucciones que se encuentran en


caché, para conseguir ejecutar el programa en menos de la mitad de tiempo.

7. A partir de una misma arquitectura base, se ha realizado la implementación de dos


procesadores multiciclo que denominaremos a partir de ahora MelonPI y SandiPO.
Cada procesador tiene su propio conjunto de instrucciones, y además SandiPO usa una
tecnología más actual, lo que hace que su frecuencia de funcionamiento sea 2 veces la
de MelonPI. Para comparar el rendimiento de ambas máquinas, se ha tomado como
benchmark un programa en Python que al compilarse produce en ambos procesadores
el mismo número de instrucciones pero un tiempo de ejecución diferente: 8.6
milisegundos en MelonPI y 4.1 milisegundos en SandiPO. Calcular la relación entre el
CPI de ambas arquitecturas para el benchmark considerado.

Un grupo de estudiantes aventajados de la UMA cree que las prestaciones de SandiPO


pueden dar mucho más de sí de lo que esos números indican, y deciden
reimplementar su instrucción MOV, consiguiendo reducir de 5 a 3 el número de ciclos
de CPU necesarios para su ejecución. A continuación, ejecutan el benchmark de nuevo,
consumiendo este tan sólo 3.8 milisegundos. ¿Se puede conocer el porcentaje del
tiempo de ejecución que se ha dedicado a la ejecución de la instrucción MOV? ¿Y el
porcentaje de instrucciones MOV que tiene el benchmark utilizado durante la
evaluación?

8. Se desea mejorar el rendimiento de un PC. Para ello tenemos dos opciones:


 Ampliar la memoria RAM, con lo que se consigue un factor de mejora de 1.75
en el 80% del tiempo de ejecución de los programas.
 Introducir un disco duro mayor, con lo que se reduce a una tercera parte el
60% del tiempo de ejecución de los programas.
A igualdad de precio, ¿cuál de las dos mejoras aconsejarías?

9. Considérese que para determinada arquitectura de un repertorio de instrucciones se


realizan diversas implementaciones. La primera obedece a una organización multiciclo
que opera a una frecuencia de 1.8GHz., obteniéndose para determinado programa de
prueba un CPI de 3 y un tiempo de ejecución de 150ms. La segunda reduce el ciclo de
reloj hasta los 0.3ns, lo que lleva al programa de prueba a ejecutarse en 100ms. Con
estas premisas, contestar a las siguientes preguntas:

1. Calcular el CPI del programa de prueba en la segunda implementación.


2. Marcar la sentencia correcta de entre las cuatro siguientes:
a) La segunda implementación es más rápida que la primera y por lo tanto,
obligatoriamente, su CPI debe ser menor.
b) La segunda realización es más rápida que la primera y por lo tanto su CPI debe
ser mayor.
c) La primera realización es la de mayor rendimiento.
d) Las afirmaciones anteriores son falsas.

Estructura de Computadores
10. La propaganda de una empresa informática nos indica que su procesador PTT es capaz
de conseguir 48.5 SPECspeed 2017 Floating Point.
a) ¿Qué nos quiere indicar el fabricante con ese parámetro?
b) ¿Es ese parámetro más indicativo del rendimiento del procesador que si
nos suministraran medidas acerca de los MIPS? ¿y de los MFLOPS? Justifica las
respuestas.
c) Supongamos que conocemos que este nuevo PTT es 1.25 veces más rápido
que el procesador KK‐II para un determinado conjunto de programas de
prueba. Dicha ganancia se debe en un 45% a un programa de “Simulación de
Turbulencias”, que tarda 20 segundos al ser ejecutado sobre PTT. ¿Cuánto
tardaría este programa en ejecutarse sobre el procesador KK‐II?

11. MeEscapé, una empresa dedicada al software de Internet, usa para sus operaciones
matemáticas unas rutinas compradas a otra compañía. Estas funciones suponen el 10%
del tiempo de ejecución del código, y son el doble de rápidas de las que inicialmente
usaban. Por una política de ahorro, se decide cambiar a las funciones que ofrece una
nueva empresa que, aunque son algo más lentas, también son más baratas. Esta
decisión se debe a que se ha observado que, haciendo un cambio en la estructura de
los programas, se consigue que, aunque las nuevas llamadas aceleren un 25% menos
que las que iban el doble de rápidas, el código, de forma global, se sigue comportando
de igual modo a como lo hacía antes en cuanto a velocidad de ejecución.
a) ¿Cuál ha sido ese cambio? ¿En qué se basa ese comportamiento, en principio
extraño, del programa? Justifíquese la respuesta.
b) Cuantificar el cambio necesario en el programa, como mínimo, para que se
puedan usar las nuevas funciones.

12. Sea el siguiente código MIPS, que a partir de ahora referenciaremos como “mi_prog”:

loop: lw $1, 2800h($2)


sub $4, $1, $0 rotar: add $10, $4, $4
jal rotar muli $7, $10, 2
sw $7, 7800h($2) jr $31
sw $1, C800h($2)
subi $2, $2, 4
bne $2, $0, loop

Suponiendo un MIPS no segmentado multiciclo donde todas las instrucciones tardan 5


ciclos, determinar la aceleración que experimentará “mi_prog” cuando se mejora la
unidad de multiplicación de tal forma que la instrucción muli gaste 3 ciclos en lugar
de 5. Utilizar la ley de Amdahl. Calcular el CPI de “mi_prog” después de la
optimización.

Departamento de Arquitectura de Computadores, Universidad de Málaga 3


Problemas Tema 1

13. Un algoritmo ejecutado en el nuevo procesador MangoPi tarda 35seg. A ese


procesador se le incluye una FPU, lo que hace que el algoritmo tarde ahora 10
segundos menos. También se sabe que el código empleaba el 40% de su tiempo de
ejecución en operaciones en punto flotante. Si estas operaciones tardan ahora en
ejecutarse 2 ciclos menos que antes, ¿es posible calcular el número de ciclos empleado
en ese tipo de operaciones antes de la inclusión de la FPU?

14. Al procesador Gamma se le ha sustituido su ALU por una más eficiente, y ésto hace
que se reduzca en un 50% el tiempo de ejecución de un determinado programa de
prueba compuesto por 500 instrucciones. Sabemos también que en dicho benchmark
la ALU se usa en 3 de cada 5 instrucciones, y que todas las instrucciones tienen la
misma latencia en el procesador que no incluía esta ALU mejorada.

a) Cuantificar la mejora que debe hacerse en la ALU para producir el anterior


resultado. Para ello, indicar el porcentaje de mejora de la ALU.
b) ¿Cambiará el resultado si en el procesador original unas instrucciones tardaran
más que otras en ejecutarse? Justifica la respuesta.
c) Si sabemos que el tiempo de ejecución antes de la mejora es de 260
nanosegundos, ¿cuál es el rendimiento en MIPS del procesador mejorado? (en
caso de que falte algún parámetro, dejadlo indicado).

15. El programa SPMV tarda en ejecutarse 3 milisegundos en un determinado procesador.


Dicho programa está compuesto por dos bucles: el cuerpo del primer bucle contiene
100 instrucciones y el del segundo, 200. Sabemos que el primer bucle se ejecuta 4
veces, mientras que el segundo se ejecuta 3. En dicho computador se mejora la unidad
en punto flotante, con lo que dichas operaciones tardan 6 veces menos (hay un 60%
de instrucciones en punto flotante). Si el CPI de SPMV tras la mejora es 1.5, calculad, a
partir de la ley de Amdahl, la frecuencia de trabajo del procesador.

16. Consideremos un benchmark formado por 6 programas P1, P1, P3, P4, P5 y P6. El
tiempo de ejecución de los mismos en el procesador de referencia es 10 ms., 17 ms.,
20 ms., 23 ms., 21 ms. y 14 ms. El nuevo procesador que se está evaluando emplea los
siguientes tiempos para los mismos programas: 08 ms., 10 ms., 10 ms., 13 ms., 16 ms.
y 9 ms.
a) Calcular el SPEC ratio e interpretar dicho resultado. Detallar la expresión
matemática utilizada para el cálculo (no vale resultado directo).
b) Sabiendo que el programa P3 se compone de 895 millones de instrucciones y que
con el nuevo procesador se obtiene un CPI de 1.7, calcular la frecuencia de reloj (en
Mhz) del nuevo procesador.

Estructura de Computadores

También podría gustarte