procesamiento paralelo - comunicaciones y sinconizaciones procesamiento paralelo comunicaciones y...

33
Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnol´ ogica Nacional, Facultad Regional Bah´ ıa Blanca 11 de Abril 461, Bah´ ıa Blanca, Argentina [email protected] http://www.frbb.utn.edu.ar/hpc/ 27 de marzo de 2016

Upload: others

Post on 13-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Procesamiento ParaleloComunicaciones y Sinconizaciones

Javier Iparraguirre

Universidad Tecnologica Nacional, Facultad Regional Bahıa Blanca11 de Abril 461, Bahıa Blanca, Argentina

[email protected]

http://www.frbb.utn.edu.ar/hpc/

27 de marzo de 2016

Page 2: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Marco Conteptual

Page 3: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Lo que Viene

• Comunicaciones [1]• Broadcast - Reduction• Reduction - Prefix• Scatter - Gather• Shift

• Sincronizaciones [2] [3]• Condiciones de carrera• Exclusion mutua• Secciones crıticas• Semaforos• Sincronizacion por barreras

Page 4: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Comunicaciones

Page 5: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Definiciones

• Ts tiempo de latencia para el comienzo de unatransferencia

• Tw tiempo de transferencia de una palabra

Page 6: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

One-to-all Broadcast All-to-one Reduction

Page 7: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

One-to-all Broadcast on a Ring

Page 8: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-one Reduction on a Ring

Page 9: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-one Broadcast on a Mesh

Page 10: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-one Broadcast on a Hypercube

Page 11: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-all Broadcast and Reduction

Page 12: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-all Broadcast on a Ring (1 of 7)

Page 13: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-all Broadcast on a Ring (2 of 7)

Page 14: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-all Broadcast on a Ring (3 of 7)

Page 15: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All-to-all Broadcast on a Hypercube

Page 16: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Scatter and Gather

Page 17: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Scatter and Gather on Hypercube

Page 18: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All to All Personalized

Page 19: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

All to All Personalized on Hypercube

Page 20: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Shift

Page 21: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Comunicaciones en Numeros

Page 22: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Resumen Comunicaciones

• Dependiendo el problema se elige la comunicacionnecesaria

• Es importante el costo de la comunicacion• Si tenemos perdidas en la comunicaciones perdemos

tiempo!!

Page 23: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Sincronizaciones

Page 24: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Procesos

• Tenemos procesos con contadores de programaseparados

• Vemos los problemas de sincronizarlos con recursoscompartidos

Page 25: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Condiciones de carrera

• Dos procesos (A y B) acceden a una variable• A lee el valor, computa y va a escribir el resultado• Antes de escribir A nota que B cambia el valor• Con el nuevo valor A recalcula y escribe

• Si B esta haciendo algo similar: CARRERA!

Page 26: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Condiciones de carrera

• Dos procesos (A y B) acceden a una variable• A lee el valor, computa y va a escribir el resultado• Antes de escribir A nota que B cambia el valor• Con el nuevo valor A recalcula y escribe• Si B esta haciendo algo similar: CARRERA!

Page 27: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Exclusion Mutua

• Exclusion Mutua: una solucion para evitar la carrera• Cuando uno accede, el otro queda excluıdo

Page 28: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Seccion Crıtica

• Implementacion de exclusion mutua• Se debe cumplir 4 condiciones:

• No se permiten dos procesos en la seccion crıtica (SC)• No se puede asumir nada respecto a las velocidades de los

procesos• Ningun proceso corriendo fuera de la SC puede bloquear al

resto• No podemos tener un procesos esperado para siempre

para entrar a la SC

Page 29: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Semaforos: un Ejemplo de Monitores [2]

Page 30: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Barreras

• La barrera detiene un proceso hasta que el resto de losprocesos que intervienen alcanzan las condicionesesperadas

• Pueden ser implementadas de varias formas: contador,mutex, variable condicional

• Hay varios tipos de barreras, ver [2]

Page 31: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Contacto

Page 32: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

¡Muchas gracias!

¿[email protected]

Page 33: Procesamiento Paralelo - Comunicaciones y Sinconizaciones Procesamiento Paralelo Comunicaciones y Sinconizaciones Javier Iparraguirre Universidad Tecnologica Nacional, Facultad Regional

Referencias

[1] G. Ananth, G. Anshul, K. George, and K. Vipin.Introduction to parallel computing, 2003.

[2] M. Herlihy and N. Shavit.The art of multiprocessor programming.Morgan Kaufmann Pub, 2008.

[3] A.S. Tanenbaum and A.S. Woodhull.Operating systems: design and implementation.1987.