Thread prioritization: a thread scheduling mechanism for multiple-context parallel processors

  • Authors:
  • S. Fiske;W. J. Dally

  • Affiliations:
  • -;-

  • Venue:
  • HPCA '95 Proceedings of the 1st IEEE Symposium on High-Performance Computer Architecture
  • Year:
  • 1995

Quantified Score

Hi-index 0.00

Visualization

Abstract

Multiple-context processors provide register resources that allow rapid context switching between several threads as a means of tolerating long communication and synchronization latencies. When scheduling threads on such a processor, we must first decide which threads should have their state loaded into the multiple contexts, and second, which loaded thread is to execute instructions at any given time. In this paper we show that both decisions are important, and that incorrect choices can lead to serious performance degradation. We propose thread prioritization as a means of guiding both levels of scheduling. Each thread has a priority that can change dynamically, and that the scheduler uses to allocate as many computation resources as possible to critical threads. We briefly describe its implementation, and we show simulation performance results for a number of simple benchmarks in which synchronization performance is critical.