pub(crate) fn steady_heap()Expand description
Freed memory given back to the system as it is freed (glibc, Linux). By default glibc raises its thresholds after a large block is freed: blocks as large come from its heaps from then on, and each thread’s heap keeps up to twice that free for itself. Sioul’s threads read files of several megabytes, and Chromium’s run in this process: the window held some 15 MB free and unreturned with every page opened, 18 MB more with sites. Fixed thresholds (a block of a quarter of a megabyte or more mapped on its own, at most an eighth kept free at a heap’s end) cost a system call or two for each such block, which Sioul makes a few times a minute.