Coscheduling Techniques for Non-Dedicated Cluster Computing
Abstract (Summary)
Los esfuerzos de esta tesis se centran en onstruir una máquina virtual sobre un sistema Cluster que proporcione la doble funcionalidad de ejecutar eficientemente tanto trabajos tradicionales (o locales) de estaciones de trabajo
así como aplicaciones distribuidas.
Para solucionar el problema, deben tenerse en cuenta dos importantes consideraciones:
* Como compartir y planificar los recursos de las diferentes estaciones de trabajo (especialmente la CPU) entre las aplicaciones locales y distribuidas.
* Como gestionar y controlar la totalidad del sistema para
conseguir ejecuciones eficientes de ambos tipos de aplicaciones.
Coscheduling es el principio básico usado para compartir
y planificar la CPU. Cosche-duling se basa en la reducción
del tiempo de espera de comunicación de aplicaciones distribuidas,
planificando simultáneamente todas (o un subconjunto de)
las tareas que la componen. Por lo tanto, mediante el uso
de técnicas de coscheduling, únicamente se puede incrementar
el rendimiento de aplicaciones distribuidas con comunicación
remota entre las tareas que la componen.
Las técnicas de Coscheduling se clasifican en dos grandes
grupos: control-explícito y control-implícito. Esta clasificación
se basa en la forma de coplanificar las tareas distribuidas.
En control-explícito, la coplanificación es realizada por
procesos y (o) procesadores especializados. En cambio, en
control-implícito, las técnicas de coscheduling se realizan
tomando decisiones de planificación localmente, dependiendo
de los eventos que ocurren en cada estación de trabajo.
En este proyecto se presentan dos mecanismos de coscheduling,
los cuales siguen las dos diferentes filosofías explicadas
anteriormente, control-implícito y control-explí-cito. También
proporcionan características adicionales incluyendo un buen
rendimiento en la ejecución de aplicaciones distribuidas,
ejecución simultánea de varias aplicaciones distribuidas,
bajo overhead y también bajo impacto en el rendimiento de
la carga local.
También se presenta un modelo de coscheduling, el cual proporciona
una base teórica para el desarrollo de nuevas técnicas de
control-implícito. La técnica de control-implícito propuesta
se basa en este modelo.
El buen comportamiento de las técnicas de coscheduling presentadas
en este trabajo se analiza en primer lugar por medio de
simulación. También se ha realizado un gran esfuerzo en
la implementación de estas técnicas de coscheduling en un
Cluster real. El estudio de los resultados obtenidos proporciona
una orientación importante para la investigación futura
en el campo de coscheduling.
En la experimentación en el Cluster real, se han utilizado
varios benchmarks distribuidos con diversos patrones de
comunicación de paso de mensajes: regulares e irregulares,
anillos lógicos, todos-a-todos, etc. También se han utilizado
benchmarks que medían diferentes primitivas de comunicación,
tales como barreras, enlaces uni y bidireccionales, etc.
El uso de esta amplia gama de aplicaciones distribuidas
ha servido para demostrar la aplicabilidad de las técnicas
de coscheduling en computación distribuida basados en Clusters.
Bibliographical Information:
Advisor:Hernández, Porfidio
School:Universitat Autónoma de Barcelona
School Location:Spain
Source Type:Master's Thesis
Keywords:401 departament d informatica
ISBN:
Date of Publication:07/24/2002