13.07.2015 Views

ALGORITMOS DE BALANCE DE CARGA CON MANEJO DE ...

ALGORITMOS DE BALANCE DE CARGA CON MANEJO DE ...

ALGORITMOS DE BALANCE DE CARGA CON MANEJO DE ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.2. Algoritmo de balance de cargade un cluster. En efecto, esto significa que cada procesador del cluster tiene su propia listacon sus propios datos, a estas listas les llámamos listas locales. Cuando un lista local en unprocesador X no tiene más elementos (lista local vacía), DLML obtiene más datos de unalista local remota no vacía localizada en un procesador Y, mediante la ejecución del algoritmode balance de carga subasta. De esta forma los datos del sistema son redistribuidos entre losprocesadores hasta que no haya más datos que procesar. En la siguiente sección se describeel algoritmo de balance de carga de DLML.3.2. Algoritmo de balance de cargaPara mejorar los tiempos de respuesta, DLML incluye un algoritmo de balance de cargacuyo diseño está basado en la política de subasta [22].El algoritmo consiste en ofrecer poder de cómputo por parte de un procesador al resto delos procesadores. La ejecución de este algoritmo inicia cuando la lista local de un procesadorse queda vacía. En este punto el procesador con la lista local vacía, solicita a los demásprocesadores su índice de carga (número de elementos en la lista local de cada procesador).Eventualmente el procesador recibe la información solicitada y la analiza con el fin de elegiral procesador cuyo índice de carga sea mayor, debido a que para poder realizar esta elecciónse requiere conocer el índice de carga de todos los procesadores, se dice que este algoritmomaneja información global. Una vez elegido al procesador más cargado, el siguiente paso essolicitarle parte de su carga.Una explicación gráfica de la ejecución de este algoritmo se muestra en la Figura 3.1.En la Figura se considera un sistema con cinco procesadores X, Y, S, W y R (círculos).El número que aparece dentro de cada círculo representa el índice de carga del procesador.En la Figura 3.1.a el procesador X termina el procesamiento de los datos en su lista localcuya longitud es 0, bajo está condición inicia el algoritmo enviando un mensaje a todoslos procesadores solicitando su índice de carga. Cuando los procesadores responden (Figura3.1.b), X identifica al procesador más cargado, en este caso el procesador Y con 200 elementosen su lista. Posteriormente se envía un mensaje a Y para solicitar que le transfiera parte de28

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

Saved successfully!

Ooh no, something went wrong!