Procesamiento ParaleloComunicaciones y Sinconizaciones
Javier Iparraguirre
Universidad Tecnologica Nacional, Facultad Regional Bahıa Blanca11 de Abril 461, Bahıa Blanca, Argentina
http://www.frbb.utn.edu.ar/hpc/
27 de marzo de 2016
Marco Conteptual
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
Comunicaciones
Definiciones
• Ts tiempo de latencia para el comienzo de unatransferencia
• Tw tiempo de transferencia de una palabra
One-to-all Broadcast All-to-one Reduction
One-to-all Broadcast on a Ring
All-to-one Reduction on a Ring
All-to-one Broadcast on a Mesh
All-to-one Broadcast on a Hypercube
All-to-all Broadcast and Reduction
All-to-all Broadcast on a Ring (1 of 7)
All-to-all Broadcast on a Ring (2 of 7)
All-to-all Broadcast on a Ring (3 of 7)
All-to-all Broadcast on a Hypercube
Scatter and Gather
Scatter and Gather on Hypercube
All to All Personalized
All to All Personalized on Hypercube
Shift
Comunicaciones en Numeros
Resumen Comunicaciones
• Dependiendo el problema se elige la comunicacionnecesaria
• Es importante el costo de la comunicacion• Si tenemos perdidas en la comunicaciones perdemos
tiempo!!
Sincronizaciones
Procesos
• Tenemos procesos con contadores de programaseparados
• Vemos los problemas de sincronizarlos con recursoscompartidos
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!
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!
Exclusion Mutua
• Exclusion Mutua: una solucion para evitar la carrera• Cuando uno accede, el otro queda excluıdo
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
Semaforos: un Ejemplo de Monitores [2]
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]
Contacto
¡Muchas gracias!
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.
Top Related