Date of Award
Doctor of Philosophy (PhD)
The prevalence of parallel processing has only increased in recent years. Today, most computing machines available on the market shifted from using single processors to possessing a multicore architecture. Naturally, there has been considerable work in developing parallel programming languages and frameworks which programmers can use to leverage the computing power of these machines. These languages allow users to create programs with internal parallelism. The next, and crucial, step is to ensure that the computing system can efficiently execute these parallel jobs. Executing a single parallel job efficiently is a very well-studied problem in parallel computing. In the area of job scheduling, there is extensive work on scheduling multiple sequential jobs to minimize important objectives. However, there is little work on scheduling multiple jobs that have internal parallelism. This dissertation focuses on designing theoretically efficient and practically good scheduling algorithms for parallelizable jobs in the identical machines setting. Specifically, this research consider jobs in the Directed-Acyclic-Graph (DAG) model of parallelism and studies the problem of scheduling multiple DAG jobs to optimize objectives such as average flow time, maximum flow time, and throughput. The overarching goal of the research is to deeply examine the problem of scheduling multiple parallel jobs and to take the first steps towards creating a body of knowledge comparable to the extensive amount of existing work on scheduling sequential jobs.
Angelina Lee Benjamin Moseley
Kunal Agrawal, Michael Bender, Jeremy Buhler, Roman Garnett,