├── .clang-format ├── CMakeLists.txt ├── LICENSE ├── README.md ├── benchs ├── CMakeLists.txt ├── alloc_dealloc_same_thread.cpp ├── alloc_dealloc_separate_thread.cpp ├── alloc_growing_size.cpp ├── alloc_test.cpp ├── atomic.h ├── cache_scratch.cpp ├── glibc_malloc_thread.cpp ├── heavy_threads.cpp ├── larson.cpp ├── larson.h ├── malloc_large.cpp ├── malloc_survey.cpp ├── mstress.cpp ├── rptest.cpp └── xmalloc.cpp ├── cmake └── microConfig.cmake.in ├── md ├── benchmarks.md ├── examples.md ├── images │ ├── larson.svg │ ├── same_thread.svg │ └── separate_thread.svg └── mp.md ├── micro.pc.in ├── micro ├── bits.hpp ├── enums.h ├── internal │ ├── allocator.cpp │ ├── allocator.cpp.keep │ ├── allocator.hpp │ ├── allocator.hpp.keep │ ├── defines.hpp │ ├── defines.hpp.keep │ ├── headers.hpp │ ├── micro.cpp │ ├── micro_assert.cpp │ ├── micro_assert.hpp │ ├── micro_c.cpp │ ├── os_page.cpp │ ├── page_map.hpp │ ├── page_provider.cpp │ ├── page_provider.hpp │ ├── parameters.cpp │ ├── recursive.hpp │ ├── statistics.cpp │ ├── statistics.hpp │ ├── tiny_mem_pool.hpp │ └── uint_large.hpp ├── lock.hpp ├── logger.hpp ├── micro.h ├── micro.hpp ├── micro_config.hpp ├── micro_export.hpp ├── os_map_file.hpp ├── os_page.hpp ├── os_timer.hpp ├── parameters.hpp └── testing.hpp ├── micro_config.hpp.in ├── micro_proxy ├── def │ ├── lin32-proxy.def │ └── lin64-proxy.def ├── function_replacement.cpp ├── function_replacement.h ├── micro_proxy.h ├── proxy.cpp ├── proxy.h ├── proxy_export.h └── proxy_overload_osx.h ├── tests ├── CMakeLists.txt ├── override │ ├── .cproject │ ├── .project │ ├── CMakeLists.txt │ └── main.cpp ├── test_cmake │ ├── CMakeLists.txt │ ├── main.cpp │ └── main_proxy.cpp ├── test_micro │ └── CMakeLists.txt └── test_mp │ ├── CMakeLists.txt │ └── main.cpp └── tools ├── CMakeLists.txt └── mp ├── CMakeLists.txt └── mp.cpp /.clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/.clang-format -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/README.md -------------------------------------------------------------------------------- /benchs/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/CMakeLists.txt -------------------------------------------------------------------------------- /benchs/alloc_dealloc_same_thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/alloc_dealloc_same_thread.cpp -------------------------------------------------------------------------------- /benchs/alloc_dealloc_separate_thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/alloc_dealloc_separate_thread.cpp -------------------------------------------------------------------------------- /benchs/alloc_growing_size.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/alloc_growing_size.cpp -------------------------------------------------------------------------------- /benchs/alloc_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/alloc_test.cpp -------------------------------------------------------------------------------- /benchs/atomic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/atomic.h -------------------------------------------------------------------------------- /benchs/cache_scratch.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/cache_scratch.cpp -------------------------------------------------------------------------------- /benchs/glibc_malloc_thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/glibc_malloc_thread.cpp -------------------------------------------------------------------------------- /benchs/heavy_threads.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/heavy_threads.cpp -------------------------------------------------------------------------------- /benchs/larson.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/larson.cpp -------------------------------------------------------------------------------- /benchs/larson.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/larson.h -------------------------------------------------------------------------------- /benchs/malloc_large.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/malloc_large.cpp -------------------------------------------------------------------------------- /benchs/malloc_survey.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/malloc_survey.cpp -------------------------------------------------------------------------------- /benchs/mstress.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/mstress.cpp -------------------------------------------------------------------------------- /benchs/rptest.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/rptest.cpp -------------------------------------------------------------------------------- /benchs/xmalloc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/benchs/xmalloc.cpp -------------------------------------------------------------------------------- /cmake/microConfig.cmake.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/cmake/microConfig.cmake.in -------------------------------------------------------------------------------- /md/benchmarks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/md/benchmarks.md -------------------------------------------------------------------------------- /md/examples.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/md/examples.md -------------------------------------------------------------------------------- /md/images/larson.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/md/images/larson.svg -------------------------------------------------------------------------------- /md/images/same_thread.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/md/images/same_thread.svg -------------------------------------------------------------------------------- /md/images/separate_thread.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/md/images/separate_thread.svg -------------------------------------------------------------------------------- /md/mp.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/md/mp.md -------------------------------------------------------------------------------- /micro.pc.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro.pc.in -------------------------------------------------------------------------------- /micro/bits.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/bits.hpp -------------------------------------------------------------------------------- /micro/enums.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/enums.h -------------------------------------------------------------------------------- /micro/internal/allocator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/allocator.cpp -------------------------------------------------------------------------------- /micro/internal/allocator.cpp.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/allocator.cpp.keep -------------------------------------------------------------------------------- /micro/internal/allocator.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/allocator.hpp -------------------------------------------------------------------------------- /micro/internal/allocator.hpp.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/allocator.hpp.keep -------------------------------------------------------------------------------- /micro/internal/defines.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/defines.hpp -------------------------------------------------------------------------------- /micro/internal/defines.hpp.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/defines.hpp.keep -------------------------------------------------------------------------------- /micro/internal/headers.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/headers.hpp -------------------------------------------------------------------------------- /micro/internal/micro.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/micro.cpp -------------------------------------------------------------------------------- /micro/internal/micro_assert.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/micro_assert.cpp -------------------------------------------------------------------------------- /micro/internal/micro_assert.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/micro_assert.hpp -------------------------------------------------------------------------------- /micro/internal/micro_c.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/micro_c.cpp -------------------------------------------------------------------------------- /micro/internal/os_page.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/os_page.cpp -------------------------------------------------------------------------------- /micro/internal/page_map.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/page_map.hpp -------------------------------------------------------------------------------- /micro/internal/page_provider.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/page_provider.cpp -------------------------------------------------------------------------------- /micro/internal/page_provider.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/page_provider.hpp -------------------------------------------------------------------------------- /micro/internal/parameters.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/parameters.cpp -------------------------------------------------------------------------------- /micro/internal/recursive.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/recursive.hpp -------------------------------------------------------------------------------- /micro/internal/statistics.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/statistics.cpp -------------------------------------------------------------------------------- /micro/internal/statistics.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/statistics.hpp -------------------------------------------------------------------------------- /micro/internal/tiny_mem_pool.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/tiny_mem_pool.hpp -------------------------------------------------------------------------------- /micro/internal/uint_large.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/internal/uint_large.hpp -------------------------------------------------------------------------------- /micro/lock.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/lock.hpp -------------------------------------------------------------------------------- /micro/logger.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/logger.hpp -------------------------------------------------------------------------------- /micro/micro.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/micro.h -------------------------------------------------------------------------------- /micro/micro.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/micro.hpp -------------------------------------------------------------------------------- /micro/micro_config.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/micro_config.hpp -------------------------------------------------------------------------------- /micro/micro_export.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/micro_export.hpp -------------------------------------------------------------------------------- /micro/os_map_file.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/os_map_file.hpp -------------------------------------------------------------------------------- /micro/os_page.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/os_page.hpp -------------------------------------------------------------------------------- /micro/os_timer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/os_timer.hpp -------------------------------------------------------------------------------- /micro/parameters.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/parameters.hpp -------------------------------------------------------------------------------- /micro/testing.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro/testing.hpp -------------------------------------------------------------------------------- /micro_config.hpp.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_config.hpp.in -------------------------------------------------------------------------------- /micro_proxy/def/lin32-proxy.def: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/def/lin32-proxy.def -------------------------------------------------------------------------------- /micro_proxy/def/lin64-proxy.def: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/def/lin64-proxy.def -------------------------------------------------------------------------------- /micro_proxy/function_replacement.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/function_replacement.cpp -------------------------------------------------------------------------------- /micro_proxy/function_replacement.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/function_replacement.h -------------------------------------------------------------------------------- /micro_proxy/micro_proxy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/micro_proxy.h -------------------------------------------------------------------------------- /micro_proxy/proxy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/proxy.cpp -------------------------------------------------------------------------------- /micro_proxy/proxy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/proxy.h -------------------------------------------------------------------------------- /micro_proxy/proxy_export.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/proxy_export.h -------------------------------------------------------------------------------- /micro_proxy/proxy_overload_osx.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/micro_proxy/proxy_overload_osx.h -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/override/.cproject: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/override/.cproject -------------------------------------------------------------------------------- /tests/override/.project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/override/.project -------------------------------------------------------------------------------- /tests/override/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/override/CMakeLists.txt -------------------------------------------------------------------------------- /tests/override/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/override/main.cpp -------------------------------------------------------------------------------- /tests/test_cmake/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/test_cmake/CMakeLists.txt -------------------------------------------------------------------------------- /tests/test_cmake/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/test_cmake/main.cpp -------------------------------------------------------------------------------- /tests/test_cmake/main_proxy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/test_cmake/main_proxy.cpp -------------------------------------------------------------------------------- /tests/test_micro/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/test_micro/CMakeLists.txt -------------------------------------------------------------------------------- /tests/test_mp/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/test_mp/CMakeLists.txt -------------------------------------------------------------------------------- /tests/test_mp/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tests/test_mp/main.cpp -------------------------------------------------------------------------------- /tools/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tools/CMakeLists.txt -------------------------------------------------------------------------------- /tools/mp/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tools/mp/CMakeLists.txt -------------------------------------------------------------------------------- /tools/mp/mp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Thermadiag/micromalloc/HEAD/tools/mp/mp.cpp --------------------------------------------------------------------------------