Adaptive dynamic thread scheduling for simultaneous multithreaded architectures with a detector thread

  • Authors:
  • Chulho Shin;Seong-Won Lee;Jean-Luc Gaudiot

  • Affiliations:
  • Development Systems Department, Arm Inc., Irvine, CA;Department of Computer Engineering, Kwangwoon University, Seoul, Korea;Department of Electrical Engineering and Computer Science, University of California, Irvine, CA

  • Venue:
  • Journal of Parallel and Distributed Computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Simultaneous multithreading (SMT) is an architectural technique that improves resource utilization by allowing instructions from multiple threads to coexist in a processor and share resources. However, earlier studies have shown that the performance of an SMT architecture begins to saturate as the number of coexisting threads increases beyond four. We show that no single fetch policy can be the best solution during the entire execution time and that a significant performance improvement can be attained by dynamically switching the fetch policies. We propose an implementation method which includes an extremely lightweight thread to control fetch policies (a detector thread) and a processor architecture to run the detector thread without impact on the user application threads. We evaluate various heuristics for the detector thread to determine the best fetch policies. We show that, with eight threads running on our simulated SMT, the proposed approach can outperform fixed scheduling mechanisms by up to 30%.