Fetch unit design for scalable simultaneous multithreading (ScSMT)

Authors

  • Juan Carlos Moure Computer Architecture and Operating Systems Group, University Autónoma of Barcelona. Barcelona, 08193. Spain
  • Dolores Rexachs del Rosario Computer Architecture and Operating Systems Group, University Autónoma of Barcelona. Barcelona, 08193. Spain
  • Emilio Luque Fadón Computer Architecture and Operating Systems Group, University Autónoma of Barcelona. Barcelona, 08193. Spain

Abstract

Continuous IC process enhancements make possible to integrate on a single chip the re-sources required for simultaneously executing multiple control flows or threads, exploiting different levels of thread-level parallelism: application-, function-, and loop-level. Scalable simultaneous multi-threading combines static and dynamic mechanisms to assemble a complexity-effective design that provides high instruction per cycle rates without sacrificing cycle time nor single-thread performance. This paper addresses the design of the fetch unit for a high-performance, scalable, simultaneous multithreaded processor. We present the detailed microarchitecture of a clustered and reconfigurable fetch unit based on an existing single-thread fetch unit. In order to minimize the occurrence of fetch hazards, the fetch unit dynamically adapts to the available thread-level parallelism and to the fetch characteristics of the active threads, working as a single shared unit or as two separate clusters. It combines static and dynamic methods in a complexity-efficient way. The design is supported by a simulation- based analysis of different instruction cache and branch target buffer configurations on the context of a multithreaded execution workload. Average reductions on the miss rates between 30% and 60% and peak reductions greater than 200% are obtained.

Downloads

Download data is not yet available.

References

[1] Burger, D., Austin, T.M.: The SimpleScalar Tool Set. Univ. Wisconsin-Madison Computer Science Department, Technical Report TR-1342, 1997.
[2] Eickemeyer, R. et al.: Evaluation of Multithreaded Uniprocessors for Commercial Application Environments. Proc. of the 23th Int. Symp. on Computer Architecture 1996, 203-212.
[3] Grunwald, D., Klauser, A., Manne, S., Pleszkun, A.: Confidence Estimation for Speculation Control, Proc. of the 25th Int. Symp. on Computer Architecture 1998, 122-131.
[4] Hammond, L., Nayfeh, B.A., Olukotun, K.: A Single-Chip Multiprocessor, IEEE Computer, Sept. 1997, 79-85.
[5] Kessler, R.E.: The Alpha 21264 Microprocessor, IEEE Micro, March-April 1999, 24-36.
[6] Lee, J., Smith, A.: Branch Prediction Strategies and Branch Target Buffer Design. IEEE Computer, Jan. 1984, 6-22.
[7] Moure, J., García, R., Rexachs, D., Luque, E.: Scalable Simultaneous Multithreading (ScSMT). Parallel Computing: Fundamental & Applications. Proc. of the Int. Conf. ParCo99 Imperial College Press, 2000, 615-622.11
[8] Palacharla, S., Jouppi, N.P., Smith, J.E.: Complexity-Effective Superscalar Processors, Proc. of the 24th Int. Symp. on Computer Architecture 1997, 206-218.
[9] Skadron, K., Ahuja, P., Martonosi, M., Clark, D.: Improving Prediction for Procedure Returns with Return-Address-Stack Repair Mechanisms. Proc. of the 31st Int. Symp. on Microarchitecture 1998, 259-271.
[10] Tullsen, D.M., Eggers, S.J., Levy, H.M.: Simultaneous Multithreading: Maximizing On-Chip Parallelism, Proc. of the 22nd Int. Symp. on Computer Architecture 1995, 392-403.
[11] Tullsen, D.M. et al.: Exploiting Choice: Instruction Fetch and Issue on an Implementable Simultaneous Multithreading Processor, Proc. of the 23rd Int. Symp. on Computer Architecture 1996, 105-116.

Downloads

Published

2001-05-01

How to Cite

Moure, J. C., Rexachs del Rosario, D., & Luque Fadón, E. (2001). Fetch unit design for scalable simultaneous multithreading (ScSMT). Journal of Computer Science and Technology, 1(04), 11 p. Retrieved from https://journal.info.unlp.edu.ar/JCST/article/view/992

Issue

Section

Original Articles

Most read articles by the same author(s)

1 2 > >>