LWMalloc: A Lightweight Dynamic Memory Allocator for Resource-Constrained Environments

Taehyeon Kim, Hwajung Kim

Research output: Contribution to journalArticlepeer-review

Abstract

In this study, we propose LWMalloc, a lightweight dynamic memory allocator designed for resource-constrained environments. LWMalloc incorporates a lightweight data structure, a deferred coalescing (DC) policy, and dedicated small chunk pools to optimize memory allocation. The lightweight data structure minimizes metadata overhead, ensuring a compact and efficient implementation. The DC policy reduces execution overhead by postponing redundant operations until allocation, maintaining both efficiency and low-response times. Dedicated small chunk pools enable O(1) allocation for small memory requests, which are common in dynamic allocation patterns, by segregating them into fixed-size pools. Experimental results using real-world applications demonstrate that LWMalloc outperforms ptmalloc, the default allocator in Linux, achieving up to 53% faster execution time and 23% lower memory usage. With a compact implementation of only 530 lines of code and a 20-KB size, significantly smaller than ptmalloc’s 4838 lines and 116 KB, LWMalloc achieves an effective balance between performance and memory efficiency, making it highly suitable for resource-constrained environments.

Original languageEnglish
Pages (from-to)19532-19548
Number of pages17
JournalIEEE Internet of Things Journal
Volume12
Issue number12
DOIs
StatePublished - 2025

Keywords

  • Dynamic memory management (DMM)
  • memory allocation
  • memory fragmentation
  • memory optimization

Fingerprint

Dive into the research topics of 'LWMalloc: A Lightweight Dynamic Memory Allocator for Resource-Constrained Environments'. Together they form a unique fingerprint.

Cite this