Abstract
Data transfers and storage are dominating contributors to the area and power consumption for all modern multimedia applications. A cost-efficient realisation of these systems can be obtained by using high-level memory optimisations. This paper demonstrates that the state-of-the-art memory optimisation techniques only partly can deal with code from real-life multimedia applications. We propose a systematic preprocessing methodology that can be applied on top of the existing work. This opens more opportunities for existing memory optimisation techniques. Our methodology is complemented with a postprocessing step, which eliminates the negative effects of preprocessing and may further improve the code quality [7,10]. Our methodology has been applied on several real-life multimedia applications. Results show a decrease in the number of main memory accesses up to 45.8% compared to applying only state-of-the-art techniques.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Absar, J., Catthoor, F., Das, K.: Call-instance based function inlining for increasing data access related optimisation opportunities. Technical report, IMEC, Leuven, Belgium (2003)
Atienza, D., et al.: Dynamic memory management methodology for reduced memory footprint in multi-media and wireless network applications. In: Proc. 7th ACM/IEEE Design and Test in Europe Conf (DATE), Paris, France, February 2004, pp. 532–537 (2004)
Bastoul, C., et al.: Putting polyhedral loop transformations to work. In: Rauchwerger, L. (ed.) LCPC 2003. LNCS, vol. 2958, pp. 209–225. Springer, Heidelberg (2004)
Brockmeyer, E., Miranda, M., Catthoor, F., Corporaal, H.: Layer Assignment Techniques for Low Energy in Multi-layered Memory Organisations. In: Proc. 6th ACM/IEEE Design and Test in Europe Conf. (DATE), Munich, Germany, March 2003, pp. 1070–1075 (2003)
Catthoor, F., Danckaert, K., Kulkarni, C., Brockmeyer, E., Kjeldsberg, P.G., Van Achteren, T., Omnes, T.: Data access and storage management for embedded programmable processors. Kluwer Acad. Publ., Boston (2002) ISBN 0-7923-7689-7
Darte, A., Robert, Y.: Affine-by-statement scheduling of uniform and affine loop nests over parametric domains. Journal of Parallel and Distributed Computing 29(1), 43–59 (1995)
Falk, H., Marwedel, P.: Control Flow Optimization by Loop Nest Splitting at the Source Code Level. In: Proc. 6th ACM/IEEE Design and Test in Europe Conf (DATE), Munich, Germany, March 2003, pp. 410–415 (2003)
Franke, B., O’Boyle, M.: Array Recovery and High-Level Transformations for DSP Applications. ACM Transactions on Embedded Computing Systems (TECS) 2(2), 132–162 (2003)
De Greef, E., Catthoor, F., De Man, H.: Program transformation strategies for reduced power and memory size in pseudo-regular multimedia applications. IEEE Trans. on Circuits and Systems for Video Technology 8(6), 719–733 (1998)
Gupta, S., Miranda, M., Catthoor, F., Gupta, R.: Analysis of high-level address code transformations for programmable processors. In: Proc. 3rd ACM/IEEE Design and Test in Europe Conf. (DATE), Paris, France, April 2000, pp. 9–13 (2000)
Jung, B., Jeong, Y., Burleson, W.P.: Distributed Control Synthesis for Data-Dependent Iterative Algorithms. In: Proc. on IEEE Int. Conf. on Application Specific Array Processors, San Francisco, August 1994, pp. 57–68 (1994)
Kandemir, M., Ramanujam, J., Choudhary, A., Banerjee, P.: A layout-conscious iteration space transformation technique. IEEE Transactions on Computers 50(12), 1321–1335 (2001)
Kountouris, A.A., Wolinski, C.: Hierarchical Conditional Dependency Graphs as a Unifying Design Representation in the CODESIS High-Level Synthesis System. In: Proc. of 13th Intnl. Symposium on System Synthesis (ISSS 2000), Madrid, Spain, September 2000, pp. 66–71 (2000)
Lagerström, K.: Design and Implementation of an MP3 Decoder. M.Sc. thesis, Chalmers University of Technology, Sweden (May 2001), http://www.kmlager.com/mp3/
McKinley, K., Carr, S., Tseng, C.-W.: Improving data locality with loop transformations. ACM Trans. on Programming Languages and Systems 18(4), 424–453 (1996)
Palkovic, M., Brockmeyer, E., Catthoor, F.: Hierarchical rewriting and hiding of data dependent conditions to enable global loop transformations. In: Proc. 2nd Wsh. on Optim. for DSP and Embedded Systems (ODES), Palo Alta CA (March 2004)
Palkovic, M., Corporaal, H., Catthoor, F.: GlobalMemory Optimisation for Embedded Systems allowed by Code Duplication. In: Proc 9th Intnl. Wsh. on Software and Compilers for Embedded Systems (SCOPES), Dallas TX (September 2005)
Pugh, W.: The Omega Test: a fast and practical integer programming algorithm for dependence analysis. Communications of the ACM 35(8) (August 1992)
Semeria, L., De Micheli, G.: SpC: synthesis of pointers in C. In: Proc. IEEE Intnl. Conf. on Comp. Aided Design, Santa Clara CA, November 1998, pp. 340–346 (1998)
Strobach, P.: QSDPCM – A New Technique in Scene Adaptive Coding. In: Proc. 4th Eur. Signal Processing Conf., EUSIPCO 1988, Grenoble, France, September 1988, pp. 1141–1144 (1988)
Vanbroekhoven, P., Janssens, G., Bruynooghe, M., Corporaal, H., Catthoor, F.: Advanced copy propagation for arrays. In: Proc. of the SIGPLAN Conf. on Languages, Compilers, and Tools for Embedded Systems (LCTES 2003), San Diego CA, June 2003, pp. 24–33 (2003)
Wilde, D.: A Library for Doing Polyhedral Operations., M.Sc. thesis, Oregon State Univ. In co-operation with IRISA/INRIA, Rennes, France (December 1993)
Wolf, M., Lam, M.: A data locality optimizing algorithm. In: Proc. of the SIGPLAN 1991 Conf. on Programming Language Design and Implementation, Toronto, Canada, June 1991, pp. 30–43 (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Palkovic, M., Brockmeyer, E., Vanbroekhoven, P., Corporaal, H., Catthoor, F. (2005). Systematic Preprocessing of Data Dependent Constructs for Embedded Systems. In: Paliouras, V., Vounckx, J., Verkest, D. (eds) Integrated Circuit and System Design. Power and Timing Modeling, Optimization and Simulation. PATMOS 2005. Lecture Notes in Computer Science, vol 3728. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11556930_10
Download citation
DOI: https://doi.org/10.1007/11556930_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29013-1
Online ISBN: 978-3-540-32080-7
eBook Packages: Computer ScienceComputer Science (R0)