Vous êtes sur la page 1sur 32

UNIVERSIDAD TECNOLOGICA METROPOLITANA

FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM
NOMBRE
:
__________________________________
______________
PROBLEMA 1.

( 30 ptos).

R.U.T:

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM

SOLUCIN
PROBLEMA 1. (Evaluacin algoritmo: XX ptos)
Al disear un nuevo computador, se sospecha que las llamadas a procedimientos son
operaciones muy caras. Se ha inventado un nuevo mtodo que reduce las cargas y
almacenamiento normalmente asociados con llamadas y retornos de procedimientos.
Para evaluar el nuevo mtodo se corren experimentos con y sin optimizacin usando
el mismo compilador. Los experimentos entregan la siguiente informacin:

El reloj de la versin sin optimizar es 5% ms rpido


El 30% de las instrucciones de la versin sin optimizar son cargas y
almacenamientos
La versin optimizada ejecuta 1/3 menos de cargas y almacenamientos que la
versin no optimizada. Para las dems instrucciones la cuenta dinmica de
ejecucin no se altera
Todas las instrucciones (incluido carga y almacenamiento) toma un ciclo de
reloj

SE PIDE: Cul es la mejor decisin? Justifique cuantitativamente.


Respesta:

Tenemos el tiempo que demora en ejecutar las instrucciones en el computador no


optimizado, llamado T.
Este tiempo T equivale al total de las instrucciones que se ejecutan, y como cada
instruccin toma 1 ciclo de reloj en ejecutarse, sern T instrucciones en ejecutarse.
De ellas 0.3T son instrucciones de carga y almacenamiento.
En la computadora Optimizada se ejecutan solamente 2/3 de las instrucciones de
carga y almacenamiento en la versin no optimizada. (0.3T * 2/3)
El reloj de la versin sin optimizar es 5% ms rpido que el computador optimizado,
por lo tanto un ciclo de reloj del computador optimizado equivale a 1.05T de la
computadora no optimizada.
Tomando en cuenta lo anterior, el tiempo en la computadora optimizada ser:
Por lo tanto la mejor decisin es utilizar el computador optimizado, dado que es
un 0.65% ms rpido

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM

PROBLEMA 2. (Aceleracin; XX ptos))


Considere una aplicacin de procesamiento de imgenes que consiste de:

Doce procesos: un proceso de entrada, un proceso de salida


y diez procesos de cmputo.

La tarea de entrada tiene que completarse antes que


inicien las tareas de procesamiento. Las tareas de procesamiento tienen que
completarse antes de que inicie la tarea de salida.

Cada una de las 12 tareas toma una unidad de tiempo.

Existe un solo dispositivo de entrada y un solo de salida.


a) Cul es la mxima aceleracin que se puede lograr con este problema cuando se
utilizan dos procesadores?
b) Cul es una cota superior a la aceleracin que se logra con esta aplicacin cuando
se utiliza una computadora paralela?
c) Cul es el menor nmero de procesadores para lograr la aceleracin dada en b)?
d) Cul es la mxima aceleracin que se puede lograr resolviendo 5 instancias de
este problema en dos procesadores?

Respuesta:
a) Entrada: tiempo = 1 segundo
Cmputo:2 procesadores, 10 procesos
TParalelo = 1 + 5 +1 = 7 segundos.
TSecuencial = 1 + 10 +1 = 12 segundos

tiempo = 10/2 = 5 segundos


Salida: tiempo = 1 segundo

Por lo tanto: Speed-Up = 12/7 = 1.71


b) Para lograr una cota superior el proceso de cmputo debe ser el mnimo, esto se
logra con 10 procesadores.
TParalelo = 1 + 1 +1 = 3 segundos.
TSecuencial = 1 + 10 +1 = 12 segundos
Por lo tanto: Speed-Up 12/3 = 4
c) El nmero mnimo es 10 procesadores.
d) 5 procesos en 2 procesadores tiempo = 3 segundos
Para lograr la mxima aceleracin los 5 procesos restantes se deben realizar en el
menor tiempo posible, es decir, en 1 segundo (con 5 procesadores).

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM
Entrada: tiempo = 1 segundo.
Cmputo: 2 procesadores, 5 procesos tiempo = 3 segundos
5 procesadores, 5 procesos tiempo = 1 segundos
Salida:
tiempo = 1 segundo
TParalelo = 5 segundos.
TSecuencial = 1 + 10 +1 = 12 segundos.
Speed-Up = 12/5 = 2.4

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM
5.- El problema del Flujo de Potencia Elctrica o Flujo de Carga ha sido exhaustivamente
estudiado en el mbito de la ingeniera elctrica por su gran importancia para la planificacin
y el mantenimiento de los grandes sistemas de distribucin de energa elctrica. Por esto, se han
realizado diversos estudios acerca de cmo se pueden mejorar distintos sistemas elctricos
(correspondientes a distintos estndares) mediante la paralelizacin de los cdigos que manejan
dichos sistemas. Para ello se dispuso del modelo paralelo de la Figura 1 para as evaluar sus
prestaciones en comparacin con un cmputo secuencial de dichos cdigos.

Figura 1. Plataforma computacional.

La Figura 1 muestra la plataforma computacional utilizada para poner a prueba la


resolucin paralela de los cdigos de los sistemas. Se trata de una red de 5 PCs
con Procesadores Pentium II de 400MHz, 32 MB de memoria RAM,
interconectados por una red Ethernet de 10 Mbps, corriendo el sistema Operativo
Linux Red Hat versin 6.0, sobre la que se instal el MPI (Message Passing
Interface) para Lenguaje C, implementacin MPICH [20]. Todas las mquinas
utilizadas son de idnticas caractersticas, una de ellas haciendo el papel de
Maestro y de Servidor de NFS y NIS. Las dems hacen el papel de esclavos.
La siguiente tabla muestra los tiempos de ejecucin secuencial y paralelo de los cdigos de cada
sistema:

SISTEMA
IEEE-14
Monticelli - 30
Combinado - 88

TIEMPO SECUENCIAL
(segundos)
0,68
0,82
16,18

TIEMPO PARALELO (segundos)


0,405
0,514
11,982

Adems, cabe considerar que los resultados obtenidos para el tiempo


paralelo, se realizaron con 3 procesadores, 1 maestro y 2 esclavos (el
procesador maestro tambin particip del clculo). Se pide:
a) Calcular cual es la aceleracin (Speed-up) alcanzada para cada sistema.
b) Grficar la aceleracin adquirida en funcin del nmero de procesadores utilizados.
c) Determinar cual es la eficiencia de cada sistema y explicar cual es el ms eficiente y
porqu.
Respuesta:

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM
a)

El Speed-up para cada sistema se calcula mediante la siguiente frmula:

SPEED UP

Tiempo de ejecucin sec uencial


Tiempo de ejecucin paralelo

Por lo tanto:

SPEED UP ( IEEE 14)

0.68
1.679
0.405

SPEED UP( Monticelli 30)

0.82
1.595
0.514

SPEED UP(Combinado 88)

16.18
1.350
11.982

b) El siguiente grfico, ilustra cual es la aceleracin de cada sistema en funcin del nmero
de procesadores utilizados.

c)

La eficiencia del sistema E(n), para un sistema con n procesadores se define como:

E ( n)

SPEED UP
Nmero de Pr ocesadores

Por lo tanto, la eficiencia de cada sistema es la siguiente:


IEEE-14

E (3)

1.679
0.56
3

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM
Monticelli-30

E (3)

Combinado-88 E (3)

1.595
0.532
3
1.350
0.45
3

En vista a los resultados anteriores, se puede concluir que el sistema ms eficiente corresponde al IEEE-14 debido a
que se acerca mucho ms a la medida de eficiencia mxima (E(n)=1) que se obtiene cuando todos los procesadores
estn siendo completamente utilizados durante todo el periodo de ejecucin.

UNIVERSIDAD TECNOLOGICA METROPOLITANA


FACULTAD DE INGENIERA
DEPTO. COMPUTACIN E INFORMTICA

UTEM
PROBLEMA 1.
Para la malla 2-D de k2 procesadores que se muestran en la figura 1, establezca el
tiempo mnimo para hacer un broadcast de un mensaje compuesto por n paquetes que
inicialmente estn en el nodo Po de la red tal como se muestra en la figura. Considere
que el tiempo de transferencia de un paquete entre un par de nodos es una unidad de
tiempo.

SOLUCION:

El dimetro 0 est dado por = 2(k 1). La forma ms eficiente es usar


un pipelining de etapas tal como se muestra en la figura siguiente:

Como hay que distribuir

n mensajes, t m n i m o

= n 1 + 2(k 1).

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

PROBLEMA 1.

Multiplicacin de matrices

Algunos algoritmos paralelos para el producto matriz-matriz se basan en


particiones de las matrices A y B. As, si suponemos que las matrices A y B
estn particionadas de la forma:

hay toda una variedad de algoritmos. Por ejemplo, si p=s*t, el nmero de


bloques en C, entonces estos st bloques pueden ser calculados en paralelo
teniendo en cuenta una buena asignacin de los bloques de A y B a los
procesadores.
Casos especiales de ste son cuando s=1; es decir, cuando A est particionada
en grupos de columnas y cuando t=1; es decir, cuando B est particionada en
grupos de filas.
PROBLEMA 4.1

1. Particionar la matriz A en 6 bloques de tamao 3x3 y la matriz B en 4 bloques de orden 3x3.


Simular un producto AB en paralelo sobre 6 procesadores tal y como se ha aplicado
anteriormente, indicando el almacenamiento de cada matriz en cada uno de los procesadores
y dnde queda almacenado el resultado.

2. (caso s=1) Particionar la matriz A en dos bloques de grupos de columnas de


tamaos 9x3 y la matriz B igual que en el apartado anterior. Simular un
producto AB en paralelo sobre 2 procesadores tal y como se ha explicado
anteriormente, indicando el almacenamiento de cada matriz en cada uno de los
procesadores y dnde queda almacenado el resultado.
3. (caso t=1) Particionar la matriz B en dos bloques de grupos de filas de
tamaos 3x6 y la matriz A igual que en el apartado (i). Simular un producto AB
en paralelo sobre 3 procesadores tal y como se ha explicado anteriormente,
indicando el almacenamiento de cada matriz en cada uno de los procesadores
y dnde queda almacenado el resultado.
OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Otro caso sera cuando r=1; es decir, cuando A est particionada en bloques formados por
grupos de filas y B est particionada en t bloques formados por grupos de columnas.

Si usamos p=s*t procesadores con los bloques de A y B almacenados tal y como indica la
propia estructura de los bloques de la matriz resultado C, tenemos que cada uno de estos
bloques resultado pueden ser calculados en paralelo en un procesador.

RESPUESTA:

PROBLEMA 4.2
Considerar las matrices del ejercicio 5.1. Particionar la matriz en tres (3) bloques de orden 3x6
y la matriz B en dos (2) bloques de orden 6x3. Simular un producto A*B en paralelo sobre 6
procesadores tal y como se ha explicado anteriormente, indicando el almacenamiento de cada
matriz en cada uno de los procesadores y dnde queda almacenado el resultado.

PROBLEMA 4.3
El producto C = A*B, donde A es de orden m*n y B es de orden n*q, puede ser descrito,
entre otros, por los dos siguientes algoritmos:

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Estudiar cul de ellos corresponde al algoritmo basado en combinaciones lineales y cul al


algoritmo basado en productos internos. Incluir un ejemplo que muestre la conclusin a la que
se llega.
Respuesta:
4.1
A continuacin hacemos el planteamiento matemtico del enunciado, donde podemos ver las matrices iniciales y como
se agrupan. Cada SubMatriz Aij y Bij de dimensin de 3x3. Luego podemos ver como son los resultados que deben
obtenerse. En cada Cij en la matriz C

a11 K

M O
a L
91

a16 b11 K

M M O
a96
b61 L

b 16

b 66

A11 A12

B11
A21 A
22
B21
A

31 A32

B12
B22

C11 A11 B11 A12 B21

C21 A21 B11 A22 B21


C A B A B
31 11
32 21
31

C12 A11 B12 A12 B22

C22 A21 B12 A22 B22


C32 A31 B12 A32 B22

Haciendo una simulacin, fijaremos algunos factores, con se requiere en el enunciado se utilizaran 6 procesadores, y
separaremos el proceso en tres etapas, una primera etapa de distribucin, en la que se asignara la carga a cada
procesador, el procesador uno ser el maestro en esta etapa, y asignara un proceso y los datos para el proceso a cada
procesador.

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Luego de la asignacin de carga, cada procesador realizar el clculo correspondiente, teniendo acceso a los datos
necesarios.
Proc.

Matrices Almacenadas

A11B11 A12 B21

A11B12 A12 B22


A21B11 A22 B21
A21B12 A22 B22
A31B11 A32 B21
A31B12 A32 B22

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

4.2
En primer lugar obtendremos de las matrices A y B las submatrices: A1, A2, B1, B2, B3 y B4 que poseen la siguiente
estructura:

a11 K

A M O
a L
91

a16

M
a96
9 x6

a11 K
A1 M O
a L
91
b11 K

B M O
b L
61

a13
a14 K

M
y A2 M O

a93
9 x3
a94 L

a 16

a 99

9x3

b16

M
b66
6 x6

b11 b12
B1 b21 b22
b b
31 32

b13
b14

b23
y B 2 b24

b33
3x3
b34

b15
b25
b35

b 16
b26

b 36

b41 b42 b43

y B3 b51 b52 b
53

b
b
61
62
63

3x3

3x3

b44
y B 4 b54
b
64

b45
b55
b65

b46
b56

b66
3x3

La multiplicacin de las matrices A y B, da como resultado una matriz C de dimensiones 6x6. Esta matriz resultado ser
dividida de igual forma que la matriz B:
OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

c11 K

C M O
c L
61

c16

M
c66
6 x6

c11 c12
C1 c21 c22
c
31 c32

c13
c14

c23
y C 2 c24

c33
3x3
c34

c15
c25
c35

c 16
c26

c 36

c41 c42 c43

y C 3 c51 c52 c
53

c62 c63
61

3x3

3x3

c44
y C 4 c54
c
64

c45
c55
c65

Por lo tanto, la distribucin de las matrices en los procesadores ser:


Proc.

Matrices Almacenadas
C1 y C2

C3 y C4

La simulacin del clculo de la multiplicacin de las matrices A y B se explicar en el siguiente diagrama:

4.3
En primer lugar obtendremos de las matrices A y B las submatrices: A1, A2, A3, A4, A5, A6, B1 y B2 que poseen la
siguiente estructura:

OMV

CP 2012-I, P2 UTEM

32

c46
c56

c66
3 x3

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

a11 K

A M O
a L
91

a16

M
a96
9 x6

a11
A1 a21
a
31

a12
a22
a32

a71

A3 a81
a
91

a13
a41 a42 a43
a14 a15 a 16

a23
A2 a24 a25 a26
A3 a51 a52 a
53

a33 3 x 3
a61 a62 a63
a34 a35 a 36 3 x 3
a73
a74 a75 a 76

a83
A4 a84 a85 a86

a93
3 x3
a94 a95 a 96 3 x 3

a72
a82
a92

b11 K
B M O
b L
61

3 x3

a44

A4 a54
a
64

a45
a55
a65

b16
M

b66
6 x6

b11 b12

B1 b21 b22
b b
31 32

OMV

b13
b23
b33

b14
b24
b34

b15
b25
b35

b16
b41 b42

b26
y B 2 b51 b52

b36
3x6
b61 b62

b43 b44
b53 b54
b63 b64

b45
b55
b65

b 46

b56
b 66

3x6

CP 2012-I, P2 UTEM

32

a46
a56

a66 3 x 3

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

PROBLEMA N1.

Mtricas Hipercubo

Considere un hipercubo de 10 dimensiones (1.024 procesadores), Asuma que cada par vecino
en el toro, hay una conexin de 120 Mb/s en cada direccin (los enlaces en el hipercubo son
ms grandes, de modo que son normalmente menor su velocidad). Adems, asuma que cuando
un mensaje es enviado a travs de la red, y si no hay congestin, el mensaje toma 7*10-8
segundos para ir a travs de cada switch.
a. Cul es ancho de biseccin de esta mquina?.
Dimensin K=10
Ancho de Biseccin = 2(k-1) = 2(10-1) = 29 = 512
b. Cul es el dimetro de la red (distancia mxima entre dos cualesquiera de los nodos)?.
Dimetro de la red = Dimensin = K = 10
c. Cul es la latencia mxima de la red en ciclos de reloj, asumiendo que no hay
congestin?
Tiempo de transferencia = latencia + tamao/tasa de transferencia
Latencia = Tiempo Transf. tamao/tasa de transferencia
Latencia =
7*10 -8
p/ 120

d. Un profesor de Arquitectura Computacional Paralela debe decidir que red utilizar para
su mquina de 1.024 procesadores, el toroide o hipercubo. Si el costo de la red es
proporcional al nmero total de conexiones en la mquina (asuma que cada conexin
en la red toroidal e hipercubo tienen costos similares), cul red sugerira usted?.
Asuma que el profesor le interesa minimizar la relacin precio-desempeo.
Por supuesto, en la realidad la decisin es mucho ms compleja, pero esto les dar una
idea de los tipos de decisiones que deben efectuarse cuando se disea una red para una
mquina paralela.

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Problema N2.Programa paralelo y memoria distribuida


Considere un programa paralelo para memoria distribuida cuyo modelo de rendimiento est
expresado como

si se incrementa el nmero de procesadores, derive una expresin para determinar el mejor


nmero de procesadores para resolver un problema de tamao n fijo.

Tp ( n)

an 2
p n * p ,
p

Tp ( n) an 2

n
p
p2
an 2
n 0
p2
an 2
p2
n
p ( n)

an 2
n

p ( n) n *

a
n

El nmero de procesadores quedara expresado en funcin de n, y se tomara la


raz positiva ya que es imposible un nmero negativo de procesadores:

Problema N1. p (n) n *

OMV

1seg
100 seg n * 0.001seg

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Optimal cost

PROBLEMA 2.

Para un problema dado, el tiempo de procesamiento serial (Ts) es n3tc. El tiempo de


procesamiento paralelo (Tp) de un algoritmo paralelo para este problema es Tp=tcn3/p + ts log
p+tw n1.5/p
(a)

Computar las expresiones para el speedup, la eficacia y el coste (producto pTp) para
el algoritmo A.
Es ptimo el costo del algoritmo para p=n2
Es ptimo el costo del algoritmo para p=n2.5
Es ptimo el costo del algoritmo para p=n3
Cul es el nmero mximo de los procesadores para los cuales el algoritmo sigue
siendo de costo ptimo?

(b)
(c)
(d)
(e)

RESPUESTA: como Ts N Tc , es el tiempo de procesamiento secuencial de un algoritmo A


3

A)

N 3TC

Tp

P Ts log( p)

Tw N 1.5 , donde
P

P: numero de procesadores
Ts: tiempo de procesamiento secuencial
Luego

N 3TC
N 3TC

SpeeUP=

Ts

Tp

P Ts log( p )

P Ts log( p)

Tw N

Tw N 1,.5

P N TC log( p)

Tw N 1,5
P

1, 5

SpeedUp
P N 3TC log( p )
Eficiencia=
=
N procesador es

Tw N 1,5
P

N 3TC

CostoP =

P Ts log( p )

Tw N 1,.5

N 3TC

Tw N 1,5 1
P Ts log( p)

P P

N 3TC P

P Ts log( p )

Tw N 1,5
P

N 3TC

P Ts log( p )

Tw N 1,5 1

P P

N 3TC

T N 1,5
N3
TC log( p) w 3
P
P2

2
2,5
3
B) Luego realizaremos el anlisis para P N ; N ; N

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Si P= N2 tendremos que el costo:

N 3TC

N 3TC

T N 1,5
T N 1,5
N3
N3
TC log( p ) w 3
1 2 TC log( p) w 3
P
N
N2 2
P2
N 3TC
N 3TC

Tw
Tw N 1,5
2
2
1

NT
log(
N
)

1 NTC log( N )
C
3
3
2 2
N
N2

..

N 3TC

Tw N 1,5

1 NTC log( N 2 )

3
2 2

Si P= N2.5 tendremos que el costo:

N 3TC

T N 1,5
N3
TC log( p ) w 3
P
P2

N 3TC

Tw N 1,5
N3
T
log(
p
)

C
3
N 2,5
N 2,5 2

N 3TC
Tw N 1,5

1 N 0, 5TC log( N 2,5 )

N TC

Tw N

1 N 0 ,5TC log( N 2 )

5
2

3
2

N TC

1, 5

3
2

5
2

1 N 0 ,5TC log( N 2 )

Tw
N

11
4

Si P= N3 tendremos que el costo:

N 3TC

T N 1,5
N3
TC log( p) w 3
P
P2
N 3TC

1 1TC log( N 3 )

Tw N

3
2

3
3 2

N 3TC

Tw N 1,5
N3
T
log(
p
)

C
3
N3
3 2
N
3
N TC

T
1 TC log( N 3 ) w3
N
1

N 3TC
1 1TC log( N 3 )

Tw N 1,5

3
3 2

Luego bastar con analizar cada uno de los denominadores para obtener algn resultado
referente al costo optimo, el que posea mayor denominador, es el que presenta un menor
costo
Luego como para P= N2 el costo es menor ya que el valor del denominador crece, ver grafico
anexo

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

i.

A problem comprises two components, A and B, A can be solved in 1000


seconds on computer C1 and in 5000 seconds on computer C2; B requires 4000 and 2000
seconds on C1 and C2 , respectively. The two computers are connected by a 1000-km
optical fiber link that can transfer data at 100 MB/sec with a latency of 10 msec. The two
components can execute concurrently but must transfer 10 MB of data 10,000 times during
execution. Is it cheapest (in terms of computational resources consumed) to solve then
problem on computer C1, on computer C2, or on both computers together?

Respecto a la resolucin del problema, en dos procesadores distintos se


muestra el siguiente cuadro resumen.
PROCESAMIENTO SEPARADO
Procesador
C1
C2
algoritmo
A
1.000
5.000
B
4.000
2.000
Tiempo TOTAL
5.000
7.000

Donde se puede observar claramente que la ejecucin del programa en el


procesador C1, presenta menores costos en trminos de consumos de recursos
computacionales.
Adems como Tmsg= Ts+ TwL donde
L: tamao del dato
Ts: tiempo en iniciar comunicacin
Tw: tiempo en transferir palabras
En este caso hemos de considerar lo siguiente:
L: 10 MB datos
Ts: 10-3 segundos
10 Mb
0,1seg
Tw: 100 Mb
seg

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Luego si consideramos la resolucin de manera conjunta eligiendo los tiempos


optimo de procesamiento entre los dos procesadores tendremos que:
PROCESAMIENTO CONJUNTO
A
B
tiempo TOTAL
tiempo transmisin 1 MSG
DATOS TRANSMISION
latencia
distancia
tasa de transferencia
Tamao Dato
N DATOS
tiempo de transmisin
TIEMPO TOTAL DE
TRANSMISION DE 10.000
DATOS

1.000
2.000
3.000
0,10100000 seg

0,001000000
1.000
100
10
10.000

seg
kms
Mbit/seg
Mbit
datos

0,10 seg

1.010 segundos

Finalmente el tiempo estimado en transmitir 10.000 veces este mensaje es de


1.010 segundos.
Por lo tanto la ejecucin del problema en ambos procesadores presenta un
costo en recursos igual a 4010 segundos, lo cual es aun menor al costo en procesar
solo en el procesador C1.
Por lo tanto nos inclinamos por aquella opcin que presenta menor costo en
trminos de consumo de recursos, es decir por el procesamiento conjunto del
problema.

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

PROBLEMA 1. (Algoritmos y computacin paralela, 20%)


Considere el problema de sumar n nmeros usando n elementos de procesamiento. Si n es potencia de
dos, se puede realizar esta operacin en log n pasos propagando sumas parciales a lo largo de un rbol
lgico de procesadores.
En la figura se muestran los pasos necesarios. ij denota la suma de los nmeros etiquetados desde i
hasta j. Si una adicin toma un tiempo constante de tc y comunicar una palabra cuesta ts + tw, se
tiene entonces que el tiempo paralelo

Se sabe que:

El tiempo secuencial es Ts = (n) y la aceleracin es S = ( n / log n)


El esquema operacional general puede representarse por las siguientes fases
operacionales:
(a)

Distribucin de datos iniciales y 1er. fase comunicacional.

(b)

2 fase comunicacional.

(c)

3er. fase comunicacional.

(d)

4o. fase comunicacional.

(e)

OMV

Acumulacin de la sumatoria en el el elemento de procesamiento 0 antes de la comunicacin final.

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

Considerando el esquema algortmico anterior


Dado lo anterior y la necesidad de implementar el algoritmo en una malla de N x N x Z, considerando
que la malla se descompone en la dimensin horizontal como se muestra en la siguiente figura y en la que
cada tarea trabaja sobre una submalla con N x N/P x Z puntos.

y, adems:
cada tarea lleva a cabo el mismo cmputo sobre cada punto asignado en cada paso de iteracin del
algoritmo.

Se pide:
a) el tiempo de cmputo (Tcomp) para cada paso
b) el tiempo de comunicacin (Tcomm)
c) el tiempo total de la aplicacin paralela (Tp)
d) la aceleracin o Speedup
e) la eficiencia

SOLUCIN
a)

el tiempo de cmputo (Tcomp) para cada paso

Sea tc es el tiempo medio de cmputo por punto, entonces:

b)

el tiempo de comunicacin (Tcomm)


Cada tarea intercambia 2NZ puntos con dos vecinos, por lo tanto cada tarea enva dos mensajes
con 2NZ puntos por mensaje. El tiempo de comunicacin puede expresarse como:

c)

el tiempo total de la aplicacin paralela (Tp)

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

d)

la aceleracin o Speedup

e)

la eficiencia

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

PROBLEMA 1.

(40 ptos.).

PROBLEMAS CORTOS

1. Cuntos cubos conectados con ciclos se pueden construir con 48 nodos?; cules son
los tamaos de los ciclos?

2. Un grupo de alumnos de Computacin Paralela, desea construir un cluster, para solventar


los gastos deciden formar una empresa dedicada a la mantencin de jardines en Macul.
Ellos desean aplicar la llamada jardinera de alto desempeo trabajando en paralelo
cuando sea posible.
Las tareas que se deben realizar son: cortar el pasto, orillar el pasto, verificar que los
rociadores funcionen y desmalezar las tazas de las plantas.
Qu tipo de paralelismo estn presente en estas tareas, si se asignan 4 alumnas a cortar el pasto, 2 a
orillar, 3 a desmalezar y una a revisar los rociadores?

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

3. La Figura siguiente, muestra dos redes de interconexin llamadas dinmicas por la

capacidad de cambiar electrnicamente su configuracin. La figura a) corresponde a una


topologa de bus, mientras que la b) a una topologa denominada crossbar.

Para ambas topologas, considerando n procesadores, determine, fundamentando su respuesta, los


siguientes parmetros:
a. Dimetro
b. Ancho de biseccin

4. Escriba un algoritmo para obtener la matriz transpuesta de una matriz nxn en un


multiprocesador UMA con p procesadores.
a.
b.
c.
d.
e.

OMV

Especificar:
El cdigo,
la granularidad,
el costo, y
discuta el balance de carga.

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

PROBLEMAS CORTOS

5. Cuntos cubos conectados con ciclos se pueden construir con 48 nodos?; cules son
los tamaos de los ciclos?
RESPUESTA:

6. Un grupo de alumnos de Computacin Paralela, desea construir un cluster, para solventar


los gastos deciden formar una empresa dedicada a la mantencin de jardines en Macul.
Ellos desean aplicar la llamada jardinera de alto desempeo trabajando en paralelo
cuando sea posible.
Las tareas que se deben realizar son: cortar el pasto, orillar el pasto, verificar que los
rociadores funcionen y desmalezar las tazas de las plantas.
Qu tipo de paralelismo estn presente en estas tareas, si se asignan 4 alumnas a cortar el pasto, 2 a
orillar, 3 a desmalezar y una a revisar los rociadores.?
RESPUESTA:
Desmalezar y cortar el pasto se pueden hacer simultneamente: Paralelismo
de Control.
A su vez cada una de estas tareas son paralelizables: Paralelismo de Datos.

Tambin hay una relacin de precedencia: antes de revisar los rociadores,


las dems tareas deben estar listas.

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

7. La Figura siguiente, muestra dos redes de interconexin llamadas dinmicas por la

capacidad de cambiar electrnicamente su configuracin. La figura a) corresponde a una


topologa de bus, mientras que la b) a una topologa denominada crossbar.

Para ambas topologas, considerando n procesadores, determine, fundamentando su respuesta, los


siguientes parmetros:
a. Dimetro
b. Ancho de biseccin

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

8. Escriba un algoritmo para obtener la matriz transpuesta de una matriz nxn en un


multiprocesador UMA con p procesadores.

Especificar:
a.
El cdigo,
b.
la granularidad,
c.
el costo, y
d.
discuta el balance de carga.

PROBLEMA 3.
OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

PROBLEMA 4.
Un mtodo para aproximar Pi es lanzar dardos sobre un tablero cuadrado con un cuarto de
circunferencia inscrita de radio 1 (ver figura). Para estimar
frmula:

=4*

consideramos la siguiente

Numero de dardos dentro del circulo


Numero de dardos dentro del cuadrado
(0,1)

(0,0)

(1,0)

La idea es lanzar los dardos al tablero en forma aleatoria (x,y) y contar los que caen dentro
del circulo con respecto al total. A mayor nmero de lanzamientos tenemos una mejor
aproximacin.
Escriba un algoritmo paralelo (utilizando las primitivas de la plataforma que utiliz en el
laboratorio) para m procesadores, donde cada proceso se encargara de generar n
lanzamientos y contar la cantidad de aciertos

km

dentro del cuarto de circunferencia. El

programa principal se encargar de lanzar los m procesos para posterior recibir el


resultado de los km de cada proceso paralelo y calcular la aproximacin de Pi mediante la
frmula:

Pi = 4 * ( Suma de los

km) / (m * n)

Donde:
m:
n:

Nmero de procesadores.
Nmero de lanzamientos (Para todos los procesos es el mismo)

km: Total de aciertos del proceso m.

OMV

CP 2012-I, P2 UTEM

32

ASIGNATURA: COMPUTACIN PARALELA


SEMESTRE : II-2012 INF-5141 - 2141
EVALUACIN: NUMERO 2 (P2) - 23/Oct/2012

DEPTO. DE INFORMATICA Y COMPUTACION

OMV

CP 2012-I, P2 UTEM

32

Vous aimerez peut-être aussi