skip to main content
research-article

Code-Inherent Traffic Shaping for Hard Real-Time Systems

Published:08 October 2019Publication History
Skip Abstract Section

Abstract

Modern hard real-time systems evolved from isolated single-core architectures to complex multi-core architectures which are often connected in a distributed manner. With the increasing influence of interconnections in hard real-time systems, the access behavior to shared resources of single tasks or cores becomes a crucial factor for the system’s overall worst-case timing properties. Traffic shaping is a powerful technique to decrease contention in a network and deliver guarantees on network streams. In this paper we present a novel approach to automatically integrate a traffic shaping behavior into the code of a program for different traffic shaping profiles while being as least invasive as possible. As this approach is solely depending on modifying programs on a code-level, it does not rely on any additional hardware or operating system-based functions.

We show how different traffic shaping profiles can be implemented into programs using a greedy heuristic and an evolutionary algorithm, as well as their influences on the modified programs. It is demonstrated that the presented approaches can be used to decrease worst-case execution times in multi-core systems and lower buffer requirements in distributed systems.

References

  1. The Motor Industry Software Reliability Association. 2013. MISRA C: 2012 Guidelines for the use of the C language in critical systems.Google ScholarGoogle Scholar
  2. S. K. Baruah. 2003. Dynamic- and static-priority scheduling of recurring real-time tasks. Real-Time Systems 24 (2003).Google ScholarGoogle Scholar
  3. S. Bleuler, M. Laumanns, L. Thiele, et al. 2003. PISAâa platform and programming language independent interface for search algorithms. In Proceedings of EMO 2003.Google ScholarGoogle Scholar
  4. C. G. Lee, P. Chow and M. G. Stoodley. [n.d.]. UTDSP Benchmark Suite. Retrieved 2019-04-05 from http://www.eecg.toronto.edu/ corinna/DSP/infrastructure/UTDSP.html.Google ScholarGoogle Scholar
  5. M. Potkonjak C. Lee and W. H. Mangione-Smith. 1997. MediaBench: A tool for evaluating and synthesizing multimedia and communications systems. In Proceedings of MICRO 1997.Google ScholarGoogle Scholar
  6. C. Chiasserini and R. R. Rao. 2001. Improving battery performance by using traffic shaping techniques. IEEE Journal on Selected Areas in Communications 19, 7 (2001).Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Robert I. Davis and Nicolas Navet. 2012. Traffic shaping to reduce jitter in controller area network (CAN). SIGBED Rev. 9, 4 (2012).Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. H. Falk, S. Altmeyer, P. Hellinckx, et al. 2016. TACLeBench: A benchmark collection to support worst-case execution time research. In Proceedings of the WCET 2016.Google ScholarGoogle Scholar
  9. H. Falk and P. Lokuciejewski. 2010. A compiler framework for the reduction of worst-case execution times. Real-Time Systems 46, 2 (2010).Google ScholarGoogle Scholar
  10. L. Georgiadis, R. Guerin, V. Peris, and K. N. Sivarajan. 1996. Efficient network QoS provisioning based on per node traffic shaping. IEEE/ACM Transactions on Networking 4, 4 (1996).Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. J. Gustafsson, A. Betts, A. Ermedahl, et al. 2010. The Mälardalen WCET Benchmarks -- Past, Present and Future. In Proceedings of WCET 2010.Google ScholarGoogle Scholar
  12. M. R. Guthaus, J. S. Ringenberg, D. Ernst, et al. 2001. MiBench: A free, commercially representative embedded benchmark suite. In Proceedings of IISWC 2001.Google ScholarGoogle ScholarCross RefCross Ref
  13. B. Hu, K. Huang, G. Chen, et al. 2015. Adaptive runtime shaping for mixed-criticality systems. In Proceedings of EMSOFT 2015.Google ScholarGoogle ScholarCross RefCross Ref
  14. ISO 11898-2:2016 2016. Road Vehicles -- Controller Area Network (CAN) -- Part 2: High-speed Medium Access Unit. Standard. International Organization for Standardization, Geneva, CH.Google ScholarGoogle Scholar
  15. M. Jacobs, S. Hahn, and S. Hack. 2015. WCET analysis for multi-core processors with shared buses and event-driven bus arbitration. In Proceedings of RTNS 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Joseph and P. Pandya. 1986. Finding response times in a real-time system. Comput. J. 29, 5 (1986).Google ScholarGoogle ScholarCross RefCross Ref
  17. A. Kostrzewa, S. Saidi, L. Ecco, et al. 2016. Dynamic admission control for real-time networks-on-chips. In Proceedings of ASP-DAC 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M.-A. Kourtis, H. Koumaras, G. Xilouris, et al. 2017. An NFV-based video quality assessment method over 5G small cell networks. IEEE MultiMedia (2017).Google ScholarGoogle Scholar
  19. P. Kumar and L. Thiele. 2011. Cool shapers: Shaping real-time tasks for improved thermal guarantees. In Proceedings of DAC 2011.Google ScholarGoogle Scholar
  20. L. Pouchet. [n.d.]. PolyBench/C - The Polyhedral Benchmark Suite. Retrieved 2019-04-05 from http://www.cs.ucla.edu/˜pouchet/software/polybench/.Google ScholarGoogle Scholar
  21. G. Laporte and S. Martello. 1990. The selective travelling salesman problem. Discrete Applied Mathematics (1990).Google ScholarGoogle Scholar
  22. J.-Y. Le Boudec and P. Thiran. 2001. Network Calculus: A Theory of Deterministic Queuing Systems for the Internet.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. Lehoczky. 1990. Fixed priority scheduling of periodic task sets with arbitrary deadlines. In Proceedings of RTSS 1990.Google ScholarGoogle ScholarCross RefCross Ref
  24. Y.-T. S. Li and S. Malik. 1995. Performance analysis of embedded software using implicit path enumeration. In Proceedings of DAC 1995.Google ScholarGoogle Scholar
  25. G. Memik, W. H. Mangione-Smith, and W. Hu. 2001. NetBench: A benchmarking suite for network processors. In Proceedings of ICCAD 2001.Google ScholarGoogle Scholar
  26. T. Nolte, H. Hansson, and L. L. Bello. 2005. Automotive communications-past, current and future. In Proceedings of ETFA 2005.Google ScholarGoogle Scholar
  27. D. Oehlert, S. Saidi, and H. Falk. 2018. Compiler-based extraction of event arrival functions for real-time systems analysis. In Proceedings of ECRTS 2018.Google ScholarGoogle Scholar
  28. C. H. Papadimitriou. 1981. On the complexity of integer programming. J. ACM (1981).Google ScholarGoogle Scholar
  29. L. T. X. Phan and I. Lee. 2013. Improving schedulability of fixed-priority real-time systems using shapers. In Proceddings of RTAS 2013.Google ScholarGoogle Scholar
  30. Y. Qian, X. Li, S. Ihara, et al. 2017. A configurable rule based classful token bucket filter network request scheduler for the lustre file system. In Proceedings of the SC 2019.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. M. Rahmani, K. Tappayuthpijarn, B. Krebs, et al. 2009. Traffic shaping for resource-efficient in-vehicle communication. IEEE Transactions on Industrial Informatics 5, 4 (2009).Google ScholarGoogle ScholarCross RefCross Ref
  32. J. Reineke, B. Wachter, S. Thesing, et al. 2006. A definition and classification of timing anomalies. In Proceedings of WCET 2006.Google ScholarGoogle Scholar
  33. S. Shenker, C. Partridge, and R. Guerin. 1997. Specification of Guaranteed Quality of Service. IETF.Google ScholarGoogle Scholar
  34. StreamIt Community. 2018. The StreamIt Benchmark Suite. http://groups.csail.mit.edu/cag/streamit/shtml/benchmarks.shtml.Google ScholarGoogle Scholar
  35. J. Turner. 1986. New directions in communications (or which way to the information age?). IEEE Communications Magazine 24, 10 (1986).Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. R. Underwood, J. Anderson, and A. Apon. 2018. Measuring network latency variation impacts to high performance computing application performance. In Proceedings of the ICPE 2018.Google ScholarGoogle Scholar
  37. E. Wandeler. 2006. Modular Performance Analysis and Interface-Based Design for Embedded RealTime Systems. Ph.D. Dissertation. ETH Zürich.Google ScholarGoogle Scholar
  38. E. Wandeler, A. Maxiaguine, and L. Thiele. 2006. Performance analysis of greedy shapers in real-time systems. In Proceedings of DAC Europe 2006.Google ScholarGoogle Scholar
  39. J. Wang, C. Sung, and C. Wang. 2019. Mitigating power side channels during compilation. arXiv e-prints (2019).Google ScholarGoogle Scholar
  40. M. Wu, Sh. Guo, P. Schaumont, et al. 2018. Eliminating timing side-channel leaks using program repair. arXiv e-prints (2018).Google ScholarGoogle Scholar
  41. Y. Zhou and D. Wentzlaff. 2016. MITTS: Memory inter-arrival time traffic shaping. In Proceedings of ISCA 2016.Google ScholarGoogle Scholar
  42. E. Zitzler, M. Laumanns, and L. Thiele. 2001. SPEA2: Improving the Strength Pareto Evolutionary Algorithm. Technical Report. ETH Zürich.Google ScholarGoogle Scholar
  43. V. Zivojnović, J. M. Velarde, C. Schläger, et al. 1994. DSPSTONE: A DSP-oriented benchmarking methodology. In Proceedings of IC-SPAT 1994.Google ScholarGoogle Scholar

Index Terms

  1. Code-Inherent Traffic Shaping for Hard Real-Time Systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!