Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Ex
amen Parcial
Prof. Jos
e Fiestas
Universidad Nacional de Ingeniera
15/05/15
El ex
amen dura 90 minutos
los programas se grabaran en un directorio Apellido AP/ en la plataforma
(en Apellido se ingresara el apellido del alumno)
La copia del ex
amen contendra las respuestas escritas as como todas las
anotaciones necesarias con respecto a los problemas de programacion
Un c
odigo realiza la siguiente operacion iterando un millon de veces
(x2 + y 2 )/z + a3 b2 + 6
(1)
Si el c
alculo en 10 nodos demora 1 s, calcule los FLOPS (reales) del algoritmo. Si las especificaciones de cada procesador indican FLOPS (teoricos)
= 2.5 TFLOPS, cual es la eficiencia real de cada procesador ?
1 punto
Respuesta:
La ecuaci
on realiza 10 operaciones, es decir 10 106 = 107 operaciones
#op.
=107 /106 = 10 TFLOPS. Y por
en total. Por ello, los FLOPS= tiempo
Treal
procesador, 1 TFLOP. La eficiencia E = Tteorica
=1/2.5 = 0.4, o 40 %
En la siguiente funci
on
indique en que casos (para el vector a[]) se realizara el n
umero maximo
nlog2 n
)
p
(2)
calcule la velocidad S(p) y eficiencia E(n, p), dado que el mejor algoritmo
secuencial de ordenamiento tiene un costo (nlogn). Como depende el
n
umero de procesos p del n
umero de elementos n, si el costo S(p) es
2
constante?
2 puntos
Respuesta:
La velocidad esta dada por S(p) =
(
Tseq
T (p)
(nlogn)
(nlog2 n/p)
p
= ( logn
) La
log
1
= ( logn
) Y si S(p) es constante, entonces
eficiencia es E(p) =
p
p
S(p) = ( logn ) = (1), es decir p = (logn)
Programe la reducci
on de datos con las siguientes condiciones
genere un vector de enteros, de dimension 10, y realize las siguientes operaciones con sus elementos:
promedio de todos los elementos
hallar el m
aximo y mnimo elemento
factorial de sus elementos
utilize para ello funciones MPI MIN, MPI MAX, MPI SUM y MPI PROD,
en MPI Reduce
3 puntos
Comunicaci
on bloqueada
Programe comunicaci
on P2P (MPI Send, MPI Recv) con las siguientes condiciones
un proceso enva una variable real usuarios que represente el n
umero de
usuarios del proceso actual, al proceso siguiente. Este u
ltimo acumula el
valor recibido con el suyo y lo enva al siguiente proceso. Por ejemplo,
si el proceso rank=0 tiene 1000 usuarios y el rank=1, 2000; el proceso
rank=0 enviara 1000 usuarios al proceso rank=1, el rank=1 enviara 3000
al rank=2, etc.
Defina el n
umero de usuarios por proceso como 1000+100rank. Acumule
el valor del n
umero de usuarios e imprima el resultado cada vez que un
proceso sea llamado
ejecute el programa para 5 procesos y haga una tabla con columnas: rank,
usuarios por proceso y suma acumulada
4 puntos
Ecuaci
on de calor en una dimensi
on
La distribuci
on de temperatura (u) en un cuerpo solido en funcion del tiempo
(t) y el espacio (x) esta determinada por la ecuacion
d2 u
du
k 2 = f (x, t)
dt
dx
(3)
la paralelizaci
on se llevara a cabo utilizando comunicacion P2P (MPI Send,
MPI Recv), donde cada proceso enva la solucion de su extremo izquierdo
al su vecino izquierdo, y la solucion de su extremo derecho a su vecino
derecho, y a su vez, recibe la informacion respectiva de sus vecinos. El
primer y u
ltimo proceso, sin embargo, utilizan las condiciones de frontera
ejecute el problema y prepare una tabla con la distribucion de temperaturas al final de la simulacion. I.e., columnas posicion y temperatura
8 puntos
4