[Low] Memory Fragmentation in Message Buffer Reuse #24
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Issue
The message subsystem's buffer management strategy for peer-to-peer communication leads to heap fragmentation in long-running mycelium nodes.
Location
mycelium/src/message/Problem Description
Messages are frequent and varied in size. The current approach of allocating and deallocating Vec for every message causes high churn in the global allocator and subsequent memory fragmentation, especially on memory-constrained devices (routers/mobile).
Impact
Remediation
bytesorpooledto manage shared memory slicesTesting
jemalloc-statsunder continuous high traffic