Skip to main content

Estimation of an Early WCET Using Different Machine Learning Approaches

  • Conference paper
  • First Online:
Book cover Advances on P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC 2022)

Part of the book series: Lecture Notes in Networks and Systems ((LNNS,volume 571))

Abstract

The Worst-Case Execution Time (WCET) is crucial and an essential factor in analyzing and developing Real-Time Embedded Systems. The idea of the WCET allows the designer to create safe and reliable real-time systems. The WCET is used by the scheduler to determine an appropriate scheduling scheme for the application and to guarantee timing constraints. These systems need to satisfy a strict deadline, and failing leads to catastrophic events such as loss of life. Generally, WCET analysis is applied only in the late stages of Safety-Critical Systems development when the hardware is available, and code is compiled and linked. Different methods exist to determine WCET, but none of these provide early insight into WCET. Suppose early WCET is unavailable during system development. In that case, many systems design decisions are made using experience, which might be impractical if systems don’t satisfy timing constraints, and it may result in costly system re-design. However, we need early WCET in the initial stages of systems development as an essential prerequisite to configure the system properly. We propose a method to determine early WCET using machine learning models without the need for the hardware and binaries, i.e., source-level timing analysis-this new approach estimate WCET using source code. The models can predict WCET without running the code on the platform once it is trained, which is created using the Pytorch framework. The feasibility of this approach is evaluated using six different machine learning models such as Support Vector Regression (Linear kernel and RBF kernel), Tree Regression, Forest Regression, K-Nearest Neighbors Regression and Ridge Regression. The viability of the proposed method is demonstrated with the TACLeBench benchmark suite. The results show reasonable estimates on the predicted execution time of the final and compiled code, proving the prospectus of the methodology.

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 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.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

References

  1. Wilhelm, R., et al.: The worst-case execution-time problem-overview of methods and survey of tools. ACM Trans. Embedded Comput. Syst. (TECS) 7(3), 1–53 (2008)

    Article  Google Scholar 

  2. Ferdinand, C., Heckmann, R.: aiT: worst-case execution time prediction by static program analysis. In: Jacquart, R. (ed.) ait: worst-case execution time prediction by static program analysis. IIFIP, vol. 156, pp. 377–383. Springer, Boston, MA (2004). https://doi.org/10.1007/978-1-4020-8157-6_29

    Chapter  Google Scholar 

  3. Hardy, D., Rouxel, B., Puaut, I.: The heptane static worst-case execution time estimation tool. In: 17th International Workshop on Worst-Case Execution Time Analysis (WCET 2017). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2017)

    Google Scholar 

  4. Cassé, H., Sainrat, P.: OTAWA, a framework for experimenting WCET computations. In: Conference ERTS 2006 (2006)

    Google Scholar 

  5. Rapita Systems: Rapita Systems \(|\) On-target software verification solutions (2020). https://www.rapitasystems.com. Accessed 17 Mar 2020

  6. Kumar, V.: Deep neural network approach to estimate early worst-case execution time. In: 2021 IEEE/AIAA 40th Digital Avionics Systems Conference (DASC), pp. 1–8. IEEE (2021)

    Google Scholar 

  7. Altenbernd, P., Gustafsson, J., Lisper, B., Stappert, F.: Early execution time-estimation through automatically generated timing models. Real-Time Syst. 52(6), 731–760 (2016). https://doi.org/10.1007/s11241-016-9250-7

    Article  Google Scholar 

  8. Bonenfant, A., Claraz, D., Michiel, M.D., Sotin, P.: Early WCET prediction using machine learning. In: 17th International Workshop on Worst-Case Execution Time Analysis (WCET 2017). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2017)

    Google Scholar 

  9. Huybrechts, T., Mercelis, S., Hellinckx, P.: A new hybrid approach on WCET analysis for real-time systems using machine learning. In: 18th International Workshop on Worst-Case Execution Time Analysis (WCET 2018). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2018)

    Google Scholar 

  10. Oyamada, M.S., Zschornack, F., Wanger, F.R.: Accurate software performance estimation using domain classification and neural networks. In: Proceedings. SBCCI 2004. 17th Symposium on Integrated Circuits and Systems Design (IEEE Cat. No. 04TH8784), pp. 175-180. IEEE (2004)

    Google Scholar 

  11. Huybrechts, T., Cassimon, T., Mercelis, S., Hellinckx, P.: Introduction of deep neural network in hybrid WCET analysis. In: Xhafa, F., Leu, F.-Y., Ficco, M., Yang, C.-T. (eds.) 3PGCIC 2018. LNDECT, vol. 24, pp. 415–425. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-02607-3_38

    Chapter  Google Scholar 

  12. Abella, J., et al.: WCET analysis methods: Pitfalls and challenges on their trustworthiness. In: 10th IEEE International Symposium on Industrial Embedded Systems (SIES), pp. 1–10. IEEE (2015)

    Google Scholar 

  13. Wenzel, I., Kirner, R., Rieder, B., Puschner, P.: Measurement-based worst-case execution time analysis. In: Third IEEE Workshop on Software Technologies for Future Embedded and Ubiquitous Systems (SEUS 2005), pp. 7–10. IEEE (2005)

    Google Scholar 

  14. Heckmann, R., Christian, F.: Worst-case execution time prediction by static program analysis. In: 18th International Parallel and Distributed Processing Symposium (IPDPS 2004), pp. 26–30. IEEE Computer Society (2004)

    Google Scholar 

  15. Petters, S.M.: Bounding the execution time of real-time tasks on modern processors. In: Proceedings Seventh International Conference on Real-Time Computing Systems and Applications, pp. 498–502. IEEE (2000)

    Google Scholar 

  16. Smola, A.J., Schölkopf, B.: A tutorial on support vector regression. Stat. Comput. 14(3), 199–222 (2004)

    Article  MathSciNet  Google Scholar 

  17. Zhong, Y.: The analysis of cases based on decision tree. In: 2016 7th IEEE International Conference on Software Engineering and Service Science (ICSESS), pp. 142–147. IEEE (2016)

    Google Scholar 

  18. Svetnik, V., Liaw, A., Tong, C., Culberson, J.C., Sheridan, R.P., Feuston, B.P.: Random forest: a classification and regression tool for compound classification and QSAR modeling. J. Chem. Inform. Comput. Sci. 43(6), 1947–1958 (2003)

    Article  Google Scholar 

  19. Kramer, O.: Dimensionality reduction with unsupervised nearest neighbors, vol. 51. Springer, Berlin (2013). https://doi.org/10.1007/978-3-642-38652-7

    Book  MATH  Google Scholar 

  20. Hesterberg, T.: Bootstrap. Wiley Interdisc. Rev. Comput. Stat. 3(6), 497–526 (2011)

    Article  Google Scholar 

  21. Lisper, B.: SWEET – a tool for WCET flow analysis (extended abstract). In: Margaria, T., Steffen, B. (eds.) ISoLA 2014. LNCS, vol. 8803, pp. 482–485. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45231-8_38

    Chapter  Google Scholar 

  22. Raspberry pi platforms (2020). https://www.raspberrypi.org/

  23. Falk, H., et al.: TACLeBench: a benchmark collection to support worst-case execution time research. In: 16th International Workshop on Worst-Case Execution Time Analysis (2016)

    Google Scholar 

  24. Pedregosa, F., et al.: Scikit-learn: machine learning in Python. J. Mach. Learn. Res. 12, 2825–2830 (2011)

    MathSciNet  MATH  Google Scholar 

  25. Géron, A.: Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow: Concepts, tools, and techniques to build intelligent systems. O’Reilly Media, Inc. (2019)

    Google Scholar 

Download references

Acknowledgments

The author would like to thank Prof. S.K Nandy for his valuable suggestions on several aspects of this paper. The author is also very grateful to Sourav Mishra for his insightful comments and feedback.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vikash Kumar .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Kumar, V. (2023). Estimation of an Early WCET Using Different Machine Learning Approaches. In: Barolli, L. (eds) Advances on P2P, Parallel, Grid, Cloud and Internet Computing. 3PGCIC 2022. Lecture Notes in Networks and Systems, vol 571. Springer, Cham. https://doi.org/10.1007/978-3-031-19945-5_30

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-19945-5_30

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-19944-8

  • Online ISBN: 978-3-031-19945-5

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics