Resumen:
|
Entre los diferentes aspectos que rodean a la Computacion Grid, esta Tesis Doctoral se centra en la ejecución eficiente de flujos de trabajos. Los flujos de trabajos reflejan las necesidades de complejidad del ser humano, y la Computación Grid comienza a ser madura para resolver problemas cientificos, puesto que permite el acceso a una gran cantidad de recursos. No obstante, debido a su naturaleza inherente el Grid no está completamente listo para ejecutar bastantes tipos de flujos de trabajos en un tiempo razonable. Con el objetivo de justificar la adopcion de este paradigma de la computación, se deben analizar los algoritmos que rigen estos flujos de trabajos y de ahí, implantar optimizaciones para que su ejecución gane eficiencia. Este trabajo comienza con una introducción a la Computación Grid donde se explican sus principales componentes y se describen las infraestructuras más significativas. Como los flujos de trabajos son implantados por aplicaciones, este Capítulo servirá también de introducción al portado, por lo que se hablaré de diferentes tecnologías a diferentes niveles. El tipo más sencillo de flujo de trabajos, las aplicaciones de alta productividad, son las primeras en ser estudiadas. Así, una aplicación de Física de Fusión suministrada por el CIEMAT4 necesitaba incrementar la cantidad de datos procesados. La Computación Grid garantizó al principio la eficiencia necesaria. Cuando esta cantidad aumentó nuevamente, se adopó una estrategia del tipo chunk con buenos resultados. La complejidad se incrementó en el Capítulo siguiente, donde una aplicación bioinformática propuesta por el CNIO5 encuentra en el Grid la mejor solución para evitar las restricciones de memoria de una única máquina. Como la ejecución en el Grid no estaba ahorrando suficiente tiempo, se estudiaron diferentes heurísticas de optimización. De éstas, se eligieron dos para su implantación y estudio posterior. Adicionalmente, este trabajo presenta un modelo válido para predecir el tiempo de ejecución según las condiciones de partida, también usando las heurísticas implantadas. [ABSTRACT]Among the different aspects that involve Grid Computing, efficient execution of workflows is focused by the present work.Wokflows do mirror human needs of complexity and Grid Computing technology starts to be mature for solving scientific problems, as it allows access to a great amount of resources. Nevertheless, due to its inherent nature, the Grid is not completely ready for executing many wokflow types in a reasonable time. In order to justify the adoption of this computing paradigm, the algorithms governing these workflows must be analyzed and optimizations must be implemented so their execution will gain efficiency. This work starts with an introduction to Grid Computing where its main components are explained and some significant infrastructures are described. As workflows are implemented by applications, this Chapter will serve also as an introduction to Grid porting, reviewing existing technologies at different levels. The simplest type of workflow, the high throughput applications, is studied at first. Here, a Fusion Physics application provided by CIEMAT7 needed to increase its amount of processed data. At the beginning, Grid Computing provided the needed efficiency. When this data need increased again, a chunk strategy was adopted obtaining good results. Complexity is increased at the following Chapter, where a bioinformatic application proposed by CNIO8 finds in the Grid the best solution to bypass the memory restrictions of a single machine. As the Grid execution of this application was not saving enough time, many optimization heuristics weres studied. From these, two have been chosen for implementation and further study. Additionally, this work provided a valid model to predict the execution time for a given set of starting conditions, also using the implemented heuristics.
|