Journal of Zhejiang University-SCIENCE A

, Volume 9, Issue 8, pp 1070–1082 | Cite as

A spatially triggered dissipative resource distribution policy for SMT processors

  • Hong-zhou Chen
  • Xue-zeng Pan
  • Ling-di Ping
  • Kui-jun Lu
  • Xiao-ping Chen
Article
  • 31 Downloads

Abstract

Programs take on changing behavior at runtime in a simultaneous multithreading (SMT) environment. How reasonably common resources are distributed among the threads significantly determines the throughput and fairness performance in SMT processors. Existing resource distribution methods either mainly rely on the front-end fetch policy, or make distribution decisions according to the limited information from the pipeline. It is difficult for them to efficiently catch the various resource requirements of the threads. This work presents a spatially triggered dissipative resource distribution (SDRD) policy for SMT processors. Its two parts, the self-organization mechanism that is driven by the real-time instructions per cycle (IPC) performance and the introduction of chaos that tries to control the diversity of trial resource distributions, work together to supply sustaining resource distribution optimization for changing program behavior. Simulation results show that SDRD with fine-grained diversity controlling is more effective than that with a coarse-grained one. And SDRD benefits much from its two well-coordinated parts, providing potential fairness gains as well as good throughput gains. Meanings and settings of important SDRD parameters are also discussed.

Key words

Simultaneous multithreading (SMT) Resource distribution Dynamic optimization Dissipative structures 

CLC number

TP302 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Burger, D., Austin, T.M., Bennett, S., 1996. Evaluating Future Microprocessors: The Simplescalar Tool Set. Technical Report 1308. Computer Science Department, University of Wisconsin-Madison, Madison. http://www.cs.wisc.edu/techreports/viewreport.php?report=1308 Google Scholar
  2. Cazorla, F., Ramirez, A., Valero, M., Fernández, E., 2004a. Dcache Warn: An I-fetch Policy to Increase SMT Efficiency. Proc. 18th Int. Parallel and Distributed Processing Symp., Santa Fe, NM, p.74–83. [doi:10.1109/IPDPS.2004.1303005]Google Scholar
  3. Cazorla, F., Ramirez, A., Valero, M., Fernández, E., 2004b. Dynamically Controlled Resource Allocation in SMT Processors. Proc. 37th Int. Symp. on Microarchitecture, Portland, OR, p.171–182. [doi:10.1109/MICRO.2004.17]Google Scholar
  4. Choi, S., Yeung, D., 2006. Learning-based SMT Processor Resource Distribution via Hill-climbing. Proc. 33rd Annual Int. Symp. on Computer Architecture, Boston, MA, p.239–251. [doi:10.1109/ISCA.2006.25]Google Scholar
  5. El-Moursy, A., Albonesi, D.H., 2003. Front-end Policies for Improved Issue Efficiency in SMT Processors. Proc. 9th Int. Conf. on High Performance Computer Architecture, Anaheim, CA, p.31–42. [doi:10.1109/HPCA.2003.1183 522]Google Scholar
  6. Henning, J., 2000. SPEC CPU2000: measuring CPU performance in the new millennium. IEEE Computer, 33(7):28–35.CrossRefGoogle Scholar
  7. Hirata, H., Kimura, K., Nagamine, S., Mochizuki, Y., Nishimura, A., Nakase, Y., Nishizawa, T., 1992. An Elementary Processor Architecture with Simultaneous Instruction Issuing from Multiple Threads. Proc. 19th Annual Int. Symp. on Computer Architecture, Gold Coast, Australia, p.136–145. [doi:10.1109/ISCA.1992.753311]Google Scholar
  8. Latorre, F., González, J., González, A., 2004. Back-end Assignment Schemes for Clustered Multithreaded Processors. Proc. 18th Annual Int. Conf. on Supercomputing, Malo, France, p.316–325. [doi:10.1145/1006209.1006254]Google Scholar
  9. Luo, K., Gummaraju, J., Franklin, M., 2001. Balancing throughput and fairness in SMT processors. Proc. Int. Symp. on Performance Analysis of Systems and Software, Tucson, AZ, p.164–171.Google Scholar
  10. Marr, D.T., Binns, F., Hill, D.L., Hinton, G., Koufaty, D.A., Miller, J.A., Upton, M., 2002. Hyper-threading technology architecture and microarchitecture. Intel Technol. J., 6(1):4–15.Google Scholar
  11. Nicolis, G., Prigogine, I., 1977. Self-organization in Nonequilibrium Systems: From Dissipative Structures to Order through Fluctuations. John Wiley, New York. p.55–60, 429–474.MATHGoogle Scholar
  12. Perelman, E., Hamerly, G., Calder, B., 2003. Picking Statistically Valid and Early Simulation Points. Proc. 12th Int. Conf. on Parallel Architectures and Compilation Techniques, New Orleans, LA, p.244–255. [doi:10.1109/PACT.2003.1238020]Google Scholar
  13. Prigogine, I., 1967. Introduction to Thermodynamics of Irreversible Processes (3rd Ed.). Interscience Publisher, New York, p.124–134.Google Scholar
  14. Prigogine, I., 1976. Order through Fluctuation: Self-organization and Social System. In: Jantsch, E., Waddington, C. (Eds.), Evolution and Consciousness: Human Systems in Transition. Addison-Wesley, London, p.93–134.Google Scholar
  15. Raasch, S.E., Reinhardt, S.K., 2003. The Impact of Resource Partitioning on SMT Processors. Proc. 12th Int. Conf. on Parallel Architectures and Compilation Techniques, New Orleans, LA, p.15–25. [doi:10.1109/PACT.2003.1237998]Google Scholar
  16. Sharkey, J., Ponomarev, D., Ghose, K., 2005. M-Sim: A Flexible, Multithreaded Architectural Simulation Environment. Technical Report CS-TR-05-DP01. Department of Computer Science, State University of New York at Binghamton. http://www.cs.binghamton.edu/:_jsharke/m-sim
  17. Sharkey, J., Balkan, D., Ponomarev, D., 2006. Adaptive Reorder Buffers for SMT Processors. Proc. 15th Int. Conf. on Parallel Architectures and Compilation Techniques, Seattle, WA, p.244–253. [doi:10.1145/1152154.1152192]Google Scholar
  18. Sherwood, T., Perelman, E., Hamerly, G., Calder, B., 2002. Automatically Characterizing Large Scale Program Behavior. Proc. 10th Int. Conf. on Architectural Support for Programming Languages and Operating Systems, San Jose, CA, p.45–57. [doi:10.1145/605397.605403]Google Scholar
  19. Tullsen, D.M., Brown, J.A., 2001. Handling Long-latency Loads in a Simultaneous Multithreading Processor. Proc. 34th Annual Int. Symp. on Microarchitecture, Austin, TX, p.318–327.Google Scholar
  20. Tullsen, D.M., Eggers, S.J., Levy, H.M., 1995. Simultaneous Multithreading: Maximizing On-chip Parallelism. Proc. 22nd Annual Int. Symp. on Computer Architecture, Santa Margherita Ligure, Italy, p.392–403.Google Scholar
  21. Tullsen, D.M., Eggers, S.J., Emer, J.S., Levy, H.M., 1996. Exploiting Choice: Instruction Fetch and Issue on an Implementable Simultaneous Multithreading Processor. Proc. 23th Annual Int. Symp. on Computer Architecture, Philadelphia, PA, p.191–202.Google Scholar

Copyright information

© Zhejiang University and Springer-Verlag GmbH 2008

Authors and Affiliations

  • Hong-zhou Chen
    • 1
  • Xue-zeng Pan
    • 1
  • Ling-di Ping
    • 1
  • Kui-jun Lu
    • 1
  • Xiao-ping Chen
    • 1
  1. 1.School of Computer Science and TechnologyZhejiang UniversityHangzhouChina

Personalised recommendations