Skip to main content

A Control Theory Approach to Improve Microprocessors for Real-Time Applications by Self-Adapting Thread Performance

  • Chapter
  • First Online:
Self-Organization in Embedded Real-Time Systems
  • 1110 Accesses

Abstract

Modern superscalar, multithreaded microprocessors deliver high performance but lack of predictability. Our idea is to apply control theory on such a microprocessor to improve its real-time capability. The microprocessor is fitted with a closed control loop softening the impact of latency cycles and therefore stabilizing its throughput. Using a statistical processor model we are able to guarantee a defined rate of throughput and the stability of the controller. Additionally, we show the capability of the controlled microprocessor to save power and discuss the hardware overhead introduced by our closed control loop.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Brinkschulte U, Pacher M (2005) Improving the real-time behaviour of a multithreaded Java microcontroller by control theory and model based latency prediction. In: WORDS 2005, Tenth IEEE international workshop on object-oriented real-time dependable systems, Sedona, Arizona

    Google Scholar 

  2. Brinkschulte U, Pacher M (2008) A control theory approach to improve the real-time capability of multi-threaded microprocessors. In: ISORC, 2008– 11th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing, Orlando, Florida, USA, May 5–7, 2008, 399–404

    Google Scholar 

  3. Brinkschulte U, Pacher M (2009) A theoretical examination of a self-adaptation approach to improve the real-time capabilities in multi-threaded microprocessors. In: SASO 2009 – Third IEEE international conference on self-adaptive and self-organizing systems, San Francisco, California

    Google Scholar 

  4. Brinkschulte U, Ungerer T (2007) Mikrocontroller und mikroprozessoren, 2nd edn. Springer, Berlin

    Book  Google Scholar 

  5. Brinkschulte U, Lohn D, Pacher M (2009) Towards a statistical model of a microprocessor’s throughput by analyzing pipeline stalls. SEUS 2009 – 7th IFIP workshop on software technologies for future embedded and ubiquitous systems (SEUS) Newport Beach, USA, Nov 16–18, 2009

    Google Scholar 

  6. Colin A, Puaut I (2000) Worst case execution time analysis for a processor with branch prediction. Kluwer, Norwell, pp249–274. http://dx.doi.org/10.1023/A:1008149332687

  7. Corporation I (2002) Intel speedstepTM technology. Intel Cooperation, Technical report

    Google Scholar 

  8. Eyerman S, Eeckhout L, Karkhanis T, Smith JE (2006) A performance counter architecture for computing accurate cpi components. SIGOPS Oper Syst Rev 40(5):175–184. http://doi.acm.org/10.1145/1168917.1168880

  9. Eyerman S, Eeckhout L, Karkhanis T, Smith JE (2009) A mechanistic performance model for superscalar out-of-order processors. ACM Trans Comput Syst 27(2):1–37. http://doi.acm.org/10.1145/1534909.1534910

    Google Scholar 

  10. Gonzalez R, Horowitz M (1996) Energy dissipation in general purpose microprocessors. IEEEJSolid-State Circ 31:1277–1284

    Article  Google Scholar 

  11. Hughes C, Srinivasan J, Adve S (2001) Saving energy with architectural and frequency adaptations for multimedia applications. In: Proceedings of the 34th Annual International Symposium on Microarchitecture. ACM/IEEE, Austin, Texas, USA, Dec 1–5, 2001

    Google Scholar 

  12. Kalla R, Sinharoy B, Starke WJ, Floyd M (2010) Power7: Ibm’s next-generation server processor. IEEE Micro 30(2):7–15. http://dx.doi.org/10.1109/MM.2010.38

    Google Scholar 

  13. Karkhanis TS, Smith JE (2004) A first-order superscalar processor model. SIGARCH Comput Arch News 32(2):338.http://doi.acm.org/ http://doi.acm.org/10.1145/1028176.1006729

  14. Kirner R, Puschner P (2005) Classification of WCET analysis techniques. In: Proceedings of the 8th IEEE international symposium on object-oriented real-time distributed computing, pp190–199

    Google Scholar 

  15. Kreuzinger J (2001) Echtzeitfähige ereignisbehandlung mit hilfe eines mehrfädigen java-mikrocontrollers. Ph.D. thesis, Logos Verlag, Berlin

    Google Scholar 

  16. Li X, Roychoudhury A, Mitra T (2004) Modeling out-of-order processors for software timing analysis. In: RTSS ’04: Proceedings of the 25th IEEE international real-time systems symposium. IEEE Computer Society, Washington, DC, pp92–103. http://dx.doi.org/10.1109/REAL.2004.33

  17. Lohn D, Pacher M, Brinkschulte U (2011) A generalized model to control the throughput in a processor for real-time applications. In: 14th IEEE international symposium on object/component/service-oriented. Real-time distributed computing–ISORC 2011, Newport Beach, USA, Mar 28–31, 2011

    Google Scholar 

  18. Lu C, Stankovic JA, Tao G, Son SH (1999) Design and evaluation of a feedback control EDF scheduling algorithm. In: Real time systems symposium (RTSS) 1999, Phoenix

    Google Scholar 

  19. Lu C, Stankovic JA, Abdelzaher TF, Tao G, Son SH, Marley M (2000) Performance specifications and metrics for adaptive real-time systems. In: Real time systems symposium (RTSS) 2000, Orlando

    Google Scholar 

  20. Pacher M, Brinkschulte U (2005) Implementing control algorithms within a multithreaded java microcontroller. In: ARCS 05, 18th international conference on architecture of computing systems, Innsbruck

    Google Scholar 

  21. Pfeffer M, Ungerer T, Uhrig S, Brinkschulte U (2002) Connecting peripherial interfaces to a multi-threaded java microcontroller. In: Workshop on java in embedded systems, ARCS 2002

    Google Scholar 

  22. Sasanka R, Hughes C, Adve S (2002) Joint local and global hardware adapations for energy. In: Proceedings of the ASPLOS-X. ACM, NewYork

    Google Scholar 

  23. Sharkey JJ, Ponomarev DK (2005) M-sim: A flexible, multithreaded architectural simulation environment. Techenical report, Department of Computer Science, State University of New York at Binghamton

    Google Scholar 

  24. Uhrig S, Liemke C, Pfeffer M, Becker J, Brinkschulte U, Ungerer T (2002) Implementing real-time scheduling within a multithreaded java microcontroller. In: 6th workshop on multithreaded execution, architecture, and compilation MTEAC-6, Proceedings of the 35th Annual International Symposium on Microarchitecture. ACM/IEEE, Istanbul, Turkey, Nov 18–22, 2002

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Uwe Brinkschulte .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer Science+Business Media New York

About this chapter

Cite this chapter

Brinkschulte, U., Lohn, D., Pacher, M., Bauer, M. (2013). A Control Theory Approach to Improve Microprocessors for Real-Time Applications by Self-Adapting Thread Performance. In: Higuera-Toledano, M., Brinkschulte, U., Rettberg, A. (eds) Self-Organization in Embedded Real-Time Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-1969-3_1

Download citation

  • DOI: https://doi.org/10.1007/978-1-4614-1969-3_1

  • Published:

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4614-1968-6

  • Online ISBN: 978-1-4614-1969-3

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics