Nikhil Bansal

Algorithms for Flow Time Scheduling Degree Type: Ph.D. in Computer Science
Advisor(s): Avrim Blum
Graduated: December 2003

Abstract:

We study scheduling algorithms for problems arising in client-server systems. In the client-server setting, there are multiple clients that submit requests for service to the server(s) over time. Typical examples of such systems include operating systems, web-servers and database query servers. As there could be multiple clients requesting a service, the goal of a scheduling algorithm is to provide service to the clients in some reasonable way. A natural measure of the quality of service received by a client is its flow time, defined as the time since the client submits a request until it is completed. In this thesis, we study some fundamental problems related to minimizing flow time and its variants. These include  L_p norms of flow time, weighted flow time, stretch (flow time divided by its service requirement) and completion time. We consider these problems in various settings, such as online, offline, scheduling when the processing requirements are unknown and scheduling when jobs can be rejected at some cost.

Thesis Committee:
Avrim Blum (Chair)
Bruce Maggs
R. Ravi
Kirk Pruhs (University of Pittsburgh)

Randy Bryant, Head, Computer Science Department
James Morris, Dean, School of Computer Science

Keywords:
Approximation algorithms, on-line algorithms, scheduling, flow time, non-clairvoyant scheduling

CMU-CS-03-209.pdf (506.76 KB) ( 86 pages)
Copyright Notice