Achieving Predictable Performance in SMT Processors by Instruction Fetch Policy

  • Caixia Sun
  • Yongwen Wang
  • Jinbo Xu
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 396)


With the applications in embedded systems increasingly complex, future embedded processors will resemble current high performance general purpose processors. Simultaneous multithreading (SMT) is a good choice in embedded processors for its good cost-performance trade-off. However, in SMT processors, the execute time of a thread is unpredictable. The unpredictability is an undesirable feature in embedded systems. In order to apply SMT architecture to embedded processors, the problem of performance unpredictability must be addressed. Among the current researches, a noted one is done by Cazorla et al (we call it Cazorla policy). However, Cazorla policy achieves predictable performance for a time critical thread by shared resources reservation, which weakens the advantage of resources sharing in SMT processors.

In this paper, we propose a novel instruction fetch policy called APP (Achieving Predictable Performance) to control the performance of a time critical thread in SMT processors. Simulation results show that APP can achieve predictable performance for the time critical thread as effectively as Cazorla policy does. Furthermore, APP can make full use of shared resources more effectively to optimize the performance of other co-scheduled threads and overall throughput. Compared with Cazorla policy, overall throughput obtained by APP is increased by 4.9% on average and the performance of other co-scheduled threads is increased by 17.6%.


Simultaneous Multithreading Instruction Fetch Policy Predictable Performance 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Dehnavi, M.M., Hassanein, W.: A Clustered SMT Architecture for Scalable Embedded Processors. In: Proc. PRWT 2006(2006)Google Scholar
  2. 2.
    Berekovic, M., Moch, S., Pirsch, P.: A scalable, clustered SMT processor for digital signal processing. SIGARCH Computer Architecture News 32(3), 62–69Google Scholar
  3. 3.
    Radojkovic, P., Girbal, S., et al.: On the Evaluation of the Impact of Shared Resources in Multithreaded COTS Processors in Time-Critical Environments. In: 7th International Conference on High-Performance Embedded Architectures and Compilers, Paris, France, January 23-25 (2012)Google Scholar
  4. 4.
    Paolieri, M., Quiones, E., et al.: Hardware support for WCET analysis of hard real-time multicore systems. In: ISCA 2009, pp. 57–68 (2009)Google Scholar
  5. 5.
    Ungerer, T., Cazorla, F.J., et al.: Multicore Execution of Hard Real-Time Applications Supporting Analyzability. IEEE Micro 30(5), 66–75 (2010)CrossRefGoogle Scholar
  6. 6.
    Tullsen, D., Eggers, S., Levy, H.: Simultaneous multithreading: Maximizing on-chip parallelism. In: Proceedings of the 22nd Annual International Symposium on Computer Architecture, Santa Margherita Ligure, Italy, pp. 392–403 (June 1995)Google Scholar
  7. 7.
    Tullsen, D., Eggers, S., et al.: Exploiting choice: Instruction fetch and issue on an implementable simultaneous multithreading processor. In: Proceedings of the 23rd Annual International Symposium on Computer Architecture, PA, USA, pp. 191–202 (May 1996)Google Scholar
  8. 8.
    Eggers, S.J., Emer, J., et al.: Simultaneous Multithreading: A Platform for next-generation processors. IEEE Micro, 12–19 (September-October 1997)Google Scholar
  9. 9.
    Cazorla, F., Knijnenburg, P., et al.: QoS for high-performance SMT processors in embedded systems. IEEE Micro. Special Issue on Embedded Systems 24(4), 24–31 (2004)Google Scholar
  10. 10.
    Cazorla, F., Knijnenburg, P., et al.: Architectural support for real-time task scheduling in SMT processors. In: Proceedings of International Conference on Compilers, Architectures and Synthesis for Embedded Systems, California, USA, pp. 166–176 (September 2005)Google Scholar
  11. 11.
    Cazorla, F.J., Knijnenburg, P.M.W., Sakellariou, R., Fernández, E., Ramírez, A., Valero, M.: Feasibility of QoS for SMT. In: Danelutto, M., Vanneschi, M., Laforenza, D. (eds.) Euro-Par 2004. LNCS, vol. 3149, pp. 535–540. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  12. 12.
    Cazorla, F., Knijnenburg, P., et al.: Predictable performance in SMT processors. In: Proceedings of ACM International Conference on Computing Frontiers, pp. 171–182 (April 2004)Google Scholar
  13. 13.
    Cazorla, F., et al.: Enabling SMT for Real-Time Embedded Systems. In: Proceedings of the 12th European Signal Processing Conference (September 2004)Google Scholar
  14. 14.
    Sherwood, T., Calder, B.: Time varying behavior of programs, Tech. Report UCSDCS99-630, University. of California (August 1999)Google Scholar
  15. 15.
    Tullsen, D.: Simulation and modeling of a simultaneous multithreading processor. In: Proceedings of the 22nd Annual Computer Measurement Group Conference, San Diego, CA, USA, pp. 819–828 ( December 1996)Google Scholar
  16. 16.
    MediaBench II Benchmark,
  17. 17.
    The standard performance evaluation corporation, WWW cite:

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Caixia Sun
    • 1
  • Yongwen Wang
    • 1
  • Jinbo Xu
    • 1
  1. 1.School of ComputerNational University of Defense TechnologyChangshaP.R. China

Personalised recommendations