Abstract
The complexity of embedded systems is exploding into two interrelated but independently growing directions: architecture complexity and application complexity. Consequently, application characterization under the real input conditions is becoming more and more important. State-of-the-art application characterization frameworks mainly focus on a single design objective. A general purpose framework is required to satisfy multiple objectives of early design space exploration. This chapter proposes a multi-objective application characterization framework based on a visitor design pattern. High level source specifications are transformed into a trace tree representation by dynamic analysis. Trace tree representation is analysed by using visitor design pattern to get run-time characteristics of the application. Among other outcomes, application orientation and inherited spatial parallelism are key concerns in this article. Experimental results with MPEG-2 video decoder shows viability of the proposed framework.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
S.S. Bhattacharyya et al., Overview of the MPEG reconfigurable video coding framework. J. Signal Process. Syst. 63(2), 251–263 (2011)
Y.Q. Shi, H. Sun, Image and video compression for multimedia engineering: fundamentals, algorithms, and standards, 2nd edn. (Cambridge, Massachusetts, USA, 2008)
G. Ascia, V. Catania, A.G. Di Nuovo, M. Palesi, D. Patti, Efficient design space exploration for application specific systems-on-a-chip. J. Syst. Arch. 53(10), 733–750 (2007). Special Issue on Architectures, Modeling, and Simulation for Embedded Processors
I. Bacivarov, W. Haid, K. Huang, L. Thiele, Methods and tools for mapping process networks onto multi-processor systems-on-chip, in Handbook of Signal Processing Systems, Part 4 (2010), pp. 1007–1040
J.P. Diguet, Y. Eustache, G. Gogniat, Closed-loop based self-adaptive HW/SW embedded systems: design methodology and smart cam case study. ACM Trans. Embed. Comput. Syst. 10(3) (2011)
S. Abdi, Y. Hwang, L. Yu, G. Schirner, D. Gajski, Automatic TLM generation for early validation of multicore systems. IEEE Des. Test Comput. 28(3), 10–19, May–June 2011
C. Silvano, et al., Parallel programming and run-time resource management framework for many-core platforms. In 6th International Workshop on Communication-centric Systems-on-Chip, Aug 2011, pp. 1–7
S. Rul, H. Vandierendonck, K.D. Bosschere, Function level parallelism driven by data dependencies. SIGARCH Comput. Archit. News 35(1), 55–62 (2007)
J. Cockx, K. Denolf, B. Vanhoof, R. Stahl, SPRINT: A tool to generate concurrent transaction-level models from sequential code. EURASIP J. Adv. Signal Process. 2007, article ID. 75373, 15 pp. (2007)
W. Thies, V. Chandrasekhar, S. Amarasinghe, A practical approach to exploiting coarse-grained pipeline parallelism in C programs, in Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture (Micro-40), Illinois, USA, Chicago, Dec 2007, pp. 356–369
W. Thies, S. Amarasinghe, An Empirical Characterization of Stream Programs and its Implications for Language and Compiler Design, PACT Austria, Sept 2010, pp. 11–15
N.B. Amor, Y.L. Moullec, J.P. Diguet, J.L. Philippe, M. Abid, Design of a multimedia processor based on metrics computation. Adv. Eng. Soft. 36(7), 448–458 (2005)
Y. Moullec, J.P. Diguet, N. Amor, T. Gourdeaux, J.L. Philippe, Algorithmic-level specification and characterization of embedded multimedia applications with design trotter. J VLSI Signal Process. Syst. 42(2), 185–208 (Feb 2006)
A. Prihozhy, M. Mattavelli, D. Mlynek, Evaluation of the parallelization potential for efficient multimedia implementations: dynamic evaluation of algorithm critical path. IEEE Trans. Circuits Syst. Video Technol. 93(8), 593–608 (2005)
C. Lucarz, G. Roquier, M. Mattavelli, High level design space exploration of RVC codec specifications for multi-core heterogeneous platforms, in DASIP (2010), pp. 191–198
I. Tomek, The joy of smalltalk, Feb 2002, 700 pp [Online]. Available: www.iam.unibe.ch/ducasse/FreeBooks/Joy/
B. Cornelissen, A. Zaidman, A. van Deursen, L. Moonen, R. Koschke, A systematic survey of program comprehension through dynamic analysis. IEEE Trans. Soft. Eng. 35(5), (2009)
A. Sengupta, R. Sedaghat, Z. Zeng, Multi-objective efficient design space exploration and architectural synthesis of an application specific processor (ASP). J. Microprocessors Microsyst: Embed. Hardware Des. (MICPRO) 35(4), (2011)
W. Thies, An empirical characterization of stream programs and its implications for language and compiler design, in Proceedings of the 19th International Conference on Parallel Architectures and Compilation Techniques, PACT ’10, Vienna, Austria, Sept 2010
ISO/IEC 13818–2, Generic coding of moving pictures and associated audio information-part 2: video, 1994, also ITU-T Recommendation H.262
H. Koziolek, Performance evaluation of component-based software systems: A survey.J. Perform. Eval. 67(8) (Elsevier Science, 2010)
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, P. Stenstrom, The worst-case execution-time problem: overview of methods and survey of tools. Trans. Embed. Comput. Syst. 7(3) (2008) article 36
M. Ravasi, M. Mattavelli, High abstraction level complexity analysis and memory architecture simulations of multimedia algorithms. IEEE Trans. Circuits Syst. Video Technol. 15(5), 673–684 (2005)
V. Uquillas Gomeza, S. Ducasse, T. D’Hondta, Ring: A unifying meta-model and infrastructure for smalltalk source code analysis tools. Comput. Lang. Syst. Struct. 38(1), 44–60 (2012)
R. Stephens, A survey of stream processing. Acta Informatica 34(7), 491–541 (July 1997)
W.R. Mark, R.S. Glanvilley, K. Akeleyy, M.J. Kilgardy, Cg: A system for programming graphics hardware in a C-like language. ACM Trans. Graph. 22(3), 896–907 (2003)
N. Goodnight, R. Wang, G. Humphreys, Computation on programmable graphics hardware. IEEE Trans. Compu. Graph. Appl. 25(5), 12–15 (2005)
S. Yamagiwa, L. Sousa, Modeling and programming stream-based distributed computing based on the meta-pipeline approach. Int. J. Parallel Emergent Distrib. Syst. 24(4), 311–330 (2009)
C. Consel, H. Hamdi, L. Reveillere, L. Singaravelu, H. Yu, C. Pu, Spidle: A DSL approach to specifying streaming applications, in Proceedings of 2nd International Conference on Generative Programming and Component, Engineering (GPCE’03) (2003), pp. 1–17
M. Gokhale, J. Stone, J. Arnold, M. Kalinowski, Stream-oriented FPGA computing in the streams-C high level language, in Proceedings of the 8th IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM’00), Napa Valley, California, USA, Apr 2000, pp. 49–56
J.L. Gaudiot, T. DeBoni, J. Feo, W. Bohm, W. Najjar, P. Miller, The Sisal Model of functional programming and its implementation, in Proceedings of the 2nd International Aizu Symposium on Parallel Algorithms/Architecture Synthesis, Aizu-Wakamatsu, Fukushima, Japan, March 1997, pp. 112–123
S. Malek, N. Esfahani, D.A. Menasc, J.P. Sousa, H. Gomaa, Self-architecting software systems (SASSY) from QoS-annotated models, in Proceedings of the Workshop on Principles of Engineering Service Oriented Systems, Canada, 2009
C.-K. Lin, A.P. Black, DirectFlow: A Domain-specific language for information-flow systems. Lect. Notes Comput. Sci. 4609/2007 299–322 (2007)
E. Gamma, R. Helm, R. Johnson, J.M. Vlissides, Design Patterns, Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series, 1995)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Rashid, M., Pottier, B. (2014). A Multi-objective Framework for Characterization of Software Specifications. In: Khan, M., Saeed, S., Darwish, A., Abraham, A. (eds) Embedded and Real Time System Development: A Software Engineering Perspective. Studies in Computational Intelligence, vol 520. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-40888-5_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-40888-5_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-40887-8
Online ISBN: 978-3-642-40888-5
eBook Packages: EngineeringEngineering (R0)