Analysis of Multithreaded Microprocessors under Multiprogramming

We examine multithreading to improve uniprocessor cost/performance on multiple processes. Processor utilization and cache behavior are studied analytically and under simulation by interleaving reference traces to model timesharing and multithreading. Multithreading a small number of threads is superior with large on-chip caches and significant memory latency. The switch need not be extremely fast. Surprisingly, miss ratios under multithreading may be lower than under timesharing, because switch on-miss multithreading favors processes with better cache behavior.

[1]  David A. Patterson,et al.  Evaluation of a 'stall' cache: an efficient restricted onchip instruction cache , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[2]  Anoop Gupta,et al.  The directory-based cache coherence protocol for the DASH multiprocessor , 1990, [1990] Proceedings. The 17th Annual International Symposium on Computer Architecture.

[3]  David E. Culler,et al.  Analysis of multithreaded architectures for parallel computing , 1990, SPAA '90.

[4]  Anant Agarwal,et al.  APRIL: a processor architecture for multiprocessing , 1990, [1990] Proceedings. The 17th Annual International Symposium on Computer Architecture.

[5]  Anoop Gupta,et al.  Exploring The Benefits Of Multiple Hardware Contexts In A Multiprocessor Architecture: Preliminary Results , 1989, The 16th Annual International Symposium on Computer Architecture.

[6]  Burton J. Smith,et al.  A processor architecture for Horizon , 1988, Proceedings. SUPERCOMPUTING '88.

[7]  Robert H. Halstead,et al.  MASA: a multithreaded processor architecture for parallel symbolic computing , 1988, [1988] The 15th Annual International Symposium on Computer Architecture. Conference Proceedings.

[8]  David E. Culler,et al.  Dataflow architectures , 1986 .