  This work proposes a competitive scheduling approach, designed to scale to
large heterogeneous multicore systems. This scheduler overcomes the challenges
of (1) the high computation overhead of near-optimal schedulers, and (2) the
error introduced by inaccurate performance predictions. This paper presents
Agon, a neural network-based classifier that selects from a range of
schedulers, from simple to very accurate, and learns which scheduler provides
the right balance of accuracy and overhead for each scheduling interval. Agon
also employs a de-noising frontend allowing the individual schedulers to be
tolerant towards noise in performance predictions, producing better overall
schedules. By avoiding expensive scheduling overheads, Agon improves average
system performance by 6\% on average, approaching the performance of an
oracular scheduler (99.1% of oracle performance).
