Tema 4: SISTEMAS BASADOS EN PASO DE MENSAJES

Tema 4: SISTEMAS BASADOS EN PASO DE MENSAJES Tema 4: SISTEMAS BASADOS EN PASO DE MENSAJES

27.01.2015 Views

2.2. Sentencias no bloqueantes 2.2.2. Send-Receive no bloqueante buferizado • Emisor inicia una operación de DMA y retorna inmediatamente. – Los datos se vuelven seguros en el momento en que DMA completado. • En el receptor, “receive” inicia la transferencia desde el búfer del emisor a la dirección destino en el receptor. • Efecto: reducir el tiempo durante el cual los datos son inseguros. • MPI implementa tanto operaciones bloqueantes como no bloqueantes. – Operaciones bloqueantes facilitan una programación más fácil y segura. – Operaciones no bloqueantes permiten optimizar el rendimiento al enmascarar sobrecargas de comunicación.

3. Espera Selectiva • Los modelos basados en paso de mensajes imponen ciertas restricciones – No basta con send y receive para modelar la semántica deseada. • Productor Consumidor con búfer de tamaño fijo – Se asumen operaciones bloqueantes sin búfer – Problema: Acoplamiento forzado entre los procesos PROC Productor { while (true){ .... Produce (&dato) send (&dato,1,Consumidor) ....} } PROC Consumidor { while (true){ .... receive (&dato,1,Productor) Consume (dato) ....} }

2.2. Sentencias no bloqueantes<br />

2.2.2. Send-Receive no bloqueante buferizado<br />

• Emisor inicia una operación de DMA y retorna inmediatamente.<br />

– Los datos se vuelven seguros en el momento en que DMA<br />

completado.<br />

• En el receptor, “receive” inicia la transferencia desde el búfer<br />

del emisor a la dirección destino en el receptor.<br />

• Efecto: reducir el tiempo durante el cual los datos son<br />

inseguros.<br />

• MPI implementa tanto operaciones bloqueantes como no<br />

bloqueantes.<br />

– Operaciones bloqueantes facilitan una programación más fácil y<br />

segura.<br />

– Operaciones no bloqueantes permiten optimizar el rendimiento al<br />

enmascarar sobrecargas de comunicación.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!