Using inaccurate estimates accurately

  • Authors:
  • Dan Tsafrir

  • Affiliations:
  • Department of Computer Science, Technion-Israel Institute of Technology, Haifa, Israel

  • Venue:
  • JSSPP'10 Proceedings of the 15th international conference on Job scheduling strategies for parallel processing
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Job schedulers improve the system utilization by requiring users to estimate how long their jobs will run and by using this information to better pack (or "backfill") the jobs. But, surprisingly, many studies find that deliberately making estimates less accurate boosts (or does not affect) the performance, which helps explain why production systems still exclusively rely on notoriously inaccurate estimates. We prove these studies wrong by showing that their methodology is erroneous. The studies model an estimate e as being correlated with r ċ F (where r is the runtime of the associated job, F is some "badness" factor, and larger F values imply increased inaccuracy). We show this model is invalid, because: (1) it conveys too much information to the scheduler; (2) it induces favoritism of short jobs; and (3) it is inherently different than real user inaccuracy, which associates 90% of the jobs with merely 20 estimate values, hindering the scheduler's ability to backfill. We conclude that researchers must stop using multiples of runtimes as estimates, or else their results would likely be invalid. We develop (and propose to use) a realistic model that preserves the estimates' modality and allows to soundly simulate increased inaccuracy by, e.g., associating more jobs with the maximal runtime allowed (an always-popular estimate, which prevents backfilling).