Nothing Special   »   [go: up one dir, main page]

Skip to main content
Log in

Maximal software execution time: a regression-based approach

  • S.I. : VECOS2017
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

This work aims at facilitating the schedulability analysis of non-critical systems, in particular those that have soft real-time constraints, where worst-case execution times (WCETs) can be replaced by less stringent probabilistic bounds, which we call maximal execution times (METs). To this end, it is possible to obtain adequate probabilistic execution time models by separating the non-random dependency on input data from a modeling error that is purely random. The proposed approach first utilizes execution time multivariate measurements for building a multiple regression model and then uses the theory related to confidence bounds of coefficients, in order to estimate the upper bound of execution time. Although certainly our method cannot directly achieve extreme probability levels that are usually expected for WCETs, it is an attractive alternative for MET analysis, since it can arguably guarantee safe probabilistic bounds. The method’s effectiveness is demonstrated on a JPEG decoder running on an industrial SPARC V8 processor.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

Notes

  1. Classifying the different methods is beyond of the scope of this paper. A detailed survey of the different approaches and their classifications can found in [13].

  2. For a higher precision, it may be possible to instrument the binary code for the target platform in a separate binary executable used only for the construction of \(P_{pp}\), and still use the non-instrumented version for the end-to-end execution time measurements on the target platform.

  3. Industrial tools, such as the one in [12], can be used to automate this instrumentation process. We actually used this tool for the JPEG experiments presented in Sect. 6.

  4. In general, this execution time is never 0 due to different reasons e.g., initialization; \(\beta _0\) captures this cost.

  5. Sources are made available at www-verimag.imag.fr/~nouri/met-estimation.

  6. A common practice is to consider \(70\%\) for the training set and \(30\%\) for the test set.

  7. Downloaded from Internet, presumably authored by P. Guerrier and G. Janssen 1998.

  8. We could not obtain more measurements because the FPGA card was available for a limited period of time, and loading data into it required some manual work.

  9. Matching PCA predictors back to the original ones (or to the ones obtained by using stepwise regression) is feasible, but requires some additional work. For simplicity, we choose not to show it here.

  10. The small probability for the same \(\alpha \) in the case of stepwise regression is due to the fact that (6) takes into account the number of predictors p, which is greater in this case.

References

  1. Bernat G, Colin A, Petters SM (2002) WCET analysis of probabilistic hard real-time system. In: Proceedings of RTSS’02, IEEE, pp 279–288

  2. Bernat G, Burns A, Newby M (2005) Probabilistic timing analysis: an approach using copulas. J Embed Comput 1(2):179–194

    Google Scholar 

  3. Betts A, Bernat G (2006) Tree-based WCET analysis on instrumentation point graphs. In: Proceedings of ISORC’06, IEEE, pp 558–565

  4. Cucu-Grosjean L, Santinelli L, Houston M, Lo C, Vardanega T, Kosmidis L, Abella J, Mezzetti E, Quiñones E, Cazorla FJ (2012) Measurement-based probabilistic timing analysis for multi-path programs. In: Proceedings of ECRTS’12, IEEE, pp 91–101

  5. Draper NR, Smith H (1981) Applied regression analysis, 2nd edn. Wiley, Hoboken

    MATH  Google Scholar 

  6. Eskenazi EM, Fioukov AV, Hammer DK (2004) Performance prediction for component compositions. In: CBSE’04, Springer, pp 280–293

  7. Hastie T, Tibshirani R, Friedman J (2009) The elements of statistical learning: data mining, inference and prediction, 2nd edn. Springer, Berlin

    Book  MATH  Google Scholar 

  8. Huang L, Jia J, Yu B, Chun BG, Maniatis P, Naik M (2010) Predicting execution time of computer programs using sparse polynomial regression. In: Proceedings of NIPS’10, Curran Associates Inc., USA, pp 883–891

  9. Jolliffe I (2002) Principal component analysis. Springer series in statistics. Springer, Berlin

    MATH  Google Scholar 

  10. Lisper B, Santos M (2009) Model identification for WCET analysis. In: Proceedings of RTAS’09, IEEE, pp 55–64

  11. Poplavko P, Nouri A, Angelis L, Zerzelidis A, Bensalem S, Katsaros P (2017) Regression-based statistical bounds on software execution time. In: Verification and evaluation of computer and communication systems—11th International conference, VECoS 2017, Montreal, QC, Canada, August 24–25, 2017, Proceedings, pp 48–63. https://doi.org/10.1007/978-3-319-66176-6_4

  12. Rapita Systems Ltd (2018) Rapitime. https://www.rapitasystems.com/products/rapitime. Accessed 4 June 2018

  13. Wilhelm R, Engblom J, Ermedahl A, Holsti N, Thesing S, Whalley D, Bernat G, Ferdinand C, Heckmann R, Mitra T, Mueller F, Puaut I, Puschner P, Staschulat J, Stenström P (2008) The worst-case execution-time problem - overview of methods and survey of tools. ACM Trans Embed Comput Syst 7(3):36:1–36:53

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ayoub Nouri.

Additional information

The research leading to these results has received funding from the European Space Agency project MoSaTT-CMP, Contract No. 4000111814/14/NL/MH.

P. Poplavko: The presented research was done while working at UGA/VERIMAG.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nouri, A., Poplavko, P., Angelis, L. et al. Maximal software execution time: a regression-based approach. Innovations Syst Softw Eng 14, 101–116 (2018). https://doi.org/10.1007/s11334-018-0314-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-018-0314-9

Keywords

Navigation