Modelos de Prediccin en Computacin Paralela A' Marcela Printista Universidad Nacional del Sur - PowerPoint PPT Presentation

1 / 66
About This Presentation
Title:

Modelos de Prediccin en Computacin Paralela A' Marcela Printista Universidad Nacional del Sur

Description:

Indicarle al dise ador de hardware cual funcionalidad deber a soportar ... de soportar memoria compartida en hardware es mayor al de soportar memoria distribuida. ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 67
Provided by: dirinfo2
Category:

less

Transcript and Presenter's Notes

Title: Modelos de Prediccin en Computacin Paralela A' Marcela Printista Universidad Nacional del Sur


1
Modelos de Predicción en Computación
Paralela A. Marcela Printista Universidad
Nacional del Sur
2
Modelos de Predicción en Computación
ParalelaDirector Dr. Raul GallardCo-Director
Ing. Jorge Ardenghi
3
INDICE
  • Introducción ( 9 diapositivas)
  • Modelo PRAM (2)
  • Modelo BSP (10)
  • Modelo Colectivo (13)
  • Modelo OBSP (14)
  • Mapa Bibliográfico (opcional)
  • Trabajos Futuros

4
Paralelismo?
  • Demandas de mayor poder de computación que el que
    brinda la computación secuencial
  • Aunque la Computación Paralela debería ser la
    respuesta a estas demandas, no ha logrado
    imponerse como paradigma corriente de computación

5
Paralelismo
  • Cuál podría ser la clave que impulsará el
    desarrollo de computaciones paralelas en el
    futuro?
  • Hay tres candidatos obvios
  •          el hardware
  •          el software
  •          un modelo de computación intermediario
  •  

6
Hardware y Software
  • Mucho se ha discutido de las dos primeras
    opciones.
  • Sin embargo, pocos trabajos son los que han
    cubierto los dos objetivos principales de la
    computación paralela
  • Desarrollar software independiente de las
    tecnologías existentes
  • Desarrollar algoritmos que obtengan la máxima
    performance de la arquitectura subyacente

Objetivos Contradictorios?
7
Jerarquía de Modelos
8
Modelos de Computación
  • Definen un compromiso entre las capacidades del
    hardware y los requerimientos del software

9
Modelos de ComputaciónObjetivos
  • Indicarle al diseñador de hardware cual
    funcionalidad debería soportar
  • Indicarle al diseñador de software cual
    funcionalidad debería asumir a ser provistas por
    cada arquitectura
  • Indicarle al diseñador del algoritmos un modelo
    realístico de la máquina

10
Modelo de Computación Secuencial
  • En el ámbito de la computación secuencial
  • El modelo de Von Neumann
  • Ha actuado exitosamente como modelo subyacente
    proporcionado consistencia y coordinación entre
    los diseñadores de algoritmos, de arquitecturas
    y expertos en lenguajes

11
Modelos de Computación Paralela
  • En el ámbito de la computación paralela
  • ?
  • Ningún modelo ha logrado jugar el mismo rol y con
    el mismo éxito que el de Von Neumann en la
    computación secuencial

12
Modelos de Computación
OBJETIVOS DE DISEÑO REFLECTIVIDAD PREDICTIBILID
AD PORTABILIDAD SUMPLICIDAD
13
Modelos de Predicción en Computación
ParalelaModelo PRAM
14
PRAM
Parallel Random Access Machines
Procesamiento Sincrónico
     
     
Memoria Compartida
15
Modelo PRAM
  • Es un modelo relativamente fácil de usar y por
    esta razón ha dominado la teoría de la
    computación paralela.
  • Está lejos de ser realista, dado que actualmente
    el costo de soportar memoria compartida en
    hardware es mayor al de soportar memoria
    distribuida.
  • Las simplificaciones que el modelo asume no
    resultan adecuadas para predecir la performance
    de las máquinas paralelas actuales.
  •  
  •  

16
Modelos de Predicción en Computación
ParalelaModelo BSP
17
Modelo BSPBulk Synchronous Parallel
  • Tiene como principales objetivos
  • Simplicidad
  • Portabilidad
  • Predictibilidad

18
Computadora Genérica BSP
Red de comunicación
Pares Procesador-Memoria
19
Modelo BSP
La esencia de un enfoque BSP es el concepto de
SUPERPASO
20
Análisis del Modelo BSP
21
Modelo BSPComunicación
22
Análisis del Modelo BSP
El costo de un superpaso es
ts ? Ws gH hs LH
Finalmente el costo de un programa con R
superpasos es
TR ? s0,R ( ts )
23
Parámetros Modelo BSP
  • Una computadora BSP queda caracterizada por los
    siguientes parámetros
  • ( P, s, L, g )

        P es el número de procesadores de
la máquina BSP    s es la velocidad del
procesador    L es el costo, en steps, de
realizar una sincronización por barrera   g
es el costo, en steps/word , de entregar los
mensajes
24
Algoritmos BSP Suma de Prefijos
Técnica Logarítmica
25
Algoritmos BSPSuma de prefijos
  • main( )
  • int i
  • bsp_begin( )
  • ibsp_sum_prefix1(bsp_pid( ) 1)
  • bsp_end( )
  • int bsp_sum_prefix1(int x)
  • int i, other, partial, name,
    numprocs
  • numprocsbsp_nprocs( )
  • namebsp_pid ( )
  • bsp_pushregister (?other,
    sizeof(int))
  • bsp_sync( )
  • partialx
  • for(i1ilt numprocs i2)
  • if (nameilt numprocs)
  • bsp_put(namei, partial,
    other,0,sizeof(int))
  • bsp_sync( )
  • if (namegti) partial
    partialother
  • bsp_popregister(other)
  • return partial

hs 0 para
s1 hs 1 sizeof(int) para
s2,3 ?log p? 1 superpasos Tprefix (A0
L) ?log p? ( C0 g sizeof(int) L )
26
BSPConclusiones
  • El principio clave de BSP es considerar las
    comunicaciones y computaciones como actividades
    separadas y posiblemente ejecutadas por
    diferentes mecanismos. Los costos
    correspondientes son independientes y
    composicionales.
  • El modelo BSP se define con un número pequeño de
    características cualitativas topología uniforme
    de red, sincronización por barrier manteniendo el
    estilo bulk, y tres parámetros cuantitativos en
    número de procesadores, la latencia y throughput
    de comunicación
  • La performance de un programa dado es predecible

27
Modelos de Predicción en Computación
ParalelaModelo Colectivo
28
Computación Colectiva
Aporta una metodología eficiente para la
traslación de algoritmos con paralelismo de datos
anidados sobre arquitecturas paralelas reales Es
una forma de computación El conjunto de
procesadores puede realizar computaciones
secuenciales Explota el concepto de grupo de
procesadores Administra comunicaciones
colectivas
29
Modelo Colectivo de Computación Paralela
Modelo de Computación Colectiva (M, Col, Div)
30
Modelo Colectivo
  • Computación Colectiva ocurre en superpasos
  • Superpaso Normal
  • Ø    Computación local.
  • Ø    Ejecución de una función de comunicación
    colectiva
  • f ? Col
  • Superpaso de División
  • Ø    Ejecución de una función de partición
    colectiva
  • g ? Div
  • La máquina será dividida en r conjuntos de
    submáquinas de tamaño P0, ..., Pr-1

31
Modelo de Costo Colectivo
  • CCM distingue entre costos de división y de
    comunicación
  • Asociado con cada función de comunicación f ? Col
    hay una función de costo Tf que predice el
    tiempo invertido por el patrón f
  • Similarmente el modelo asume una función de costo
    Tg para cada patrón de división g ? Div

32
Modelo Colectivo
  • El costo ?s de un superpaso normal s es
  • ?s W Tf max Wi / i 0,,P-1 Tf (P,
    h0, ,hP-1)
  • El costo ?s de un superpaso de división s es
  • ?s Tg(P,in0 ,..,inP-1, r, out0 ,, outr-1)
  • max ?( Task0),...,?( Taskr-1)

33
Modelo Colectivo
  • MCC está caracterizado por la 5-upla
  • (P, Col, TCol , Div, TDiv)

34
1 void parFFT(Complex A, Complex B, int n)
2 Complex a2, A2 / Even terms / 3
Complex a1, A1 / Odd terms / 4 int
m, size 5 6 if(NUMPROCESSORS gt 1) 7
if (n 1) / Trivial problem / 8
b0.re a0.re 9
b0.im a0.im 10 11 else 12
m n / 2 13 size m
sizeof(Complex) 14
odd_and_even(A, a2, a1, m) 15
PAR(parFFT(a2, A2, m), A2, size, parFFT(a1, A1,
m), A1, size) 16 Combine(B, A2, A1,
m) 17 18 19 else seqFFT(A, B,
n) 21
35
Algoritmos de Computación ColectivaLa fft
36
Algoritmos de Computación Colectiva La
transformada Rápida Fourier
37
Algoritmos de Computación Colectiva La FFT
En la ejecución de la primer división
TPAR (P, 0, ...,
0, 2, n/2, ..., n/2)
38
Algoritmos de Computación ColectivaLa fft
Siguiendo el razonamiento recursivo se puede
obtener el Tiempo Total como     ? ? i 0,
log(P)-1 D n/2i   C(n/P)
log(n/P)   ? s1, log(P) ( gPAR 2s
n/P)LPAR   ? s1, log(P) F 2s-1
n/P )
39
Algoritmos de Computación ColectivaLa fft
40
Computación Colectiva Conclusiones
  • Al introducir funciones de Partición de Grupos
    aporta un método que extiende el rango de
    algoritmos a representar.
  • Es importante remarcar que el modelo es
    independiente de la plataforma de implementación
    y predice con considerable precisión los tiempos
    de ejecución de los algoritmos considerados.

41
Modelos de Predicción en Computación
ParalelaModelo Oblivious BSP
42
PUB
  • La librería
  • Paderborn University BSP - PUB
  • Básicamente provee la misma funcionalidad de BSP

43
PUB
  • Operaciones de comunicación colectivas como
    broadcast, reduce y scans
  • Particionado dinámico del grupo de procesadores
    en subgrupos (Objetos BSP)
  • Sincronización oblivia (oblivious
    syncronization)

Se produce una pérdida de confiabilidad cuando
BSP se utiliza como Modelo de Predicción del
tiempo de algoritmos PUB
44
Predicción de Programas PUB bajo BSP
45
Oblivious BSP como Modelo de Predicción de
Algoritmos PUB
  • La ejecución de un programa PUB en una submáquina
    BSP Xp0, p1, ..., pP-1 avanza en superpasos
  • Si el superpaso s finaliza en una sincronización
    oblivia
  • ?s,i pj ? X / pj envía un mensaje a pi
    durante el superpaso s ? pi
  • Si el superpaso s finaliza en una barrera
  • ?s,i X

46
Oblivious BSP como Modelo de Predicción de
Algoritmos PUB
  • El tiempo OBSP que le toma al procesador i ?X
    finalizar el superpaso s
  • ?1,i(T, X, ?) max ?j w1,j / j??1,i
    (gh1,i Lb),
  • i 0,..., P-1
  • ?s,i(T, X, ?) max ?s-1,j(T, X, ?) ws,j /
    j??s,i (ghs,i Lb)

  • s 2,..,R, i 0,..., P-1
  • donde
  • ? (?0 , ..., ?p-1) es el vector de tiempos
    iniciales
  • ws,j es el tiempo invertido en computación por
    j en el superpaso s,
  • R es el número total de superpasos y
  • hs,i es el número de palabras comunicadas por
    el procesador i en el paso s
  • hs,i max ins,j _at_ outs,j / p j ? ?s,i s
    1,...,R, i 0,1,...,P-1

47
Modelo Oblivious BSP
  • Yi es una sub-máquina
  • El tiempo que el procesador j?Yi toma para
    finalizar su trabajo en Ti ejecutado por el
    objeto BSP Yi
  • es calculado por la siguiente expresión
  • ?Ri, j (Ti , Yi , ?s-1, j ws, j ) tal que
    j? Yi , i 0,...,r-1
  • Donde
  • Ri es el número de superpasos ejecutados
    en la tarea Ti y
  • ws,j es el tiempo de computación ejecutado
    por el procesador j antes de su llamado a la
    función bsp_partition( ) en el superpaso s
    original del conjunto de procesadores

?
48
Modelo Oblivious BSP
  • ?Ri, j (Ti , Yi , ?s-1, j ws, j ) con j? Yi

49
Oblivious BSP Parámetros de Comunicación
50
Algoritmo Oblivious BSPLa Búsqueda Binaria
Procesador 0
Procesador 1
Procesador 2
Procesador 3
23
23
23
23
17
17
33
33
13
19
28
36
11
18
26
34
11
18
26
34
13
14
17
19
21
23
28
32
33
36
38
42
51
Algoritmos Oblivious BSPLa Búsqueda Binaria
Void bin_search(pbsp bsp, int d, int m)
mebsp_pid(bsp) nprocsbsp_nprocs(bsp)
for (inew_mother0 i ltm i) if
(queryi ltgkeyd megtnprocs/2 )
queryi gtgkeyd meltnprocs/2) )
tempother queryi
else querynew_m queryi
bsp_hpsend(bsp,(menprocs/2) nprocs, temp,
othersize(int)) bsp_oblsync(bsp) msg
bsp_getmsg(bsp,0) memcpy(querynew_m,
bspmsg_data(msg), bspmsg_size(msg)) new_m
bspmsg_size(msg)/sizeof(int) if (!d)
local_search(new_m, query, n, key) else
part0 nprocs/2 part1 nprocs
bsp_partition(bsp,subbsp, 2, part)
bin_search(subbsp,d-1, new_m)
bsp_done(subbsp)
52
Algoritmo Oblivious BSPLa Búsqueda Binaria
?1
?2
Seq.
?2 , i (PBS,2, ?i, s2 )
?2, i (PBS,4, ?i, s1 )
?2, i (PBS,8, ?i, s0 )
53
Algoritmo Oblivious BSPLa Búsqueda Binaria
54
Algoritmo Oblivious BSPLa Búsqueda Binaria
  ?2, P-1(PBS,P,0) log2 (P) A0m A1
g m/2 sizeof(int) Lb
(C0m/2 C1) (log2 (P) - 1)
B D SeqT  
55
Algoritmo Oblivious BSPLa Búsqueda Binaria
 
56
Modelo Oblivious BSPConclusiones
  • PUB posibilita una implementación eficiente de
    paradigmas paralelos asincrónicos (ya no es
    mandatorio realizar sincronizaciones globales)
  • El modelo Oblivious BSP introduce un enfoque
    diferente para la predicción de los tiempos de un
    superpaso considerando
  • Si el superpaso s finaliza en una sincronización
    oblivia
  • Si superpaso incluye una función de
    partición
  • El error con que predice los tiempos de ejecución
    de los algoritmos hace que el modelo pueda ser
    considerado confiable.

 
57
TRABAJOS FUTUROS
58
Trabajos Futuros
  • Extender el Análisis de la validez de OBSP
  • El Modelo OBSP
  • La Herramienta call/llac

59
BIBLIOGRAFIA
60
MODELOS
  • Rod99 Rodríguez León, C. El diseño y Análisis
    de Algoritmos Paralelos. Colección textos
    universitarios. ISBN 84-8416-220-6. Cabildo de
    Canarias. Conserjería de Educación, Cultura y
    Deportes. 1999.
  • Leopold C. Parallel and Distributing Computing..
    ISBN 0-471-35831-2. John Wiley Sons, INC.
    2001.
  • Mag95 Maggs B.M. , Matheson L., Tarjan R.
    Models of Parallel Computations A survey and
    Synthesis. Proceedings of the 28 th. Hawaii.
    International Conference on Systems Science. IEEE
    Press. 1995.
  • Ble96b Blelloch, G. E., et al. Parallel
    Algorithms. ACM Computing Surveys, Vol. 28, Nº1.
    Pp. 51-54. 1996.

61
PRAM
  • For78 Fortune S., Wyllie, J., Parallelism in
    Random Access Machines. Proc. 2nd ACM Annual
    Symp. on Theory of Computing. Pp. 114-118. 1978.
  • Qui94 Quinn M.- Parallel Computing. Theory and
    Practice. Second Edition. McGraw-Hill, Inc. 1994.
  • Rod99 Rodríguez León, C. El diseño y Análisis
    de Algoritmos Paralelos. Colección textos
    universitarios. ISBN 84-8416-220-6. Cabildo de
    Canarias. Conserjería de Educación, Cultura y
    Deportes. 1999.

MPC Mel84 Melborn K., et al. Randomized
and Deterministic Simulations of PRAMs by
Parallel Machines with restricted Granularity of
Parallel Memory. Acta Informática. Vol 21 . Pp
339-374. 1984. DRAM Lei88 Leiseron C., et
al. Communications-Efficient Parallel Algorithms
for Distributed Random-Access Machines.
Algorithmica. Vol. 3. Pp 53-77. 1988. BPRAM
Agg89 Aggarwal A, et al. Computer Latency in
PRAM Computation. En Proc. Symp. On Parallel
Algorithms and Architectures, Pp 11-21, ACM.
1989.
LPRAM Agg90 Aggarwal A, et al. Communication
complexity of PRAMs. Theorical Computer Science,
Vol. 71. Pp 3-28. 1990.
62
BSPwww.bsp-worldwide.org.
  • Val90 Valiant L.G. A Bridging Model for
    Parallel Computation. Communications of the ACM,
    33(8) Pp 103-111. 1990.
  • Ski96 Skillircorn, D.B., Hill, J., McColl, W.F.
    Questions and Answers about BSP. Oxford
    University Computing Laboratory. Report
    PRG-TR-15-96. 1996.
  • Hil97a Hill J., McColl B., Stefanescu D.,
    Goudreau M., Lang K., Rao B., Suel T., Tsantilas,
    Bisseling R. BSPLib The BSP Programming Library.
    Technical Report PRG-TR-29-97, Oxford University
    Computing Laboratory. May 1997.

E-BSP Juu95 Juurlink, B.H.H., et al. The
E-BSP Model. Incorporating Unbalancesd Com
munication and general Locality into the BSP
Model. Technical report 95-44. Leiden University.
1995 BSPRAM Tis96 Tiskin A. The Bulk
Synchronous Parallel Random Access Machine.
Proceeding of Euro-Par 96- II, volume 1124 of
Lecture Notes in computer Science, P. 327-338,
Springer Verlag. 1996.
63
LogP
  • Cul93 Culler D., Karp R., Patterson D., Sahay
    A., Schauser K.E., Santos E., Subramonian R., von
    Eicken T. LogP Towards a Realistic Model of
    Parallel Computation. Proceedings of the 4th ACM
    SIGPLAN, Sym. Principles and Practice of Parallel
    Programming. 1993.
  • Cul96a Culler D.E., Karp R., Patterson D.,
    Sahay A., Santos E., Schauser K.E., Subramonian
    R., Eicken T. LogP, a Practical Model of Parallel
    Computation. Communications of the ACM, Vol. 39,
    No.11. Nov. 1996.

Ale95 Alexandrov A., et al. LogGP
Incorporating Long Messages into the LogP
Model. Proc. Seventh Ann. ACM Sym. Parallel
Algorithms and Architectures. Pp 95-105. Jul.
1995. Cul95 Culler D.E., Liu L.T., Martin
R., Yoshikada C. LogP Performance Assessment of
Fast Network Interfaces. Technical Report.
Computer Science Division. University of
California, Berkeley. Nov 1995.
64
Computación Colectiva
Sande, F. - Modelo de Computación Colectiva Una
Metodología Eficiente para la Ampliación del
Modelo de Librería de Paso de Mensajes con
Paralelismo de Datos Anidado. PhD thesis.
Universidad de La Laguna, 1998. Gon99b
Gonzalez, J.A, et al. Collective Computing. V
Congreso Argentino de Ciencias de la Computación.
Universidad del Centro. Tandil, Argentina.
Octubre 1999. Gon00d
Gonzalez, J.A, et al. The Collective Computing
Model. Journal of Computer Science and
Technology, Special Issue Concurrent, Parallel
and Distributed Processing, PGNAUT, ISTEC.
Argentina. Octubre 2000.
Gon00c González J.A, et al. Supporting Nested
Parallelism. VI Congreso Argentino de Ciencias
de la Computación. Universidad de Tierra de
Fuego. Ushuaia. Argentina. Octubre de 2000.

65
Oblivious BSP
Gon01 Gonzalez, J.A., et al. Predicting The
Time of Oblivious Programs- Proceeding of 9th
Euromicro Workshop on Parallel on Distributed
Proccesing. Mantova. Italia. Feb/2001. Pags
363-368. Bon98 Bonorden O., Huppelshauser
N., Juurlink B., Rieping I. PUB Library.
Release 6.0- User Guide and Function reference.
University of Paderbon, Germany. 1998.
Gon01a Gonzalez, J.A., et al. Performance
Prediction of Oblivious BSP Programas EuroPar.
2001. Manchester, UK, August 28-31,
2001.Proceeding. Pags. 96-105.
66
FIN
Write a Comment
User Comments (0)
About PowerShow.com