2 research outputs found

    A Fair Decentralized Scheduler for Bag-of-tasks Applications on Desktop Grids

    No full text
    Desktop Grids have become very popular nowadays, with projects that include hundred of thousands computers. Desktop grid scheduling faces two challenges. First, the platform is volatile, since users may reclaim their computer at any time, which makes centralized schedulers inappropriate. Second, desktop grids are likely to be shared among several users, thus we must be particularly careful to ensure a fair sharing of the resources. In this paper, we propose a decentralized scheduler for bag-of-tasks applications on desktop grids, which ensures a fair and efficient use of the resources. It aims to provide a similar share of the platform to every application by minimizing their maximum stretch, using completely decentralized algorithms and protocols. After presenting our algorithms, we evaluate them through extensive simulations. We compare our solution to already existing centralized ones under similar conditions, and show that its performance is close to the best centralized algorithms. 1

    STaRS: A scalable task routing approach to distributed scheduling

    Get PDF
    La planificaci贸n de muchas tareas en entornos de millones de nodos no confiables representa un gran reto. Las plataformas de computaci贸n m谩s conocidas normalmente conf铆an en poder gestionar en un elemento centralizado todo el estado tanto de los nodos como de las aplicaciones. Esto limita su escalabilidad y capacidad para tolerar fallos. Un modelo descentralizado puede superar estos problemas pero, por lo que sabemos, ninguna soluci贸n propuesta hasta el momento ofrece resultados satisfactorios. En esta tesis, presentamos un modelo de planificaci贸n descentralizado con tres objetivos: que escale hasta millones de nodos, sin una p茅rdida de prestaciones que lo inhabilite; que tolere altas tasas de fallos; y que permita la implementaci贸n de varias pol铆ticas de planificaci贸n para diferentes situaciones. Nuestra propuesta consta de tres elementos principales: un modelo de datos gen茅rico para representar la disponibilidad de los nodos de ejecuci贸n; un esquema de agregaci贸n que propaga esta informaci贸n por una capa de red jer谩rquica; y un algoritmo de reexpedici贸n que, usando la informaci贸n agregada, encamina tareas hacia los nodos de ejecuci贸n m谩s apropiados. Estos tres elementos son f谩cilmente extensibles para proporcionar diversas pol铆ticas de planificaci贸n. En concreto, nosotros hemos implementado cinco. Una pol铆tica que simplemente asigna tareas a nodos desocupados; una pol铆tica que minimiza el tiempo de finalizaci贸n del trabajo global; una pol铆tica que cumple con los requerimientos de fecha l铆mite de aplicaciones tipo "saco de tareas"; una pol铆tica que cumple con los requerimientos de fecha l铆mite de aplicaciones tipo "workflow"; y una pol铆tica que otorga una porci贸n equitativa de la plataforma a cada aplicaci贸n. La escalabilidad se consigue a trav茅s del esquema de agregaci贸n, que provee de suficiente informaci贸n de disponibilidad a los niveles altos de la jerarqu铆a sin inundarlos, y el algoritmo de reexpedici贸n, que busca nodos de ejecuci贸n en varias ramas de la jerarqu铆a de manera concurrente. Como consecuencia, los costes de comunicaci贸n est谩n acotados y los de asignaci贸n muestran un comportamiento casi logar铆tmico con el tama帽o del sistema. Un millar de tareas se asignan en una red de 100.000 nodos en menos de 3,5 segundos, as铆 que podemos plantearnos utilizar nuestro modelo incluso con tareas de tan solo unos minutos de duraci贸n. Por lo que sabemos, ning煤n trabajo similar ha sido probado con m谩s de 10.000 nodos. Los fallos se gestionan con una estrategia de mejor esfuerzo. Cuando se detecta el fallo de un nodo, las tareas que estaba ejecutando son reenviadas por sus propietarios y la informaci贸n de disponibilidad que gestionaba es reconstruida por sus vecinos. De esta manera, nuestro modelo es capaz de degradar sus prestaciones de manera proporcional al n煤mero de nodos fallidos y recuperar toda su funcionalidad. Para demostrarlo, hemos realizado pruebas de tasa media de fallos y de fallos catastr贸ficos. Incluso con nodos fallando con un periodo mediano de solo 5 minutos, nuestro planificador es capaz de continuar dando servicio. Al mismo tiempo, es capaz de recuperarse del fallo de una fracci贸n importante de los nodos, siempre que la capa de red jer谩rquico que sustenta el sistema pueda soportarlo. Despu茅s de comprobar que es factible implementar pol铆ticas con muy distintos objetivos usando nuestro modelo de planificaci贸n, tambi茅n hemos probado sus prestaciones. Hemos comparado cada pol铆tica con una versi贸n centralizada que tiene pleno conocimiento del estado de cada nodo de ejecuci贸n. El resultado es que tienen unas prestaciones cercanas a las de una implementaci贸n centralizada, incluso en entornos de gran escala y con altas tasas de fallo
    corecore