Abstract
In the past decade, real-time embedded systems have become much more complex due to the introduction of a lot of new functionality in one application, and due to running multiple applications concurrently. This increases the dynamic nature of today's applications and systems, and tightens the requirements for their constraints in terms of deadlines and energy consumption. State-of-the-art design methodologies try to cope with these novel issues by identifying several most used cases and dealing with them separately, reducing the newly introduced complexity. This article presents a generic and systematic design-time/run-time methodology for handling the dynamic nature of modern embedded systems, which can be utilized by existing design methodologies to increase their efficiency. It is based on the concept of system scenarios, which group system behaviors that are similar from a multidimensional cost perspective—such as resource requirements, delay, and energy consumption—in such a way that the system can be configured to exploit this cost similarity. At design-time, these scenarios are individually optimized. Mechanisms for predicting the current scenario at run-time, and for switching between scenarios, are also derived. This design trajectory is augmented with a run-time calibration mechanism, which allows the system to learn on-the-fly during its execution, and to adapt itself to the current input stimuli, by extending the scenario set, changing the scenario definitions, and both the prediction and switching mechanisms. To show the generality of our methodology, we show how it has been applied on four very different real-life design problems. In all presented case studies, substantial energy reductions were obtained by exploiting scenarios.
- Arenaz, M., Touriño, J., and Doallo, R. 2004. An inspector-executor algorithm for irregular assignment parallelization. In Proceedings of the 2nd International Symposium on Parallel and Distributed Processing and Applications (ISPA). Hong Kong, China, 4--15.Google Scholar
- Bougard, B., Dejonghe, A., and Dehaene, W. 2006. Cross-layer power management in wireless networks and consequences on system-level architecture. Signal Proces. 86, 8, 1792--1803. Google ScholarDigital Library
- Burd, T., Pering, T., Stratakos, A., and Brodersen, R. 2000. A dynamic voltage scaled microprocessor system. IEEE J. Solid-State Circ. 35, 11, 1571--1580.Google ScholarCross Ref
- Calzarossa, M. and Serazzi, G. 1993. Workload characterization: a survey. Proc. IEEE 81, 8, 1136--1150.Google ScholarCross Ref
- Carroll, J. M., Ed. 1995. Scenario-Based Design: Envisioning Work and Technology in System Development. John Wiley & Sons Inc. NY. Google ScholarDigital Library
- Catthoor, F., Ed. 2000. Unified Low-Power Design Flow for Data-Dominated Multi-Media and Telecom Applications. Kluwer Academic Publishers, Boston, MA.Google Scholar
- Choi, K., Dantu, K., Cheng, W.-C., and Pedram, M. 2002. Frame-based dynamic voltage and frequency scaling for a MPEG decoder. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design (ICCAD). ACM Press, New York, NY, 732--737. Google ScholarDigital Library
- Chung, E.-Y., De Micheli, G., and Benini, L. 2002. Contents provider-assisted dynamic voltage scaling for low energy multimedia applications. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED). ACM Press, New York, NY, 42--47. Google ScholarDigital Library
- Daylight, E. G., Wuytack, S., Ykman-Couvreur, C., and Catthoor, F. 2002. Analyzing energy friendly steady state phases of dynamic application execution in terms of sparse data structures. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED'02). ACM Press, New York, NY, 76--79. Google ScholarDigital Library
- De Sutter, B., De Bus, B., and De Bosschere, K. 2006. Link-time binary rewriting techniques for program compaction. ACM Trans. Program. Lang. Syst. 27, 5, 882--945. Google ScholarDigital Library
- Debray, S., Evans, W., Muth, R., and De Sutter, B. 2002. Compiler techniques for code compaction. ACM Trans. Program. Lang. Syst. 22, 2, 378--415. Google ScholarDigital Library
- Douglass, B. P. 2004. Real Time UML: Advances in the UML for Real-Time Systems. Addison Wesley Publishing Company, Reading, MA. Google ScholarDigital Library
- Dumont, G. A. and Huzmezan, M. 2002. Concepts, methods and techniques in adaptive control. In Proceedings of the American Control Conference (ACC). Vol. 2. IEEE, 1137--1150.Google Scholar
- Ferrari, D. 1972. Workload charaterization and selection in computer performance measurement. Computer 5, 4, 18--24. Google ScholarDigital Library
- Fowler, M. 2003. Use cases. In UML Distilled: A Brief Guide to the Standard Object Modeling Language, 3rd. Ed. Addison Wesley Publishing Company, Reading, MA, Chapter 9, 99--106. Google ScholarDigital Library
- Geilen, M. C. W., Basten, T., Theelen, B. D., and Otten, R. H. J. M. 2007. An algebra of pareto points. Fundamenta Informaticae 78, 1, 35--74. Google ScholarDigital Library
- Gheorghita, S. V., Basten, T., and Corporaal, H. 2005. Intra-task scenario-aware voltage scheduling. In Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systesms (CASES). ACM Press, New York, NY, 177--184. Google ScholarDigital Library
- Gheorghita, S. V., Basten, T., and Corporaal, H. 2006. Application scenarios in streaming-oriented embedded system design. In Proceedings of the International Symposium on System-on-Chip (SoC). IEEE Press, Piscataway, NJ, 175--178. Revised version to appear as {Gheorghita et al. 2008a}.Google Scholar
- Gheorghita, S. V., Basten, T., and Corporaal, H. 2008a. Application scenarios in streaming-oriented embedded system design. IEEE Design & Test of Computers. Invited. Best paper of SoC 2006. To appear. Google ScholarDigital Library
- Gheorghita, S. V., Basten, T., and Corporaal, H. 2008b. Scenario selection and prediction for DVS-aware scheduling. J. Sign. Proces. Syst. 50, 2, 137--161. Google ScholarDigital Library
- Gheorghita, S. V., Stuijk, S., Basten, T., and Corporaal, H. 2005. Automatic scenario detection for improved WCET estimation. In Proceedings of the 42nd Design Automation Conference DAC. ACM Press, New York, NY, 101--104. Google ScholarDigital Library
- Goossens, K., Dielissen, J., van Meerbergen, J., Poplavko, P., Radulescu, A., Rijpkema, E., Waterlander, E., and Wielage, P. 2003. Guaranteeing the quality of services in networks on chip. In Networks on chip. Kluwer Academic Publishers, Hingham, MA, Chapter 4, 61--82. Google ScholarDigital Library
- Hamers, J. and Eeckhout, L. 2007. Resource prediction for media stream decoding. In Proc. of Design, Automation and Test in Europe (DATE). IEEE, 594--599. Google ScholarDigital Library
- Hamers, J. and Eeckhout, L. 2008. Exploiting media stream similarity for energy-efficient decoding and resource prediction. ACM Transactions on Embedded Computing Systems. To appear.Google Scholar
- Hamers, J., Eeckhout, L., and De Bosschere, K. 2007. Exploiting video stream similarity for energy-efficient decoding. In Proceedings of the 13th International Multimedia Modeling Conference, (MMM). Lecture Notes in Computer Science, vol. 4352. Springer, Berlin, Germany, 11--22. Extended version to appear as {Hamers and Eeckhout 2008}.Google Scholar
- Hansson, A., Coenen, M., and Goossens, K. 2007. Undisrupted quality-of-service during reconfiguration of multiple applications in networks on chip. In Proceedings of Design, Automation, and Test in Europe (DATE). IEEE Press, 954--959. Google ScholarDigital Library
- Huang, M., Renau, J., and Torrellas, J. 2003. Positional adaptation of processors: Application to energy reduction. In Proceedings of the International Symposium on Computer Architecture (ISCA). IEEE CS Press. Google ScholarDigital Library
- Hughes, C. J., Srinivasan, J., and Adve, S. V. 2001. Saving energy with architectural and frequency adaptations for multimedia applications. In Proceedings of the 34th Annual International Symposium on Microarchitecture (MICRO). IEEE Computer Society, 250--261. Google ScholarDigital Library
- IEEE. 2000. IEEE standard 1471: Recommended practice for architectural description of software-intensive systems.Google Scholar
- Intel Corporation. 2003. Intel XScale microarchitecture for the PXA255 processor: Useris manual. Order No. 278796.Google Scholar
- Ionita, M. T. 2005. Scenario-based system architecting: a systematic approach to developing future-proof system architectures. Ph.D. thesis, Technische Universiteit Eindhoven, The Netherlands.Google Scholar
- Jha, N. K. 2001. Low power system scheduling and synthesis. In Proceedings of the IEEE/ACM International Conference on Computer Aided Design. 259--263. Google ScholarDigital Library
- Kotz, D. and Essien, K. 2005. Analysis of a campus-wide wireless network. Wirel. Net. 11, 1, 115--133. Google ScholarDigital Library
- Lee, R. 1991. An introduction to workload characterization. http://support.novell.com/techcenter/articles/ana19910503.html.Google Scholar
- Lee, S., Yoo, S., and Choi, K. 2002. An intra-task dynamic voltage scaling method for SoC design with hierarchical FSM and synchronous dataflow model. In Proceedings of the International Symposium on Low Power Electronics and Design. ACM Press, 84--87. Google ScholarDigital Library
- Mamagkakis, S., Soudris, D., and Catthoor, F. 2007. Middleware design optimization of wireless protocols based on the exploitation of dynamic input patterns. In Proceedings of Design, Automation, and Test in Europe (DATE). IEEE Press, 118--123. Google ScholarDigital Library
- Marchal, P., Wong, C., Prayati, A., Cossement, N., Catthoor, F., Lauwereins, R., Verkest, D., and De Man, H. 2000. Dynamic memory oriented transformations in the MPEG4 IM1-Player on a low power platform. In Proceedings of the 1st International Workshop on Power-Aware Computer Systems. Springer-Verlag, 40--50. Google ScholarDigital Library
- Murali, S., Coenen, M., Radulescu, A., Goossens, K., and De Micheli, G. 2006a. Mapping and configuration methods for multi-use-case networks on chips. In Proceedings of the Asia South Pacific Design Automation Conference (ASPDAC). ACM Press, 146--151. Google ScholarDigital Library
- Murali, S., Coenen, M., Radulescu, A., Goossens, K., and De Micheli, G. 2006b. A methodology for mapping multiple use-cases onto networks on chips. In Proceedings of Design, Automation and Test in Europe (DATE). IEEE, 118--123. Google ScholarDigital Library
- Okabe, T., Jin, Y., and Sendhoff, B. 2003. A critical survey of performance indices for multi-objective optimisation. In Proceedings of the Congress on Evolutionary Computation. Vol. 2. IEEE Press, 878--885.Google Scholar
- Palkovic, M., Brockmeyer, E., Vanbroekhoven, P., Corporaal, H., and Catthoor, F. 2006. Systematic preprocessing of data dependent constructs for embedded systems. J. Low Power Elect. 2, 1, 9--17.Google ScholarCross Ref
- Palkovic, M., Corporaal, H., and Catthoor, F. 2005. Global memory optimisation for embedded systems allowed by code duplication. In Proceedings of the 9th International Workshop on Software and Compilers for Embedded Systems (SCOPES). ACM, 72--79. Google ScholarDigital Library
- Pareto, V. 1906. Manuale di Economia Politica. Piccola Biblioteca Scientifica, Milan. Translated into English by A.S. Schwier (1971), Manual of Political Economy, MacMillan, London.Google Scholar
- Paul, J. M., Thomas, D. E., and Bobrek, A. 2006. Scenario-oriented design for single-chip heterogeneous multiprocessors. IEEE Trans. VLSI Syst. 14, 8, 868--880.Google ScholarDigital Library
- Peon-Quiros, M., Bartzas, A., Mamagkakis, S., Catthoor, F., Mendias, J., and Soudris, D. 2007. Direct memory access optimization in wireless terminals for reduced memory latency and energy consumption. In Proceedings of the 17th International Workshop in Power and Timing Modeling, Optimization and Simulation (PATMOS). Springer, 373--383.Google Scholar
- Pollin, S., Mangharam, R., Bougard, B., Van der Perre, L., Moerman, I., Rajkumar, R., and Catthoor, F. 2007. MEERA: Cross-layer methodology for energy efficient resource allocation in wireless networks. IEEE Trans. Wirel. Comm. 6, 2, 617--628.Google ScholarDigital Library
- Poplavko, P., Basten, T., and van Meerbergen, J. 2007. Execution-time prediction for dynamic streaming applications with task-level parallelism. In Proceedings of the 10th EUROMICRO Conference on Digital System Design (DSD). IEEE Computer Society Press, 228--235. Google ScholarDigital Library
- Raman, B. and Chakraborty, S. 2006. Application-specific workload shaping in multimedia-enabled personal mobile devices. In Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). ACM, 4--9. Google ScholarDigital Library
- Sachs, D. G., Adve, S. V., and Jones, D. L. 2003. Cross-layer adaptive video coding to reduce energy on general-purpose processors. In Proceedings of the IEEE International Conference on Image Processing. IEEE Press, 109--112.Google Scholar
- Saltz, J. H., Mirchandaney, R., and Crowley, K. 1991. Run-time parallelization and scheduling of loops. IEEE Trans. Comput. 40, 5, 603--612. Google ScholarDigital Library
- Sanz, C., Prieto, M., Papanikolaou, A., Miranda, M., and Catthoor, F. 2006. System-level process variability compensation on memory organizations of dynamic applications: a case study. In Proceedings of the 7th International Symposium on Quality Electronic Design (ISQED), 376--382. Google ScholarDigital Library
- Sasanka, R., Hughes, C. J., and Adve, S. V. 2002. Joint local and global hardware adaptations for energy. ACM SIGARCH Computer Architecture News 30, 5, 144--155. Google ScholarDigital Library
- Sherwood, T., Perelman, E., Hamerly, G., and Calder, B. 2002a. Automatically characterizing large scale program behavior. In Proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). ACM Press, 45--57. Google ScholarDigital Library
- Shin, D. and Kim, J. 2005. Optimizing intra-task voltage scheduling using data flow analysis. In Proceedings of the 10th Asia and South Pacific Design Automation Conference (ASPDAC). ACM Press, 703--708. Google ScholarDigital Library
- Tack, K., Lafruit, G., Catthoor, F., and Lauwereins, R. 2006. Platform independent optimisation of multi-resolution 3D content to enable universal media access. Visual Computer 22, 8, 577--590.Google ScholarCross Ref
- Temmerman, M., Daylight, E. G., Catthoor, F., Demeyer, S., and Dhaene, T. 2007. Optimizing data structures at the modeling level in embedded multimedia. J. Syst. Arch. 53, 8, 539--549. Google ScholarDigital Library
- Theelen, B. D., Geilen, M. C. W., Basten, T., Voeten, J. P. M., Gheorghita, S. V., and Stuijk, S. 2006. A scenario-aware data flow model for combined long-run average and worst-case performance analysis. In Proceedings of the 4th ACM-IEEE International Conference on Formal Methods and Models for Codesign (MEMOCODE). IEEE Computer Society Press, 185--194.Google Scholar
- van der Mark, P., Wolters, L., and Cats, G. 2004. Using semi-lagrangian formulations with automatic code generation for environmental modeling. In Proceedings of the ACM Symposium on Applied Computing (SAC). ACM, 229--234. Google ScholarDigital Library
- Vandeputte, F., Eeckhout, L., and De Bosschere, K. 2005a. A detailed study on phase predictors. In Proceedings of the 11th International Euro-Par Conference, J. Cunha and P. Medeiros, Eds. LNCS, vol. 3648. Springer, 571--581.Google ScholarDigital Library
- Vandeputte, F., Eeckhout, L., and De Bosschere, K. 2007. Exploiting program phase behavior for energy reduction on multi-configuration processors. J. Syst. Arch. 53, 8, 489--500. Google ScholarDigital Library
- Vogel, A., Kerherve, B., von Bochmann, G., and Gecsei, J. 1995. Distributed multimedia and QoS: a survey. IEEE Multimedia 2, 2, 10--19. Google ScholarDigital Library
- Wandeler, E. and Thiele, L. 2005. Characterizing workload correlations in multi processor hard real-time systems. In Proceedings of the 11th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS). IEEE Computer Society Press, 46--55. Google ScholarDigital Library
- Wegener, I. 2000. Integer-Valued DDs. In Branching Programs and Binary Decision Diagrams: Theory and Applications. SIAM Monographs on Discrete Mathematics and Applications. Society for Industrial and Applied Mathematics, Philadelphia, PA, Chapter 9.Google ScholarCross Ref
- Yang, P. 2004. Pareto-optimization based run-time task scheduling for embedded systems. Ph.D. thesis, Catholic University of Leuven, Belgium.Google Scholar
- Yang, P. and Catthoor, F. 2003. Pareto-optimization-based run-time task scheduling for embedded systems. In Proceedings of the 1st IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). ACM Press, NY, 120--125. Google ScholarDigital Library
- Yang, P., Marchal, P., Wong, C., Himpe, S., Catthoor, F., David, P., Vounckx, J., and Lauwereins, R. 2002. Managing dynamic concurrent tasks in embedded real-time multimedia systems. In Proceedings of the 15th ACM/IEEE International Symposium on System-Level Synthesis (ISSS). IEEE Computer Society, 112--119. Google ScholarDigital Library
- Yang, P., Wong, C., Marchal, P., Catthoor, F., Desmet, D., Verkest, D., and Lauwereins, R. 2001. Energy-aware runtime scheduling for embedded-multiprocessor socs. IEEE Des. Test 18, 5, 46--58. Google ScholarDigital Library
- Ykman-Couvreur, C., Brockmeyer, E., Nollet, V., Marescaux, T., Catthoor, F., and Corporaal, H. 2005. Design-Time application exploration for MP-SoC customized run-time management. In Proceedings of the International Symposium on System-on-Chip (SoC). IEEE Press, 66--69.Google Scholar
- Ykman-Couvreur, C., Nollet, V., Catthoor, F., and Corporaal, H. 2006. Fast multi-dimension multi-choice knapsack heuristic for MP-SoC run-time management. In Proceedings of the International Symposium on System-on-Chip (SoC). IEEE Press, 1--4.Google Scholar
- Yokota, D., Chiba, S., and Itano, K. 2002. A new optimization technique for the inspector-executor method. In Proceedings of the International Conference on Parallel and Distributed Computing Systems (PDCS). Acta Press, 706--711.Google Scholar
Index Terms
- System-scenario-based design of dynamic embedded systems
Recommendations
Scheduling and energy savings for small scale embedded FreeRTOS-based real-time systems
AbstractEvaluating the effectiveness of system scheduling and energy savings in embedded real-time systems with low-computing resources is the problem addressed in this paper. In such systems, the characteristics of the implemented scheduling policy play ...
Exploiting Inter and Intra Application Dynamism to Save Energy
DSD '11: Proceedings of the 2011 14th Euromicro Conference on Digital System DesignThe dynamism inside applications can be exploited to save energy. A proactive scheduler that exploits this dynamism through Dynamic Frequency and Voltage Scaling (DVFS) has been presented in [1][2]. So far, the claimed energy savings of this scheduler ...
Runtime verification of real-time embedded systems
EMSOFT '12: Proceedings of the tenth ACM international conference on Embedded softwareTime-triggered runtime verification aims at tackling two defects associated with runtime overhead: unboundedness and unpredictability. In this approach, a monitor runs in parallel with the program under inspection and periodically samples the program ...
Comments