Skip to Main content Skip to Navigation
Theses

Scheduling task graphs on modern computing platforms

Bertrand Simon 1, 2
Abstract : This thesis deals with three main themes linked to task graph scheduling on modern computing platforms. A graph of tasks is a classical model of a program to be executed, for instance a scientific application. The decomposition of an application into several tasks allows to exploit the potential parallelism of this application without adaptating the program to the computing platform. The graph describes the tasks as well as their dependences, some tasks cannot be initiated before others are completed. The execution of an application is then determined by a schedule of the graph, computed by a dedicated software, which in particular describes which resources should be allocated to each task at which time. The three studied themes are the following: exploit inner task parallelism, use accelerators such as GPUs, and cope with a limited memory.For some applications, two types of parallelism can be exploited: several tasks can be executed concurrently, and each task may be executed on several processors, which reduces its processing time. We propose and study two models allowing to describe this processing time acceleration, in order to efficiently exploit both types of parallelism.We then study how to efficiently use accelerators such as GPUs, in a dynamic context in which the future tasks to schedule are unknown. The main difficulty consists in deciding whether a task should be executed on one of the rare available accelerators or on one of the many classical processors. The last theme covered in this thesis deals with a available main memory of limited size, and the resort to expensive data transfers. We focused on two scenarios. If it is possible to avoid such transfers, we propose to modify the graph in order to guarantee that any execution fits in memory, which allows to dynamically schedule the graph at runtime. If every schedule needs transfers, we studied how to minimize their quantity.The work on these three themes has led to a better understanding of the underlying complexities. The proposed theoretical solutions will influence future software implementations.
Complete list of metadatas

Cited literature [283 references]  Display  Hide  Download

https://tel.archives-ouvertes.fr/tel-01843558
Contributor : Abes Star :  Contact
Submitted on : Wednesday, July 18, 2018 - 5:20:05 PM
Last modification on : Wednesday, November 20, 2019 - 3:22:23 AM
Long-term archiving on: : Friday, October 19, 2018 - 8:43:57 PM

File

SIMON_Bertrand_2018LYSEN022_Th...
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-01843558, version 1

Collections

Citation

Bertrand Simon. Scheduling task graphs on modern computing platforms. Distributed, Parallel, and Cluster Computing [cs.DC]. Université de Lyon, 2018. English. ⟨NNT : 2018LYSEN022⟩. ⟨tel-01843558⟩

Share

Metrics

Record views

770

Files downloads

1557