Skip to main content

A Multi-objective Framework for Characterization of Software Specifications

  • Chapter
  • First Online:
Embedded and Real Time System Development: A Software Engineering Perspective

Part of the book series: Studies in Computational Intelligence ((SCI,volume 520))

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.

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 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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. S.S. Bhattacharyya et al., Overview of the MPEG reconfigurable video coding framework. J. Signal Process. Syst. 63(2), 251–263 (2011)

    Article  Google Scholar 

  2. Y.Q. Shi, H. Sun, Image and video compression for multimedia engineering: fundamentals, algorithms, and standards, 2nd edn. (Cambridge, Massachusetts, USA, 2008)

    Book  Google Scholar 

  3. 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

    Article  Google Scholar 

  4. 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

    Google Scholar 

  5. 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)

    Google Scholar 

  6. 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

    Google Scholar 

  7. 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

    Google Scholar 

  8. S. Rul, H. Vandierendonck, K.D. Bosschere, Function level parallelism driven by data dependencies. SIGARCH Comput. Archit. News 35(1), 55–62 (2007)

    Article  Google Scholar 

  9. 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)

    Google Scholar 

  10. 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

    Google Scholar 

  11. 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

    Google Scholar 

  12. 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)

    Article  Google Scholar 

  13. 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)

    Google Scholar 

  14. 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)

    Article  Google Scholar 

  15. 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

    Google Scholar 

  16. I. Tomek, The joy of smalltalk, Feb 2002, 700 pp [Online]. Available: www.iam.unibe.ch/ducasse/FreeBooks/Joy/

  17. 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)

    Google Scholar 

  18. 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)

    Google Scholar 

  19. 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

    Google Scholar 

  20. ISO/IEC 13818–2, Generic coding of moving pictures and associated audio information-part 2: video, 1994, also ITU-T Recommendation H.262

    Google Scholar 

  21. H. Koziolek, Performance evaluation of component-based software systems: A survey.J. Perform. Eval. 67(8) (Elsevier Science, 2010)

    Google Scholar 

  22. 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

    Google Scholar 

  23. 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)

    Google Scholar 

  24. 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)

    Google Scholar 

  25. R. Stephens, A survey of stream processing. Acta Informatica 34(7), 491–541 (July 1997)

    Google Scholar 

  26. 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)

    Article  Google Scholar 

  27. N. Goodnight, R. Wang, G. Humphreys, Computation on programmable graphics hardware. IEEE Trans. Compu. Graph. Appl. 25(5), 12–15 (2005)

    Article  Google Scholar 

  28. 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)

    Article  MathSciNet  MATH  Google Scholar 

  29. 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

    Google Scholar 

  30. 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

    Google Scholar 

  31. 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

    Google Scholar 

  32. 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

    Google Scholar 

  33. C.-K. Lin, A.P. Black, DirectFlow: A Domain-specific language for information-flow systems. Lect. Notes Comput. Sci. 4609/2007 299–322 (2007)

    Google Scholar 

  34. E. Gamma, R. Helm, R. Johnson, J.M. Vlissides, Design Patterns, Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series, 1995)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Muhammad Rashid .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics