Systematic dynamic memory management design methodology for reduced memory footprint

New portable consumer embedded devices must execute multimedia and wireless network applications that demand extensive memory footprint. Moreover, they must heavily rely on Dynamic Memory (DM) due to the unpredictability of the input data (e.g., 3D streams features) and system behavior (e.g., number of applications running concurrently defined by the user). Within this context, consistent design methodologies that can tackle efficiently the complex DM behavior of these multimedia and network applications are in great need. In this article, we present a new methodology that allows to design custom DM management mechanisms with a reduced memory footprint for such kind of dynamic applications. First, our methodology describes the large design space of DM management decisions for multimedia and wireless network applications. Then, we propose a suitable way to traverse the aforementioned design space and construct custom DM managers that minimize the DM used by these highly dynamic applications. As a result, our methodology achieves improvements of memory footprint by 60% on average in real case studies over the current state-of-the-art DM managers used for these types of dynamic applications.

[1]  George Varghese,et al.  Efficient fair queueing using deficit round robin , 1995, SIGCOMM '95.

[2]  Francky Catthoor,et al.  Unified low-power design flow for data-dominated multi-media and telecom applications , 2000, Springer US.

[3]  Mohamed Shalan,et al.  A dynamic memory management unit for embedded real-time system-on-a-chip , 2000, CASES '00.

[4]  Rudy Lauwereins,et al.  Power Estimation Approach of Dynamic Data Storage on a Hardware Software Boundary Level , 2003, PATMOS.

[5]  David Gay,et al.  Memory management with explicit regions , 1998, PLDI.

[6]  V. T. Rajan,et al.  A real-time garbage collector with low overhead and consistent utilization , 2003, POPL '03.

[7]  Luca Benini,et al.  System-level power optimization: techniques and tools , 1999, Proceedings. 1999 International Symposium on Low Power Electronics and Design (Cat. No.99TH8477).

[8]  Paul R. Wilson,et al.  Dynamic Storage Allocation: A Survey and Critical Review , 1995, IWMM.

[9]  Rudy Lauwereins,et al.  A QoS Framework for Interactive 3D Applications , 2002, WSCG.

[10]  Jung Hong Chuang Level of Detail for 3D Graphics , 2002 .

[11]  Kathryn S. McKinley,et al.  Ulterior reference counting: fast garbage collection without a long wait , 2003, OOPSLA '03.

[12]  Wendong Hu,et al.  NetBench: a benchmarking suite for network processors , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[13]  Francky Catthoor,et al.  Modular Construction and Power Modelling of Dynamic Memory Managers for Embedded Systems , 2004, PATMOS.

[14]  Kiem-Phong Vo,et al.  Vmalloc: A General and Efficient Memory Allocator , 1996, Softw. Pract. Exp..

[15]  Francky Catthoor,et al.  Reducing memory accesses with a system-level design methodology in customized dynamic memory management , 2004, 2nd Workshop onEmbedded Systems for Real-Time Multimedia, 2004. ESTImedia 2004..

[16]  J. Morris Chang,et al.  Active Memory Processor: A Hardware Garbage Collector for Real-Time Java Embedded Devices , 2003, IEEE Trans. Mob. Comput..

[17]  Luca Benini,et al.  Analyzing on-chip communication in a MPSoC environment , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[18]  Erik Brockmeyer,et al.  Data and memory optimization techniques for embedded systems , 2001, TODE.

[19]  Kathryn S. McKinley,et al.  Composing high-performance memory allocators , 2001, PLDI '01.

[20]  Francky Catthoor,et al.  Memory-access-aware data structure transformations for embedded software with dynamic data accesses , 2004, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[21]  Reinhard Koch,et al.  Metric 3D Surface Reconstruction from Uncalibrated Image Sequences , 1998, SMILE.