Skip to main content

Reducing Memory Fragmentation with Performance-Optimized Dynamic Memory Allocators in Network Applications

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNCCN,volume 3510))

Abstract

The needs for run-time data storage in modern wired and wireless network applications are increasing. Additionally, the nature of these applications is very dynamic, resulting in heavy reliance to dynamic memory allocation. The most significant problem in dynamic memory allocation is fragmentation, which can cause the system to run out of memory and crash, if it is left unchecked. The available dynamic memory allocation solutions are provided by the real time Operating Systems used in embedded or general-purpose systems. These state-of-the-art dynamic memory allocators are designed to satisfy the run-time memory requests of a wide range of applications. Contrary to most applications, network applications need to allocate too many different memory sizes (e.g. hundreds different sizes for packets) and have an extremely dynamic allocation and de-allocation behavior (e.g. unpredictable web-browsing activity). Therefore, the performance and the de-fragmentation efficiency of these allocators is limited. In this paper, we analyze all the important issues of fragmentation and the ways to reduce it in network applications, while keeping the performance of the dynamic memory allocator unaffected or even improving it. We propose highly customized dynamic memory allocators, which can be configured for specific network needs. We assess the effectiveness of the proposed approach in two representative real-life case studies of wired and wireless network applications. Finally, we show very significant reduction in memory fragmentation and increase in performance compared to state-of-the-art dynamic memory allocators utilized by real-time Operating Systems.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Atienza, D., Mamagkakis, S., Catthoor, F., et al.: Dynamic Memory Management Design Methodology for Reduced Memory Footprint in Multimedia and Wireless Network Applications. In: Proc. of IEEE/ACM DATE 2004 (2004)

    Google Scholar 

  2. Atienza, D., Mamagkakis, S., et al.: Modular Construction and Power Modelling of Dyn. Mem. Managers for Embedded Systems. In: Proc. of LNCS PATMOS 2004 (2004)

    Google Scholar 

  3. Williamson, C.: A Tutorial on Internet Traffic Measurement. In: Proc. of IEEE Internet Computing 5(6) (2001)

    Google Scholar 

  4. Kotz, D., et al.: Analysis of a campus-wide wireless network. Dartmouth CS Technical Report TR2002-432

    Google Scholar 

  5. Wilson, P.R., et al.: Dynamic storage allocation, a survey and critical review. In: Int. Workshop on Mem. Manag., UK (1995)

    Google Scholar 

  6. Johnstone, M., et al.: The Memory Fragmentation Problem: Solved? In: Proc. of Intnl. Symposium on Memory Management 1998 (1998)

    Google Scholar 

  7. Berger, E.D., et al.: Composing high-performance memory allocators. In: Proc. of ACM SIGPLAN PLDI, USA (2001)

    Google Scholar 

  8. Dyn. Allocation in uClinux RTOS, http://linuxdevices.com/articles/AT7777470166.html

  9. Dyn. Allocation in Enea OSE RTOS, http://www.realtime-info.be/magazine/01q3/2001q3_p047.pdf

  10. Dyn. Allocation in MS Windows CE, http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcecoreos5/html/wce50conheaps.asp

  11. Dyn. Allocation in MS Windows XP, http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dngenlib/html/heap3.asp

  12. Attardi, G., et al.: A customizable memory management framework for c++. Software Practice and Experience (1998)

    Google Scholar 

  13. Bacon, D., et al.: A Real-time Garbage Collector with Low Overhead and Consistent Utilization. In: Proc. of SIGPLAN 2003 (2003)

    Google Scholar 

  14. Shreedhar, M., et al.: Efficient Fair Queuing using Deficit Round Robin. In: Proc. of SIGCOMM 1995 (1995)

    Google Scholar 

  15. Gerharz, M., et al.: A Practical View on Quality-of-Service Support in Wireless Ad Hoc Networks. In: Proc. of IEEE ASWN 2003 (2003)

    Google Scholar 

  16. Infineon Easyport, http://www.itc-electronics.com/CD/infineon%2010063/cd1/html/pov33433-9542.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Mamagkakis, S. et al. (2005). Reducing Memory Fragmentation with Performance-Optimized Dynamic Memory Allocators in Network Applications. In: Braun, T., Carle, G., Koucheryavy, Y., Tsaoussidis, V. (eds) Wired/Wireless Internet Communications. WWIC 2005. Lecture Notes in Computer Science, vol 3510. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11424505_34

Download citation

  • DOI: https://doi.org/10.1007/11424505_34

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-25899-5

  • Online ISBN: 978-3-540-32104-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics