A DAG partitioning-assisted list-based scheduler for homogeneous processors
Un ordonnanceur de liste basé sur le partitionnement de DAGs pour des processeurs homogènes
Résumé
When scheduling a directed acyclic graph (DAG) of tasks on computational platforms, a good trade-off between load balance and data locality is necessary. List-based scheduling techniques, such as the earliest finish time (EFT) heuristic, are commonly used greedy approaches for this problem. The downside of EFT, and other list-scheduling heuristics, is that they are incapable of making short-term sacrifices for the global efficiency of the schedule. In this work, we describe three new list-based scheduling heuristics based on clustering for homogeneous platforms. Our approach uses an acyclic partitioner for DAGs for clustering. The clustering enhances the data locality of the scheduler with a global view of the graph. Furthermore, since the partition is acyclic, we can schedule each part completely once its input tasks are ready to be executed. We present an extensive experimental evaluation showing the trade-offs between the granularity of clustering and the parallelism, and how this affects the scheduling.
Lors de l’ordonnancement d’un graphe dirigé acyclique (DAG) de
tâches sur une plate-forme, un bon compromis entre équilibrage de charge et
localité des données est nécessaire. Les techniques d’ordonnancement de liste,
comme par exemple l’heuristique EFT (earliest finish time, temps de complétion
au plus tôt), sont des approches gloutonnes communément utilisées pour ce
problème. Les inconvénients d’EFT, et d’autres heuristiques d’ordonnancement
de liste, sont qu’elles sont incapables de faire des sacrifices à court terme pour
que l’ordonnancement global soit plus efficace. Dans ces travaux, nous décrivons
trois nouvelles heuristiques d’ordonnancement de liste pour des platesformes
homogènes. Notre approche se base sur un partitionnement acyclique
du DAG, car les parties ainsi formées permettent d’avoir une bonne localité
des données tout en conservant une vue générale du graphe. De plus, étant
donné que la partition est acyclique, nous pouvons ordonnancer chaque partie
entièrement une fois que ses tâches d’entrée sont prêtes à être exécutées.
Nous présentons une évaluation expérimentale des algorithmes pour montrer
les compromis entre la granularité des partitions et le parallélisme, et comment
cela affecte l’ordonnancement.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...