Package org.lwjgl.system.jemalloc

Contains bindings to the jemalloc library. jemalloc is a general purpose malloc implementation that emphasizes fragmentation avoidance and scalable concurrency support.

The jemalloc documentation can be found here. The jemalloc wiki also contains useful information.

The jemalloc shared library that comes with LWJGL is configured with:

  • --with-jemalloc-prefix=je_
  • --enable-lazy-lock (Linux)
  • --disable-stats
  • --disable-fill
  • --disable-cxx
  • --disable-initial-exec-tls (Linux & macOS)
  • --disable-zone-allocator (macOS)

The shared library may be replaced with a custom build that has more features enabled.

Dynamic configuration (for enabled features) is also possible, using either the MALLOC_CONF environment variable or the MALLCTL NAMESPACE and the mallctl* functions.