Sei sulla pagina 1di 2

Apellido y nombre:

(imprenta maysculas)

Parcial de Arquitectura de Computadoras y Tcnicas Digitales 28 de mayo de 2013


1.- Un programa presenta el perfil de paralelismo de software de la figura a). Se ejecuta en una
multiprocesador compuesto por 10 procesadores usado para la ejecucin de diversas aplicaciones. En todo
momento no todos los procesadores estn disponibles para un programa determinado de modo que, al
momento de la ejecucin del programa en cuestin el perfil de disponibilidad de hardware es el mostrado en
la figura b) y responde a la funcin P(t) = (t mod 10)+1, con P(t), cantidad de procesadores para el tiempo t.
En estas condiciones determine:
a) Paralelismo medio.
b) Carga de trabajo para un procesador ejecutando 1 sola instruccin por ciclo.
c) Carga de trabajo del programa en el perfil de hardware dado, donde cada procesador ejecuta una
instruccin por ciclo de reloj.
d) Eficiencia de uso del sistema del punto c) (segn el perfil de HW) y
e) Aceleracin del procesador del punto c) respecto de la del punto b)
12

p
a
r
a
l
e
l
i
s
m
o

p
a10
r
a
l 8
e
l 6
i
s 4
m
o

2
1

10

5
tiempo

a) perfil de software

15

12
10
8
6
4
2
1

10

15

tiempo

b) perfil de hardware

2.- Muestre la ejecucin del siguiente conjunto de sentencias en un procesador superescalar de grado 2 con
emisin fuera de orden y ventana de 4 instrucciones (estacin de reserva), muestre el estado del ROB para
cada ciclo de reloj hasta terminar. Se cuenta con dos unidades funcionales multifuncin. Determine el
tamao ptimo del ROB de acuerdo a lo visto en la teora. Calcule la aceleracin, si existe, respecto de la
versin secuencial.
S1: ADDD r1,r2,r5
S2: MULD r2,r2,r3
S3: DIVD r1,r2,r5
S4: STD (r2),r2
S5: DIVD r7,r1,r3
S6: LDD r4,(r2)
S7: DIVD r3,r3,r5
S8: ADDD r2,r2,r7
S9: STD (r3),r2
S10: ADDD r4,r2,r7

Suponga las siguientes latencias


ADDD: 2 ciclos
MULD: 4 ciclos
SUBD: 3 ciclos
DIVD: 7 ciclos
LDD/STD: 5 ciclos

3.- Aceleracin mxima en loops


Para el siguiente fragmento de cdigo complete los siguientes puntos:
i. Cree el grafo de dependencias y etiquete los arcos con el formato [Tk, Ck]. (prolijo en esta hoja)
ii. Muestre todas las trazas analizables a partir del grafo.
iii. Encuentre la traza crtica y justifique su seleccin.
iv. Encuentre la aceleracin mxima.
v. Muestre la ejecucin sobre 2 procesadores para alguna traza paralelizable.( solo 2 o 3 iteraciones )

s1:
s2:
s3:
s4:
s5:
s6:

Tiempos:
Div
Add
Asig
Mul

aux = i = acum = 0;
while (aux < 3003) {
i++;
total[i] = total[i] + total[i-1];
acum = ( prom[i-2] + acum ) / 2;
aux = i * 3;
prom[i] = acum;
}
out = total[i] + aux + prom[i];

:
:
:
:

5
2
1
4

ciclos
ciclos
ciclo
ciclos

S4
S1
S5

S3

S2

S6

4.- Responda las siguientes preguntas con respuestas breves, concisas, legibles y claramente redactadas.
a)
b)
c)
d)
e)
f)

Enumere que objetivos se persiguen con el procesamiento paralelo


Cul es la diferencia entre un pipeline escalar y un superescalar
Muestre en diagrama las diferentes formas de paralelismo con los subtipos de arquitecturas de
cada una de ellos
Qu etapas o mdulos de un superescalar detectan o eliminan los cinco tipos de dependencias
entre instrucciones?
Cul es la diferencia conceptual entre el Orden Secuencial y la Consistencia Secuencial para
un programa dado?
Qu objetivos persiguen las tcnicas de planificacin de lazos?

Potrebbero piacerti anche