20th Annual International Conference on High Performance Computing (2012)
Pune, India India
Dec. 18, 2012 to Dec. 22, 2012
Vinicius Pinheiro , Lab. for Parallel and Distributed Computing University of São Paulo, Brasil
Krzysztof Rzadca , Institute of Informatics University of Warsaw, Poland
Denis Trystram , Grenoble Institute of Technology Institut Universitaire de France
We study the problem of scheduling in parallel systems with many users. We analyze scenarios with many submissions issued over time by several users. These submissions contain one or more jobs; the set of submissions are organized in successive campaigns. Jobs belonging to a single campaign are sequential and independent, but any job from a campaign cannot start until all the jobs from the previous campaign are completed. Each user's goal is to minimize the sum of flow times of his campaigns. We define a theoretical model for Campaign scheduling and show that, in the general case, it is NP-hard. For the single-user case, we show that an p-approximation scheduling algorithm for the (classic) parallel job scheduling problem is also an p- approximation for the Campaign scheduling problem. For the general case with k users, we establish a fairness criterion inspired by time sharing. We propose FAIRCAMP, a scheduling algorithm which uses campaign deadlines to achieve fairness among users between consecutive campaigns. We prove that FAIRCAMP increases the flow time of each user by a factor of at most k
ρ compared with a machine dedicated to the user. We also prove that FAIRCAMP is a p-approximation algorithm for the maximum stretch. By simulation, we compare FAIRCAMP to the First-Come-First-Served (FCFS). We show that, compared with FCFS, FAIRCAMP reduces the maximum stretch by up to 3.4 times. The difference is significant in systems used by many (k > 5) users. Our results show that, rather than just individual, independent jobs, campaigns of jobs can be handled by the scheduler efficiently and fairly.
V. Pinheiro, K. Rzadca and D. Trystram, "Campaign scheduling," 20th Annual International Conference on High Performance Computing(HIPC), Pune, India India, 2012, pp. 1-10.