Cluster scheduling for explicitly-speculative tasks

  • Authors:
  • David Petrou;Garth A. Gibson

  • Affiliations:
  • Carnegie Mellon University;Carnegie Mellon University

  • Venue:
  • Cluster scheduling for explicitly-speculative tasks
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Large-scale computing often consists of many speculative tasks to test hypotheses, search for insights, review potentially finished products. For example, speculative tasks are issued by bioinformaticists comparing DNA sequences, computer graphics artists rendering scenes, and computer researchers studying caching. This behavior—exploratory searches and parameter studies, made more common by the cost-effectiveness of cluster computing—on existing schedulers without speculative task support results in a mismatch of goals and suboptimal scheduling. Users wish to reduce their time waiting for needed task output and the amount they will be charged for unneeded speculation, making it unclear to the user how many speculative tasks they should submit. This thesis introduces ‘batchactive’ scheduling (combining batch and interactive characteristics) to exploit the inherent speculation in common application scenarios. With a batchactive scheduler, users submit explicitly-labeled batches of speculative tasks exploring ambitious lines of inquiry, and users interactively request task outputs when these outputs are found to be needed. After receiving and considering an output for some time, a user decides whether to request more outputs, cancel tasks, or disclose new speculative tasks. Users are encouraged to disclose more computation because batchactive scheduling intelligently prioritizes among speculative and non-speculative tasks, providing good wait-time-based metrics, and because batchactive scheduling employs an incentive pricing mechanism which charges for only requested task outputs (i.e., unneeded speculative tasks are not charged), providing better cost-based metrics for users. These aspects can lead to higher billed server utilization, encouraging batchactive adoption by resource providers organized as either cost- or profit-centers. Over a broad range of realistic simulated user behavior and task characteristics, I show that under a batchactive scheduler visible response time—a new metric more appropriate to speculative domains—is improved by at least a factor of two for 20% of the simulations. A batchactive scheduler favoring users who have desired a greater fraction of tasks that they disclosed provides additional performance and is resilient to a denial-of-service. Further, I identify the role of think time in speculative scheduling and characterize the scenarios in which batchactive scheduling provides the most benefits.