skip to main content
10.1145/3185768.3186405acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
research-article

Performance Prediction for Families of Data-Intensive Software Applications

Published: 02 April 2018 Publication History

Abstract

Performance is a critical system property of any system, in particular of data-intensive systems, such as image processing systems. We describe a performance engineering method for families of data-intensive systems that is both simple and accurate; the performance of new family members is predicted using models of existing family members. The predictive models are calibrated using static code analysis and regression. Code analysis is used to extract performance profiles, which are used in combination with regression to derive predictive performance models. A case study presents the application for an industrial image processing case, which revealed as benefits the easy application and identification of code performance optimization points.

References

[1]
S. Balsamo, A. di Marco, P. Inverardi, and M. Simeoni. 2004. Model-based performance prediction in software development: A survey. IEEE Trans. on Softw. Eng. Vol. 30 (2004), 295--310.
[2]
G. Bontempi and W. Kruijtzer. 2002. A Data Analysis Method for Software Performance Prediction Conference on Design, Automation and Test in Europe (DATE'02). 971--976.
[3]
F. Brosig, N. Huber, and S. Kounev. 2011. Automated Extraction of Architecture-Level Performance Models of Distributed Component-Based Systems. In 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011). 183--192.
[4]
J. L. Cánovas Izquierdo and J. Garcıa Molina. 2014. Extracting models from source code in software modernization. Softw. & Syst. Model. Vol. 13 (2014), 713--734.
[5]
G. Casale, P. Cremonesi, and R. Turrin. 2008. Robust Workload Estimation in Queueing Network Performance Models 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008). 183--187.
[6]
M. Courtois and M. Woodside. 2000. Using Regression Splines for Software Performance Analysis 2nd International Workshop on Software and Performance (WOSP'00). 105--114.
[7]
E. Eskenazi, A. Fioukov, and D. Hammer. 2004. Performance Prediction for Component Compositions. In 7th International Symposium on Component-Based Software Engineering (CBSE 2004). LNCS, Vol. Vol. 3054. 280--293.
[8]
D. Ferrari, G. Serazzi, and A. Zeigner. 1983. Measurement and Tuning of Computer Systems. Prentice Hall, Upper Saddle River, NJ.
[9]
K. Forsberg and H. Mooz. 1991. The relationship of system engineering to the project cycle. Vol. 1 (1991), 57--65.
[10]
M. Gardner. 1970. Mathematical Games -- The fantastic combinations of John Conway's new solitaire game "life". Sci. Am. Vol. 223 (1970), 120--123.
[11]
J. Gustafsson, B. Lisper, C. Sandberg, and N. Bermudo. 2003. A Tool for Automatic Flow Analysis of C-programs for WCET Calculation 8th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems (WORDS 2003). 106--112.
[12]
C. Healy, M. Sjödin, V. Rustagi, and D. Whalley. 1998. Bounding Loop Iterations for Timing Analysis. In 4th IEEE Real-Time Technology and Applications Symposium (RTAS'98).
[13]
M. Hendriks, T. Basten, J. Verriet, M. Brassé, and L. Somers. 2014. A blueprint for system-level performance modeling of software-intensive embedded systems. Int. J. Softw. Tools for Technol. Transf. Vol. 18 (2014), 21--40.
[14]
M. Hendriks, J. Verriet, T. Basten, M. Brassé, R. Dankers, R. Laan, A. Lint, H. Moneva, L. Somers, and M. Willekens. 2015. Performance Engineering for Industrial Embedded Data-Processing Systems. In 1st International Workshop on Processes, Methods, and Tools for Engineering Embedded Systems (PROMOTE2015). LNCS, Vol. Vol. 9459. 399--414.
[15]
L. Huang, J. Jia, B. Yu, B. Chun, P. Maniatis, and M. Naik. 2010. Predicting Execution Time of Computer Programs Using Sparse Polynomial Regression. Adv. Neural Inf. Process. Syst. Vol. 23 (2010), 883--891.
[16]
R. Kirner, J. Knoop, A. Prantl, M. Schordan, and A. Kadlec. 2011. Beyond loop bounds: comparing annotation languages for worst-case execution time analysis. Softw. & Syst. Model. Vol. 10 (2011), 411--437.
[17]
K. Krogmann, M. Kuperberg, and R. Reussner. 2010. Using Genetic Search for Reverse Engineering of Parametric Behavior Models for Performance Prediction. IEEE Trans. Softw. Eng. Vol. 36 (2010), 865--877.
[18]
D. C. Montgomery, E. A. Peck, and G. G. Vining. 2001. Introduction to linear regression analysis (3rd ed.). John Wiley & Sons, Inc., New York.
[19]
A. J. C. van Gemund. 2003. Symbolic performance modeling of parallel systems. IEEE Trans. Parallel and Distrib. Syst. Vol. 14 (2003), 154--165.
[20]
E. Visser. 2005. A survey of strategies in rule-based program transformation systems. J. Symbol. Comput. Vol. 40 (2005), 831--873.
[21]
J. C. Westland. 2002. The cost of errors in software development: evidence from industry. J. Syst. and Softw. Vol. 62 (2002), 1--9.
[22]
R. Wilhelm, J. Engblom, A. Ermedahl, N. Holsti, S. Thesing, D. Whalley, G. Bernat, C. Ferdinand, R. Heckmann, T. Mitra, F. Mueller, I. Puaut, P. Puschner, J. Staschulat, and P. Stenström. 2008. The worst-case execution-time problem -- overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. Vol. 7 (2008), Article 36.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICPE '18: Companion of the 2018 ACM/SPEC International Conference on Performance Engineering
April 2018
212 pages
ISBN:9781450356299
DOI:10.1145/3185768
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 02 April 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. data-intensive systems
  2. loop analysis
  3. product families
  4. software performance engineering

Qualifiers

  • Research-article

Conference

ICPE '18

Acceptance Rates

Overall Acceptance Rate 252 of 851 submissions, 30%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 81
    Total Downloads
  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media