Skip to main content

Performance Prediction for Black-Box Components Using Reengineered Parametric Behaviour Models

  • Conference paper
Book cover Component-Based Software Engineering (CBSE 2008)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5282))

Included in the following conference series:

Abstract

In component-based software engineering, the response time of an entire application is often predicted from the execution durations of individual component services. However, these execution durations are specific for an execution platform (i.e. its resources such as CPU) and for a usage profile. Reusing an existing component on different execution platforms up to now required repeated measurements of the concerned components for each relevant combination of execution platform and usage profile, leading to high effort. This paper presents a novel integrated approach that overcomes these limitations by reconstructing behaviour models with platform-independent resource demands of bytecode components. The reconstructed models are parameterised over input parameter values. Using platform-specific results of bytecode benchmarking, our approach is able to translate the platform-independent resource demands into predictions for execution durations on a certain platform. We validate our approach by predicting the performance of a file sharing application.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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.

References

  1. Albert, E., Arenas, P., Genaim, S., Puebla, G., Zanardini, D.: Experiments in Cost Analysis of Java Bytecode. Electr. Notes Theor. Comput. Sci. 190(1), 67–83 (2007)

    Article  MATH  Google Scholar 

  2. Becker, S., Happe, J., Koziolek, H.: Putting Components into Context - Supporting QoS-Predictions with an explicit Context Model. In: Reussner, R., Szyperski, C., Weck, W. (eds.) WCOP 2006 (June 2006)

    Google Scholar 

  3. Becker, S., Koziolek, H., Reussner, R.: The Palladio Component Model for Model-Driven Performance Prediction. Journal of Systems and Software (in press, 2008) (accepted manuscript)

    Google Scholar 

  4. Bertolino, A., Mirandola, R.: CB-SPE Tool: Putting Component-Based Performance Engineering into Practice. In: Crnkovic, I., Stafford, J.A., Schmidt, H.W., Wallnau, K.C. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 233–248. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  5. Binder, W., Hulaas, J.: Flexible and Efficient Measurement of Dynamic Bytecode Metrics. In: GPCE 2006, pp. 171–180. ACM, New York (2006)

    Google Scholar 

  6. Binder, W., Hulaas, J.: Using Bytecode Instruction Counting as Portable CPU Consumption Metric. Electr. Notes Theor. Comput. Sci. 153(2), 57–77 (2006)

    Article  Google Scholar 

  7. Bondarev, E., de With, P., Chaudron, M., Musken, J.: Modelling of Input- Parameter Dependency for Performance Predictions of Component-Based Embedded Systems. In: Proceedings of the 31th EUROMICRO Conference (EUROMICRO 2005) (2005)

    Google Scholar 

  8. Bruneton, E., Lenglet, R., Coupaye, T.: ASM: a code manipulation tool to implement adaptable systems. Adaptable and Extensible Component Systems (2002)

    Google Scholar 

  9. Courtois, M., Woodside, C.M.: Using regression splines for software performance analysis. In: WOSP 2000, Ottawa, Canada, September 2000, pp. 105–114. ACM, New York (2000)

    Google Scholar 

  10. Donnell, J.: Java Performance Profiling using the VTune Performance Analyzer (Retrieved 2007-01-18) (2004)

    Google Scholar 

  11. Ernst, M.D., et al.: The Daikon system for dynamic detection of likely invariants. Science of Computer Programming 69(1-3), 35–45 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  12. Harman, M.: The Current State and Future of Search Based Software Engineering. In: Future of Software Engineering, 2007. FOSE 2007, May 23-25, 2007, pp. 342–357 (2007)

    Google Scholar 

  13. Herder, C., Dujmovic, J.J.: Frequency Analysis and Timing of Java Bytecodes. Technical report, Computer Science Department, San Francisco State University, Technical Report SFSU-CS-TR-00.02 (2000)

    Google Scholar 

  14. Hrischuk, C.E., Murray Woodside, C., Rolia, J.A.: Trace-based load characterization for generating performance software models. IEEE Transactions Software Engineering 25(1), 122–135 (1999)

    Article  Google Scholar 

  15. Hu, E.Y.-S., Wellings, A.J., Bernat, G.: Deriving Java Virtual Machine Timing Models for PortableWorst-Case Execution Time Analysis. In: Meersman, R., Tari, Z. (eds.) OTM-WS 2003. LNCS, vol. 2889, pp. 411–424. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  16. Israr, T., Woodside, M., Franks, G.: Interaction tree algorithms to extract effective architecture and layered performance models from traces. Journal of Systems and Software, 5th International Workshop on Software and Performance 80(4), 474–492 (2007)

    Google Scholar 

  17. Koza, J.R.: Genetic Programming – On the Programming of Computers by Means of Natural Selection, 3rd edn. MIT Press, Cambridge (1993)

    MATH  Google Scholar 

  18. Kuperberg, M., Becker, S.: Predicting Software Component Performance: On the Relevance of Parameters for Benchmarking Bytecode and APIs. In: Reussner, R., Czyperski, C., Weck, W. (eds.) WCOP 2007 (July 2007)

    Google Scholar 

  19. Kuperberg, M., Krogmann, M., Reussner, R.: ByCounter: Portable Runtime Counting of Bytecode Instructions and Method Invocations. In: BYTECODE 2008 (2008)

    Google Scholar 

  20. Lambert, J., Power, J.F.: Platform Independent Timing of Java Virtual Machine Bytecode Instructions. In: Workshop on Quantitative Aspects of Programming Languages, Budapest, Hungary, March 29-30 (2008)

    Google Scholar 

  21. McMinn, P.: Search-based software test data generation: a survey. Software Testing, Verification and Reliability 14(2), 105–156 (2004)

    Article  Google Scholar 

  22. Meffert, K.: JGAP - Java Genetic Algorithms Package (last retrieved: 2008-03-18), http://jgap.sourceforge.net/

  23. Meyerhöfer, M., Meyer-Wegener, K.: Estimating Non-functional Properties of Component-based Software Based on Resource Consumption. Electr. Notes Theor. Comput. Sci. 114, 25–45 (2005)

    Article  Google Scholar 

  24. Smith, C.U., Williams, L.G.: Performance Engineering Evaluation of Object- Oriented Systems with SPEED. In: Marie, R., Plateau, B., Calzarossa, M.C., Rubino, G.J. (eds.) TOOLS 1997. LNCS, vol. 1245, Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  25. Zhang, X., Seltzer, M.: HBench:Java: an application-specific benchmarking framework for Java virtual machines. In: JAVA 2000: Proceedings of the ACM 2000 conference on Java Grande, pp. 62–70. ACM Press, New York (2000)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kuperberg, M., Krogmann, K., Reussner, R. (2008). Performance Prediction for Black-Box Components Using Reengineered Parametric Behaviour Models. In: Chaudron, M.R.V., Szyperski, C., Reussner, R. (eds) Component-Based Software Engineering. CBSE 2008. Lecture Notes in Computer Science, vol 5282. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87891-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87891-9_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87890-2

  • Online ISBN: 978-3-540-87891-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics