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

Post on 13-Jul-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Procesamiento ParaleloComunicaciones y Sinconizaciones

Javier Iparraguirre

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

jiparraguirre@frbb.utn.edu.ar

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!

¿Preguntas?jiparraguirre@frbb.utn.edu.ar

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