Simultaneous subordinate microthreading (SSMT)

  • Authors:
  • Robert S. Chappell;Jared Stark;Sangwook P. Kim;Steven K. Reinhardt;Yale N. Patt

  • Affiliations:
  • EECS Department (ACAL), The University of Michigan, Ann Arbor, Michigan;EECS Department (ACAL), The University of Michigan, Ann Arbor, Michigan;Intel Corporation, Santa Clara, CA;EECS Department (ACAL), The University of Michigan, Ann Arbor, Michigan;EECS Department (ACAL), The University of Michigan, Ann Arbor, Michigan

  • Venue:
  • ISCA '99 Proceedings of the 26th annual international symposium on Computer architecture
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

Current work in Simultaneous Multithreading provides little benefit to programs that aren't partitioned into threads. We propose Simultaneous Subordinate Microthreading (SSMT) to correct this by spawning subordinate threads that perform optimizations on behalf of the single primary thread. These threads, written in microcode, are issued and executed concurrently with the primary thread. They directly manipulate the microarchitecture to improve the primary thread's branch prediction accuracy, cache hit rate, and prefetch effectiveness. All contribute to the performance of the primary thread. This paper introduces SSMT and discusses its potential to increase performance. We illustrate its usefulness with an SSMT machine that executes subordinate microthreads to improve the branch prediction of the primary thread. We show simulation results for the SPECint95 benchmarks.