Sei sulla pagina 1di 5

Arquitectura

de Computadores. 2 curso, Grado Ingeniera


Informtica
Actividades Tema 1

1. Se tarda 2,5s en ejecutar 20000 instrucciones mquina en un procesador Intel Core i7-
4790K 4.0Ghz Box. Se pide:
a. Determinar el CPI de este procesador. (Solucin: CPI=0.5)
b. Cuanto se tardara en ejecutar ese mismo conjunto de instrucciones si se activa la
denominada Turbo frecuencia de 4400 MHz. (Solucin: t=2,27s)
c. Reflexionar sobre las ventajas e inconvenientes de usar la Turbo frecuencia

2. En un ncleo ARM Cortex-A9 funcionando a una frecuencia de 800MHz y consumiendo
0,5Watts, se ejecuta 10 veces un bucle de 500.000 instrucciones mquina con un tiempo
total de ejecucin de 4ms. Se pide:
a. Calcular los MIPS que se obtienen. (Solucin: MIPS=1250 millones instrucciones/s)
b. Si el 40% de las instrucciones son en punto flotante, determinar los MFLOPs
(Solucin: MFLOPS=500 Millones FLOP/s)
c. Determinar la eficiencia energtica. (Solucin: Eficiencia Energtica=1000 MFLOPS/watts o
bien 2500 MIPS/watts)
d. Repetir los apartados a,b,c para un Atom N270 funcionando a una frecuencia de
1,6 GHz consumiendo una potencia de 2,5Watts y con el mismo tiempo de
ejecucin para el bucle mencionado. (Solucin: MIPS=1250 millones instrucciones/s,
MFLOPS=500 Millones FLOP/s y Eficiencia Energtica=200 MFLOPS/watts o bien 500 MIPS/watts)

3. La tabla siguiente muestra el nmero de operaciones de punto flotante ejecutadas en dos
programas diferentes y el tiempo de ejecucin de esos programas en tres mquinas
diferentes:
Programa Operaciones en punto
flotante (FLOP)


1
10.000.000
2
100.000.000
Calcular:

Tiempo de ejecucin en segundos


M1
1
1000

M2
10
100

M3
20
20

a) Qu mquina es ms rpida de acuerdo con el tiempo total de ejecucin? (Solucin: La


mquina ms rpida es la C)

b) Cuntas veces es ms rpida que las otras dos mquinas? (Solucin: C es 25.025 veces ms rpida
que A y 2.75 veces ms rpida que B)

c) Encontrar las frecuencias en MFLOPS para cada programa en cada mquina, suponiendo que
cada operacin en punto flotante cuenta como 1 FLOP. (Solucin: Para el programa 1: MFLOPS-A=10,
MFLOPS-B= 1, MFLOPS-C= 0.5. Para el programa 1: MFLOPS-A= 0.1, MFLOPS-B= 1, MFLOPS-C= 5 )

d) Se puede comparar el rendimiento de las tres mquinas utilizando otras medidas para
normalizar el rendimiento. Qu mquina es ms rpida para la media geomtrica? (Solucin: La
mquina C)

4. Un usuario ha dicho que los dos programas del ejercicio anterior constituyen el grueso de
su carga de trabajo, pero no los ejecuta por igual. El usuario quiere determinar cmo
comparar las tres mquinas cuando la carga de trabajo est formada por diferentes
mezclas de estos dos programas. Se sabe cmo utilizar la media aritmtica para encontrar
el rendimiento relativo.
Suponer que el nmero total de FLOPS ejecutados en la carga de trabajo se divide por igual
entre los dos programas. Es decir el programa 1, se ejecuta diez veces con ms frecuencia
que el programa 2.
a) Encontrar que mquina es ms rpida para esta carga de trabajo y cunto. (Solucin: La
mquina B es 5 veces ms rpida que A y 1.1 que C)

b) Cmo hacer esta comparacin con el tiempo total de ejecucin para una carga de trabajo
con igual nmero de ejecuciones de programas?. (Solucin: La mquina C es 25.025 veces ms rpida
que A y 2.75 que B)

5. Estamos interesados en dos implementaciones de una mquina, una con un hardware


especial para operaciones en punto flotante y la otra si l. Consideremos un programa P,
con la siguiente composicin de operaciones:
Multiplicacin en punto flotante 10%
Suma en punto flotante 15%
Divisin en punto flotante 5%
Instrucciones sobre enteros 70%

La mquina MPF (Mquina con Punto Flotante) tiene hardware para ejecutar
directamente operaciones en punto flotante, y requiere el siguiente nmero de ciclos
de reloj para cada tipo de instruccin:
Multiplicacin en punto flotante 6 ciclos
Suma en punto flotante 4 ciclos
Divisin en punto flotante 20 ciclos
Instrucciones sobre enteros 2 ciclos

La mquina MSPF (Mquina sin Punto Flotante) no tiene hardware para realizar
operaciones en punto flotante y por lo tanto tiene que emularlas utilizando
operaciones sobre nmeros enteros. Cada instruccin con enteros requiere 2 ciclos de
reloj, y el nmero de operaciones sobre enteros que se necesitan para implementar
cada operacin en punto flotante se muestra a continuacin:
Multiplicacin en punto flotante: 30 operaciones
Suma en punto flotante: 20 operaciones
Divisin en punto flotante 50 operaciones

Ambas mquinas tienen una frecuencia de reloj de 1.000 MHz. Encontrar el valor de
MIPS para ambas mquinas. (Solucin: MIPS MSPF = 500 y MIPS MPF = 278)
6. Si la mquina MPF del ejercicio anterior necesita 300 millones de instrucciones para este
programa,
a) Cuntas instrucciones sobre enteros necesita la mquina MSPF para el mismo programa?
6

(Solucin: 2760x10 ).

b) Suponiendo este nmero de instrucciones Cul es el tiempo de ejecucin (en segundos)


para el programa del ejercicio anterior en las mquinas MPF y MSPF?. (Solucin: Tejecucin MSPF =
5.52 sg y Tejecucin MPF= 1.08 sg)

7. Tenemos dos mquinas A y B. El reloj de la mquina A es de 50 MHz. Su rendimiento es


igual a 100 MIPS y su tiempo de CPU 20 s. El reloj de B es igual a 100 MHz, su rendimiento
es de 130 MIPS y su tiempo CPU igual a 15 s. Se pide calcular:
a. Ic de A y B, y la relacin entre ellos. (Solucin: IcA = 1.026 IcB)
b. CPI de A y B, y su relacin. (Solucin: CPIA = 1.538 CPIB)

Nota: Tener en cuenta que Tcpu=Ic*cpi*1/f ; MIPS=f/cpi*106

8. Se Desea comparar el rendimiento de dos mquinas M1 y M2 de las que se tienen los
siguientes datos:
Programa Mquina 1 (M1)

TCPU1 N1
1
10 s 200 M
2
3 s
Con M=millones y s=segundos

Mquina 2 (M2)
F1
Precio
TCPU2 N2
200MHz 10.000
5 s 160 M


4 s

F2
Precio
300MHz 15.000

En base a dichos datos, conteste las siguientes cuestiones:


a) Qu mquina es ms rpida para cada programa? Por qu? (Solucin: M2 es 2 veces ms rpida
que M1 para el programa 1, y M1 es 1.33 veces ms rpida que M2 para el programa 2).
b) Calcular los MIPS de cada una de las mquinas para el programa 1. (Solucin: MIPS M1= 20 y MIPS
M2= 32)

c) Calcular los ciclos por instruccin (CPI) de cada mquina cuando se ejecuta el programa 1.
(Solucin: CPI M1= 10 y CPI M2=9.4).

d) Suponiendo que los CPI para el programa 2 son los mismos que los del programa 1, calcular
el recuento de instrucciones (N) cuando se ejecuta el programa 2 en cada mquina.( Solucin: No
6

instrucciones M1 = 60x10 y No instrucciones M2 = 127,7x10 )

e) Si Ud. necesitase ejecutar el programa 1 un gran nmero de veces Qu mquina comprar?


Por qu?

9.

Considerar dos computadores, M1 y M2, con idntico repertorio de instrucciones (A, B, C,


D). M1 funciona a 500 MHz y con CPIs 1, 2, 3 y 4 para A, B, C y D, respectivamente. M2, por
el contrario, funciona a 750 MHz. pero con CPIs respectivos de 3,5, 5 y 7. Si se ejecuta en
ambos un mismo programa compuesto por igual nmero de instrucciones de cada tipo,
Cal de ellos mostrar un mayor rendimiento en MIPS?. (Solucin: MIPS M1 = 200; MIPS M2 =
150).

10.

Suponga que se mejora una mquina de modo que todas las instrucciones en coma
flotante se ejecutan 5 veces ms rpido. Se quiere ver cmo se comporta el aumento de
rendimiento o ganancia de velocidad cuando se incorpora el hardware ms rpido de
coma flotante. Si el tiempo de ejecucin de algn benchmark (programa de prueba) antes
de la mejora de la coma flotante es de 10 segundos, cul ser la ganancia de velocidad si
la mitad de los 10 segundos se emplean en ejecutar instrucciones de coma flotante?
(Solucin: La ganancia de velocidad es de 1.67)

11.

Se est buscando un programa de prueba para medir el rendimiento de la nueva unidad de


coma flotante del ejercicio 10, y se quiere que el programa de prueba indique una
ganancia de velocidad de 3. Un programa de prueba se ejecuta durante 100 segundos con
el antiguo hardware de coma flotante. Qu cantidad del tiempo de ejecucin inicial
debern contabilizar las instrucciones en coma flotante para que aparezca una ganancia de
velocidad global de 3 con este programa de prueba? (Solucin: El 83% del tiempo inicial debera
estar dedicado a instrucciones de coma flotante)

12. Suponga que va a mejorar el rendimiento de una mquina determinada para lo que hay
dos posibles mejoras:
a) Hacer que las instrucciones de multiplicacin se ejecuten 4 veces ms rpido que antes.
b) Hacer que las instrucciones de acceso a memoria corran 2 veces ms rpida que antes.

Se ejecuta el programa varias veces consecutivas y se contabiliza un tiempo de 100 segundos.
De este tiempo, el 20% es utilizado para la multiplicacin, el 50% para instrucciones de accesos
a memoria y el 30% para otras tareas.
a) Cul ser el aumento de velocidad si slo se mejora la multiplicacin? (Solucin: El aumento de
velocidad es de 1.17)

b) Cul ser el aumento de velocidad si slo se mejora los accesos a memoria? (Solucin: El
aumento de velocidad es de 1.3)

c) Cul ser el aumento de velocidad si se realizan las dos mejoras? (Solucin: El aumento de
velocidad es de 1.67)

Solucin:

Aplicacin directa ley Amdahl

a) F= 0.20 Aceleracion total= 1/(1-0.20+0.20/4)=1.17
b) F= 0.50 Aceleracion total= 1/(1-0.50+0.50/2)=1.33
c) F= 0.20 Aceleracion total= 1/(1-0.20+0.20/4-0.50+0.50/2)=1.66

13. Una forma de mejorar el rendimiento de un computador es utilizando un sistema


multiprocesador. Generalmente, slo una parte del programa a ejecutar puede
paralelizarse, esto es, admite una descomposicin en tareas que permita beneficiarse de la
existencia de mltiples CPUs. Si se quiere medir el rendimiento de una mquina de N
procesadores a travs de un benchmark que tarde 100 segundos en una mquina
secuencial y donde el 90% de sus tareas son paralelizables, se pide:
a) La aceleracin que experimentar el benchmark en este sistema en funcin de N.
(Solucin: a = 100/ (10+ 90/N))

b) Si se pudiese incrementar N de forma indefinida, estarn acotados de alguna manera la


aceleracin y el tiempo de ejecucin para esta mquina?. (Solucin: Por mucho que aumentemos
N, la aceleracin se encuentra acotada superiormente en un valor 10 y el tiempo de ejecucin inferiormente en
10 segundos)


14. Un programa emplea 60% de su tiempo de ejecucin computando operaciones aritmticas
de punto flotante. De las operaciones de punto flotante de este programa, 90% se
ejecutan en ciclos paralelizables.
a. Encuentre la mejora en tiempo de ejecucin si el hardware de punto flotante se
hace el doble de rpido. (Solucin: Aceleracin = 1.42)

b. Encuentre la mejora en tiempo de ejecucin si se usan dos procesadores para
correr los ciclos paralelizables del programa el doble de rpido. (Solucin: Aceleracin =
1.37)
15. Suponga que, con base en cuentas de operacin (no hay gasto de tiempo en ellas), una
aplicacin numrica usa 20% de operaciones de punto flotante y 80% de operaciones
integer/control (entero/control). El tiempo de ejecucin de una operacin de punto
flotante es en promedio tres veces ms larga que otras operaciones. Se considera un
rediseo de la unidad de punto flotante para hacerla ms rpida.
a. Qu factor de aceleracin para la unidad de punto flotante conducira a 25% de
mejora global en rapidez? (Solucin: Aceleracin FLOAT= 1.91)

b. Cul es la mxima aceleracin posible que se puede lograr al modificar slo la
unidad de punto flotante? (Solucin: Aceleracin max global= 1.75 o bien 75%)

16. Busca informacin sobre las caractersticas del computador ms rpido del mundo
actualmente, de acuerdo con el ranking definido en SPEC