Operating Systems Design and Implementation · 2016 · 136 citations · 45 references
ComputingComputer ScienceComputer SystemsHeterogeneous ComputingParallel ComputingSchedulingCompute Resource ManagementJob SchedulingResource SchedulingResource-constrained SchedulingTask SchedulingWorkload SchedulingDag SchedulingHeterogeneous Task SchedulingHeuristicsNp-complete ProblemsNp-hardnessTask Dependency StructureThroughputThroughput Improvement
We present a newcluster scheduler, GRAPHENE, aimed at jobs that have a complex dependency structure and heterogeneous resource demands. Relaxing either of these challenges, i.e., scheduling a DAG of homogeneous tasks or an independent set of heterogeneous tasks, leads to NP-hard problems. Reasonable heuristics exist for these simpler problems, but they perform poorly when scheduling heterogeneous DAGs. Our key insights are: (1) focus on the long-running tasks and those with tough-to-pack resource demands, (2) compute a DAG schedule, offline, by first scheduling such troublesome tasks and then scheduling the remaining tasks without violating dependencies. These offline schedules are distilled to a simple precedence order and are enforced by an online component that scales to many jobs. The online component also uses heuristics to compactly pack tasks and to trade-off fairness for faster job completion. Evaluation on a 200-server cluster and using traces of production DAGs at Microsoft, shows that GRAPHENE improves median job completion time by 25% and cluster throughput by 30%.
45
Michael Isard, Mihai Budiu, Yuan Yu et al. · 2007 · 2.5K citations
Bounds on Multiprocessing Timing Anomalies
Ron Graham · SIAM Journal on Applied Mathematics · 1969 · 2.4K citations
Albert Greenberg, James R. Hamilton, Navendu Jain et al. · 2009 · 2.1K citations