Ordonnancement d’Applications Parallèles (Workflows Scientifiques) sur les ressources IaaS du Cloud Computing - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Thèse Année : 2021

Scheduling of Parallel Applications (Scientific Workflows) on Cloud Computing IaaS resources.

Ordonnancement d’Applications Parallèles (Workflows Scientifiques) sur les ressources IaaS du Cloud Computing

Ban'Délé Jean Edgard Gnimassoun
  • Fonction : Auteur
  • PersonId : 1106908

Résumé

Nowadays, many scientific applications need to be parallelized. This parallelization allows to complete simultaneously several independent tasks with the same application on different processor cores. Thus, the execution time (makespan) of such a application can be shortened compared to its sequential version (where all the tasks are executed on the same processor core one after the other). Parallelizable applications are as diverse and varied. There are many scientific computing application in the fields of drug research, nuclear simulation, simulation of mechanical properties of machines, astronomical research, banking simulation, image processing, etc. Many applications can be modeled as scientific workflows, i.e. They can be represented by Directed Acyclic Graphs (DAG) where the nodes represent the different tasks of the application to be completed. The arcs represent the dependency constraints between the tasks (a task can only start its execution when all its parent tasks have finished their execution). In scientific workflows, some tasks load input files and/or produce output files during their execution. An output file of a task can be reused as input for another task. This raises the issue of scheduling these tasks and files in order to reduce the impact of file transfers on the network and to minimize the makespan and/or the cost of completing the parallel software, especially when the different processor cores required are not necessarily on the same machine. Scientific workflows used to run mainly on clusters. Today, the IaaS (Infrastructure as a Services) offers of cloud computing providers represent a new execution environment for this type of parallel applications. However, this migration to cloud computing brings new scheduling challenges. Indeed, since on IaaS platforms, resources appear virtually unlimited and each user who wishes to run his application is charged according to the resources used, the major problem that arises is how to find a good compromise between the execution time of his application and the cost of using the resources. We thus propose a solution for this bi-criteria optimization problem of finding a trade-off between the makespan of scientific workflows and the cost of using cloud resources, by conducting this study in several steps. The first step is to suggest a single-criteria optimization algorithm that attempts to minimize the makespan of workflows when the resources to be used are fixed. This algorithm has been compared to the very popular HEFT algorithm. Then, in another study we showed that for the same total number of processor cores, using fewer virtual machines containing many processor cores each one is more beneficial than using more virtual machines each containing fewer processor cores. This is because it significantly reduces the makespan of scientific workflows. We also suggest a faster method of generating a Pareto front from the previously suggested algorithm and running the simulations on fewer platforms than the competing approach which is the MOHEFT algorithm. MOHEFT being the best algorithm in the literature for solving the above mentioned bicriteria problem. It should be recalled that a Pareto front represents the optimal points obtained from the execution of a multi-criteria optimization algorithm. The outcomes show that the suggested approach gives better Pareto fronts compared to MOHEFT in addition to giving more points (thus more choices to the user) in these Pareto fronts compared to those of MOHEFT, and to get out the Pareto fronts in much less time than MOHEFT. Finally, in a last contribution, we suggested a dichotomous search procedure to suggest fewer points than those on the full Pareto front in order to facilitate the user’s choice. This approach eliminates points from the Pareto front that are not interesting in practice, although they are theoretically optimal points because they are not dominated by the other points.
Aujourd’hui de nombreuses applications scientifiques nécessitent d’être parallélisées. Cette parallélisation permet d’exécuter simultanément plusieurs tâches indépendantes d’une même application sur des cœurs de processeurs différents. Ainsi on peut considérablement réduire le temps d’exécution (makespan) d’une telle application par rapport à sa version séquentielle (où toutes les tâches s’exécutent sur un même cœur de processeur l’une après l’autre). Les applications parallélisables sont aussi diverses que variées. On trouve de nombreuses applications de calcul scientifique dans les domaines de la recherche de médicaments, de la simulation nucléaire, de la simulation des propriétés mécaniques des engins, de la recherche astronomique, de la simulation bancaire, du traitement d’images, etc. De nombreuses applications sont modélisables sous forme de workflows scientifiques, c’est-à-dire que ces applications peuvent être représentées par des graphes orientés acycliques où les nœuds représentent les différentes tâches de l’application à exécuter. Les arcsreprésentent, quant à eux, les contraintes de dépendances entre les tâches (une tâche ne peut commencer son exécution que lorsque toutes les tâches parentes de cette tâche ont terminé leur exécution). Dans les workflows scientifiques, certaines tâches chargent des fichiers en entrée et/ou produisent des fichiers en sortie lors de leurs exécutions. Un fichier en sortie d’une tâche peut être réutilisé en entrée d’une autre tâche. Il se pose donc la problématique de l’ordonnancement de ces tâches et de ces fichiers afin de réduire l’impact des transferts de fichiers sur le réseau et de minimiser le makespan et/ou le coût d’exécution de l’application parallèle, surtout lorsque les différents cœurs de processeurs sollicités ne se trouvent pas nécessairement sur la même machine. Les workflows scientifiques s’exécutaient principalement sur les grappes de calcul (clusters). Aujourd’hui les offres IaaS (Infrastrure as a Services) des fournisseurs de cloud computing représentent un nouvel environnement d’exécution de ce type d’applications parallèles. Toutefois, cette migration vers le cloud computing entraîne de nouveaux défis d’ordonnancement à relever. En effet, puisque sur les plateformes IaaS, les ressources paraissent virtuellement illimitées et que chaque utilisateur qui souhaite y exécuter son application est facturé en fonction des ressources utilisées, le problème majeur qui se pose est comment trouver un bon compromis entre le temps d’exécution de son application et le coût d’utilisation des ressources. Nous proposons ainsi une solution pour ce problème d’optimisation bi-critères de recherche de compromis entre le makespan des workflows scientifiques et le coût d’utilisation des ressources du cloud, en menant cette étude en plusieurs étapes. La première étape consiste à proposer un algorithme d’optimisation monocritère qui tente de minimiser le makespan des workflows lorsque les ressources à utiliser sont fixées. Cet algorithme a été comparé au très populaire algorithme HEFT. Ensuite, dans une autre étude nous montrons que pour un même nombre total de cœurs de processeurs souhaité, utiliser moins de machines virtuelles contenant de nombreux cœurs de processeurs chacune est plus bénéfique qu’utiliser plus de machines virtuelles contenant chacune moins de cœurs de processeurs. En effet, cela permet de réduire considérablement le makespan des workflows scientifiques. Nous avons aussi proposé une méthode plus rapide de génération d’un front de Pareto à partir de l’algorithme proposé précédemment et en lançant les simulations sur un nombre réduit de plateformes par rapport à l’approche concurrente qui est l’algorithme MOHEFT. MOHEFT étant le meilleur algorithme de la littérature pour la résolution du problème bicritère sus-énoncé. Il faut rappeler qu’un front de Pareto représente les points optimaux obtenus à l’issu de l’exécution d’un algorithme d’optimisation multicritères. Les résultats obtenus montrent que l’approche proposée donne de meilleurs fronts de Pareto par rapport à MOHEFT en plus de donner plus de points (donc plus de choix à l’utilisateur) dans ces fronts de Pareto par rapport à ceux de MOHEFT, et de sortir les fronts de Pareto en des temps très inférieurs à ceux de MOHEFT. Enfin dans une dernière contribution, nous avons proposé une procédure par recherche dichotomique pour suggérer moins de points que ceux qui sont sur le front de Pareto complet afin de faciliter le choix à l’utilisateur. Cette approche élimine des points du front de Pareto qui ne sont pas intéressants en pratique, bien qu’étant des points optimaux théoriquement car non dominés par les autres points.
Fichier principal
Vignette du fichier
these.pdf (2.59 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-03313312 , version 1 (03-08-2021)

Identifiants

  • HAL Id : tel-03313312 , version 1

Citer

Ban'Délé Jean Edgard Gnimassoun. Ordonnancement d’Applications Parallèles (Workflows Scientifiques) sur les ressources IaaS du Cloud Computing. Calcul parallèle, distribué et partagé [cs.DC]. Institut National Polytechnique Félix Houphouët Boigny de Yamoussoukro (Côte d'Ivoire), 2021. Français. ⟨NNT : ⟩. ⟨tel-03313312⟩
168 Consultations
149 Téléchargements

Partager

Gmail Facebook X LinkedIn More