ladybird/Userland
Gunnar Beutner 39f0739381 LibC+UE: Keep more unused chunked blocks around
Previously each malloc size class would keep around a limited number of
unused blocks which were marked with MADV_SET_VOLATILE which could then
be reinitialized when additional blocks were needed.

This changes malloc() so that it also keeps around a number of blocks
without marking them with MADV_SET_VOLATILE. I termed these "hot"
blocks whereas blocks which were marked as MADV_SET_VOLATILE are called
"cold" blocks because they're more expensive to reinitialize.

In the worst case this could increase memory usage per process by
1MB when a program requests a bunch of memory and frees all of it.

Also, in order to make more efficient use of these unused blocks
they're now shared between size classes.
2021-05-23 19:31:39 +02:00
..
Applets LibCore: Make ProcessStatisticsReader return results in a Vector 2021-05-23 11:10:15 +02:00
Applications HexEditor: Add 'Go to Offset...' dialog 2021-05-23 18:13:49 +02:00
Demos Revert "Userland: static vs non-static constexpr variables" 2021-05-21 10:30:52 +01:00
DevTools LibC+UE: Keep more unused chunked blocks around 2021-05-23 19:31:39 +02:00
DynamicLoader DynamicLoader: Remove math functionality in favor of -lgcc 2021-05-07 15:35:50 +02:00
Games Hearts: Add key combinations to letting the AI play for you 2021-05-23 18:15:36 +02:00
Libraries LibC+UE: Keep more unused chunked blocks around 2021-05-23 19:31:39 +02:00
Services LookupServer: Fix missing POSIX includes 2021-05-23 18:10:29 +02:00
Shell Shell: Make sure all tests put their temp dirs in /tmp 2021-05-22 00:24:27 +04:30
Utilities Utilities: Fix test-unveil INT_MAX include 2021-05-23 18:10:29 +02:00
CMakeLists.txt Tests: Establish root Tests directory, move Userland/Tests there 2021-05-06 17:54:28 +02:00