From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Libumem is a library used to detect memory management bugs in applications. It is based on the Slab allocator concept. Libumem is available as a standard part of Solaris from Solaris 9 Update 3 onwards.


Functions in this library provide fast, scalable object-caching memory allocation with multithreaded application support. In addition to the standard malloc(3C) family of functions and the more flexible umem_alloc(3MALLOC) family, libumem provides powerful object-caching services as described in umem_cache_create(3MALLOC).[1]

Getting started with libumem is easy; just set LD_PRELOAD to "" and any program executed will use libumem's malloc(3C) and free(3C) (or new and delete). [2] This slab allocator is designed for systems with many threads and many CPUs. Memory allocation with naive allocators can be a serious bottleneck.

See also[edit]