Online Learning of Run-Time Models for Performance and Resource Management in Data Centers | SpringerLink
Skip to main content

Online Learning of Run-Time Models for Performance and Resource Management in Data Centers

  • Chapter
  • First Online:
Self-Aware Computing Systems

Abstract

In this chapter, we explain how to extract and learn run-time models that a system can use for self-aware performance and resource management in data centers. We abstract from concrete formalisms and identify extraction aspects relevant to performance models. We categorize the learning aspects into: (i) model structure, (ii) model parametrization (estimation and calibration of model parameters), and (iii) model adaptation options (change point detection and run-time reconfiguration). The chapter identifies alternative approaches for the respective model aspects. The type and granularity of each aspect depend on the characteristic of the concrete performance models.

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

Access this chapter

Subscribe and save

Springer+ Basic
¥17,985 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
JPY 3498
Price includes VAT (Japan)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
JPY 19447
Price includes VAT (Japan)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
JPY 24309
Price includes VAT (Japan)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
JPY 24309
Price includes VAT (Japan)
  • 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Mahmoud Awad and Daniel A. Menascé. Computer Performance Engineering: 11th European Workshop, EPEW 2014, Florence, Italy, September 11–12, 2014. Proceedings, chapter On the Predictive Properties of Performance Models Derived through Input-Output Relationships, pages 89–103. Springer International Publishing, Cham, 2014.

    Google Scholar 

  2. Paul Barham, Austin Donnelly, Rebecca Isaacs, and Richard Mortier. Using Magpie for request extraction and workload modelling. In Proceedings of the 6th Symposium on Operating Systems Design & Implementation (OSDI’04), pages 18–18. USENIX Association, 2004.

    Google Scholar 

  3. Steffen Becker, Michael Hauck, Mircea Trifu, Klaus Krogmann, and Jan Kofron. Reverse engineering component models for quality predictions. In Proceedings of the 14th European Conference on Software Maintenance and Reengineering (CSMR ’10), pages 199–202. IEEE, 2010.

    Google Scholar 

  4. Antonia Bertolino, Antonello Calabrò, Francesca Lonetti, and Antonino Sabetta. Glimpse: A generic and flexible monitoring infrastructure. In Proceedings of the 13th European Workshop on Dependable Computing, EWDC ’11, pages 73–78, New York, NY, USA, 2011. ACM.

    Google Scholar 

  5. Lionel C. Briand, Yvan Labiche, and Johanne Leduc. Toward the reverse engineering of UML sequence diagrams for distributed Java software. IEEE Transactions of Software Engineering, 32(9):642–663, 2006.

    Article  Google Scholar 

  6. Fabian Brosig. Architecture-Level Software Performance Models for Online Performance Prediction. PhD thesis, Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany, 2014.

    Google Scholar 

  7. Fabian Brosig, Nikolaus Huber, and Samuel Kounev. Automated extraction of architecture-level performance models of distributed component-based systems. In Proceedings of the 26th IEEE/ACM International Conference On Automated Software Engineering (ASE 2011), 2011.

    Google Scholar 

  8. Fabian Brosig, Samuel Kounev, and Klaus Krogmann. Automated Extraction of Palladio Component Models from Running Enterprise Java Applications. In Proceedings of the 1st International Workshop on Run-time mOdels for Self-managing Systems and Applications (ROSSA 2009). ACM, 2009.

    Google Scholar 

  9. Andreas Brunnert, Andre van Hoorn, Felix Willnecker, Alexandru Danciu, Wilhelm Hasselbring, Christoph Heger, Nikolas Herbst, Pooyan Jamshidi, Reiner Jung, Joakim von Kistowski, Anne Koziolek, Johannes Kroß, Simon Spinner, Christian Vögele, Jürgen Walter, and Alexander Wert. Performance-oriented DevOps: A research agenda. Technical Report SPEC-RG-2015-01, SPEC Research Group — DevOps Performance Working Group, Standard Performance Evaluation Corporation (SPEC), 2015.

    Google Scholar 

  10. Andreas Brunnert, Christian Vgele, and Helmut Krcmar. Automatic Performance Model Generation for Java Enterprise Edition (EE) Applications. In MariaSimonetta Balsamo, WilliamJ. Knottenbelt, and Andrea Marin, editors, Computer Performance Engineering, volume 8168 of Lecture Notes in Computer Science, pages 74–88. Springer Berlin Heidelberg, 2013.

    Google Scholar 

  11. Mauro Caporuscio, Antinisca Di Marco, and Paola Inverardi. Model-based system reconfiguration for dynamic performance management. Journal of Systems and Software, 80(4):455–473, 2007.

    Article  Google Scholar 

  12. Valeria Cardellini, Emiliano Casalicchio, Vincenzo Grassi, Stefano Iannucci, Francesco Lo Presti, and Raffaela Mirandola. MOSES: A framework for qos driven runtime adaptation of service-oriented systems. IEEE Trans. Software Eng., 38(5):1138–1159, 2012.

    Article  Google Scholar 

  13. Antonio Carzaniga, David S. Rosenblum, and Alexander L. Wolf. Design and evaluation of a wide-area event notification service. ACM Trans. Comput. Syst., 19(3):332–383, 2001.

    Article  Google Scholar 

  14. Vittorio Cortellessa, Antinisca Di Marco, and Paola Inveradi. Model-based software performance analysis. Springer-Verlag, 2011.

    Google Scholar 

  15. Marc Courtois and Murray Woodside. Using regression splines for software performance analysis. In Proceedings of the 2nd International Workshop on Software and Performance (WOSP ’00), pages 105–114. ACM, 2000.

    Google Scholar 

  16. Antinisca Di Marco, Paola Inverardi, and Romina Spalazzese. Synthesizing self-adaptive connectors meeting functional and performance concerns. In Marin Litoiu and John Mylopoulos, editors, Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2013, San Francisco, CA, USA, May 20–21, 2013, pages 133–142. IEEE Computer Society, 2013.

    Google Scholar 

  17. Lei Ding and Nenad Medvidovic. Focus: A light-weight, incremental approach to software architecture recovery and evolution. In In Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA ’01), pages 191–200. IEEE, 2001.

    Google Scholar 

  18. Ilenia Epifani, Carlo Ghezzi, Raffaela Mirandola, and Giordano Tamburrelli. Model evolution by run-time parameter adaptation. In Proceedings of the 31st International Conference on Software Engineering, (ICSE 2009), pages 111–121. IEEE, 2009.

    Google Scholar 

  19. Carlo Ghezzi, Valerio Panzica La Manna, Alfredo Motta, and Giordano Tamburrelli. Performance-driven dynamic service selection. Concurrency and Computation: Practice and Experience, 27(3):633–650, 2015.

    Article  Google Scholar 

  20. Susan L. Graham, Peter B. Kessler, and Marshall K. Mckusick. Gprof: A call graph execution profiler. SIGPLAN Not., 17(6):120–126, 1982.

    Article  Google Scholar 

  21. Robert J. Hall. Call path profiling. In Proceedings of the 14th International Conference on Software Engineering (ICSE ’92), pages 296–306. ACM, 1992.

    Google Scholar 

  22. Robert Heinrich, Eric Schmieders, Reiner Jung, Kiana Rostami, Andreas Metzger, Wilhelm Hasselbring, Ralf Reussner, and Klaus Pohl. Integrating run-time observations and design component models for cloud system analysis. In Proceedings of the 9th Workshop on Models@run.time co-located with 17th International Conference on Model Driven Engineering Languages and Systems (MODELS 2014), Valencia, Spain, September 30, 2014., pages 41–46, 2014.

    Google Scholar 

  23. Curtis E. Hrischuk, C. Murray Woodside, Jerome A. Rolia, and Rod Iversen. Trace-based load characterization for generating performance software models. IEEE Transactions of Software Engineering, 25(1):122–135, January 1999.

    Google Scholar 

  24. Nikolaus Huber, André van Hoorn, Anne Koziolek, Fabian Brosig, and Samuel Kounev. Modeling Run-Time Adaptation at the System Architecture Level in Dynamic Service-Oriented Environments. Service Oriented Computing and Applications Journal (SOCA), 8(1):73–89, March 2014.

    Article  Google Scholar 

  25. Marianne Huchard, A. Djamel Seriai, and Alae-Eddine El Hamdouni. Component-based architecture recovery from object-oriented systems via relational concept analysis. In Proceedings of the 7th International Conference on Concept Lattices and Their Applications (CLA 2010), pages 259–270, 2010.

    Google Scholar 

  26. Hyperic. Hyperic (2014). http://www.hyperic.com, 2014.

  27. Tauseef Israr, Murray Woodside, and Greg Franks. Interaction tree algorithms to extract effective architecture and layered performance models from traces. Journal of Systems and Software, 80(4):474–492, 2007.

    Article  Google Scholar 

  28. Gregory Katsaros, George Kousiouris, Spyridon V. Gogouvitis, Dimosthenis Kyriazis, Andreas Menychtas, and Theodora Varvarigou. A self-adaptive hierarchical monitoring mechanism for clouds. Journal of Systems and Software, 85(5):1029 – 1041, 2012.

    Article  Google Scholar 

  29. Samuel Kounev, Konstantin Bender, Fabian Brosig, Nikolaus Huber, and Russell Okamoto. Automated simulation-based capacity planning for enterprise data fabrics. In Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques (SIMUTools ’11), pages 27–36. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), 2011.

    Google Scholar 

  30. Samuel Kounev, Fabian Brosig, and Nikolaus Huber. The Descartes Modeling Language. Technical report, Department of Computer Science, University of Wuerzburg, 2014.

    Google Scholar 

  31. Heiko Koziolek, Steffen Becker, Jens Happe, Petr Tuma, and Thijmen de Gooijer. Towards Software Performance Engineering for Multicore and Manycore Systems. SIGMETRICS Perform. Eval. Rev., 41(3):2–11, December 2013.

    Article  Google Scholar 

  32. Klaus Krogmann. Reconstruction of Software Component Architectures and Behaviour Models using Static and Dynamic Analysis. PhD thesis, Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany, 2010.

    Google Scholar 

  33. Michael Kuperberg, Martin Krogmann, and Ralf Reussner. ByCounter: Portable runtime counting of bytecode instructions and method invocations. In Proceedings of the 3rd International Workshop on Bytecode Semantics, Verification, Analysis and Transformation, 2008.

    Google Scholar 

  34. Michael Kuperberg, Martin Krogmann, and Ralf Reussner. TimerMeter: Quantifying accuracy of software times for system analysis. In Proceedings of the 6th International Conference on Quantitative Evaluation of SysTems (QEST) 2009, 2009.

    Google Scholar 

  35. Moreno Marzolla and Raffaela Mirandola. Performance aware reconfiguration of software systems. In Alessandro Aldini, Marco Bernardo, Luciano Bononi, and Vittorio Cortellessa, editors, Computer Performance Engineering - 7th European Performance Engineering Workshop, EPEW 2010, Bertinoro, Italy, September 23–24, 2010. Proceedings, volume 6342 of Lecture Notes in Computer Science, pages 51–66. Springer, 2010.

    Google Scholar 

  36. Daniel A. Menascé, Mohamed Bennani, and H.Honglei Ruan. On the use of online analytic performance models, in self-managing and self-organizing computer systems. In Self-star Properties in Complex Information Systems, pages 128–142, 2005.

    Google Scholar 

  37. Daniel A. Menascé and Hassan Gomaa. A method for design and performance modeling of client/server systems. IEEE Transactions of Software Engineering, 26(11):1066–1085, 2000.

    Article  Google Scholar 

  38. Daniel A. Menascé, Honglei Ruan, and Hassan Gomaa. QoS management in service-oriented architectures. Perform. Eval., 64(7-8):646–663, 2007.

    Article  Google Scholar 

  39. Adrian Mos. A framework for adaptive monitoring and performance management of component-based enterprise applications. PhD thesis, Dublin City Universit, 2004.

    Google Scholar 

  40. Dorin C. Petriu and C. Murray Woodside. Software performance models from system scenarios in use case maps. In Proceedings of the 12th International Conference on Computer Performance Evaluation, Modelling Techniques and Tools (TOOLS ’02), pages 141–158. Springer-Verlag, 2002.

    Google Scholar 

  41. Connie U. Smith and Lloyd G. Williams. Performance Solutions: A practical guide to creating responsive, scalable software. Addison-Wesley, 2002.

    Google Scholar 

  42. Simon Spinner, Giuliano Casale, Xiaoyun Zhu, and Samuel Kounev. LibReDE: A library for resource demand estimation. In Proceedings of the 5th ACM/SPEC International Conference on Performance Engineering (ICPE ’14), pages 227–228. ACM, 2014.

    Google Scholar 

  43. Markus von Detten. Archimetrix: A tool for deficiency-aware software architecture reconstruction. In Proceedings of the 2012 19th Working Conference on Reverse Engineering (WCRE ’12), pages 503–504. IEEE Computer Society, 2012.

    Google Scholar 

  44. Dennis Westermann, Jens Happe, Rouven Krebs, and Roozbeh Farahbod. Automated inference of goal-oriented performance prediction functions. In Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering (ASE), pages 190–199, 2012.

    Google Scholar 

  45. Xiuping Wu and Murray Woodside. Performance modeling from software components. In Proceedings of the 4th International Workshop on Software and Performance (WOSP ’04), pages 290–301. ACM, 2004.

    Google Scholar 

  46. Zenoss. Zenoss (2014). http://www.zenoss.com, 2014.

  47. Zhuoyao Zhang, L. Cherkasova, and Boon Thau Loo. Automating platform selection for mapreduce processing in the cloud. In Cloud and Autonomic Computing (ICCAC), 2015 International Conference on, pages 125–136, Sept 2015.

    Google Scholar 

  48. Anne Koziolek, Heiko Koziolek, and Ralf Reussner. PerOpteryx: automated application of tactics in multi-objective software architecture optimization. In Ivica Crnkovic, Judith A. Stafford, Dorina C. Petriu, Jens Happe, and Paola Inverardi, editors, Joint proceedings of the Seventh International ACM SIGSOFT Conference on the Quality of Software Architectures and the 2nd ACM SIGSOFT International Symposium on Architecting Critical Systems (QoSA-ISARCS 2011), pages 33–42. ACM, New York, NY, USA, 2011.

    Google Scholar 

Download references

Acknowledgements

This work is supported by the German Research Foundation (DFG) in the Priority Programme “DFG-SPP 1593: Design For Future-Managed Software Evolution” (KO 3445/15-1).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jürgen Walter .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this chapter

Cite this chapter

Walter, J., Di Marco, A., Spinner, S., Inverardi, P., Kounev, S. (2017). Online Learning of Run-Time Models for Performance and Resource Management in Data Centers. In: Kounev, S., Kephart, J., Milenkoski, A., Zhu, X. (eds) Self-Aware Computing Systems. Springer, Cham. https://doi.org/10.1007/978-3-319-47474-8_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-47474-8_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-47472-4

  • Online ISBN: 978-3-319-47474-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics