Mattias Jansson
31966e5070
Improved codegen in free path
2023-10-22 14:56:07 +02:00
Mattias Jansson
385a7dbb64
Update readme
2023-10-22 10:12:35 +02:00
Mattias Jansson
8cb4337651
Unify standard overrides and tests
2023-10-22 09:24:08 +02:00
Mattias Jansson
70af81984c
Clean up thread init/fini and remove need for preload define
2023-10-21 23:20:33 +02:00
Mattias Jansson
847fb52eac
Update standard entry point overrides on Apple platforms ( #283 )
2022-06-12 22:35:11 +02:00
rgal
743d91e5c2
Fix some typos in readme.md
2021-11-16 09:10:51 +00:00
Mattias Jansson
cb2201c7f3
Fix typo
2021-08-06 20:17:08 +02:00
Mattias Jansson
ec61ad8e87
Add discord link
2021-07-24 09:30:49 +02:00
Mattias Jansson
8bebedca49
Remove sponsor link ( #250 )
2021-07-22 23:39:24 +02:00
Ponnuvel Palaniyappan
c10a3d703f
Fix typos ( #189 )
2020-09-14 07:38:11 +02:00
Mattias Jansson
ed9e13f864
Update description
2020-07-08 20:18:13 +02:00
Mattias Jansson
2b519192ff
Refactor for readability ( #162 )
...
- Rename internal methods to have rpmalloc prefix to make callstacks easier to read
- Improve grouping of functions based on context
2020-03-24 18:12:37 +01:00
Mattias Jansson
313785648b
Refactor finalization to support global scope dynamic deallocation ( #145 )
2020-01-31 23:51:56 +01:00
Mattias Jansson
3792374b5a
First class heaps ( #131 )
2020-01-02 11:04:36 +01:00
Stas Denisov
cab9e2ef2e
Mention a C# wrapper ( #130 )
2019-12-28 12:59:52 +01:00
Mattias Jansson
8067c343f3
remove old reference to guards
2019-12-25 23:37:13 +01:00
Mattias Jansson
26147f094a
Allow huge pages to split into multiple heap control structures ( #121 )
2019-11-09 12:39:31 +01:00
Mattias Jansson
c4f3ed40f8
update changelog
2019-11-05 21:10:12 +01:00
Mattias Jansson
9ebe0ce0c5
update docs
2019-08-08 20:13:34 +02:00
Mattias Jansson
222e710663
update documentation
2019-07-26 20:06:57 +02:00
Mattias Jansson
dac8e48957
Stabilization fixes ( #105 )
...
* revert to 16 byte alignment, fix small block size class calculation and guard init for preloading
* give zero size special size class to speed up class calculation slightly
* simplify free span detection
* verify block size on allocation
* fix alignment limit
* more detailed statistics
* avoid extra init calls in malloc overrides
* public access to detailed statistics
* avoid extra global memory access by storing data in span header
* avoid having to use extra flag in deferred list atomic
* make configurable span and page sizes a preprocessor control
* separate deferred list and size
* use partial span list for active span, push new partials at tail
* use interpose on apple platforms
2019-07-23 12:32:00 +02:00
Mattias Jansson
8b9862cc67
Put license in readme ( #93 )
2019-05-24 11:02:58 +02:00
Mattias Jansson
7963a0278a
update repository url
2019-05-23 22:37:29 +02:00
Mattias Jansson
7272420e73
update docs
2018-03-27 21:33:13 +02:00
Mattias Jansson
f6f2369c37
Huge page support and allow atomic span unmapping ( #59 )
...
huge/large pages support on windows, linux and macos
avoid deferring span unmaps to owner thread by atomic span remainder counter
remove span map count limit
2018-03-27 13:49:33 +02:00
Mattias Jansson
c1f8faa977
Enable 64KiB page size and improve cache/unmap control ( #56 )
...
unmap pre-padding pages to avoid offset
set page limit to 64k
separate cache control
fix sign conversions
add option to disable unmapping memory pages
update docs
2018-03-23 19:54:16 +01:00
Mattias Jansson
5a279e43ff
update docs
2018-02-13 08:51:03 +01:00
Mattias Jansson
9d2392d0ac
cleanups and updated docs
2018-02-12 23:36:55 +01:00
Mattias Jansson
d4237be157
Super spans ( #50 )
...
allow spans to map/unmap in superspan groups
unify cache handling and allow breakup of large superspans
2018-02-04 21:03:31 +01:00
Mattias Jansson
0b83775571
update docs
2018-01-31 08:51:04 +01:00
Mattias Jansson
bb8a749984
Configurable span granularity ( #48 )
2018-01-30 12:34:59 +01:00
Mattias Jansson
7eb62ee892
Test cases ( #45 )
2018-01-23 10:06:06 +01:00
Mattias Jansson
504dedc22c
update docs
2018-01-22 12:15:13 +01:00
Mattias Jansson
4af796aaf1
Memory guards ( #44 )
...
add optional memory guards
2018-01-22 11:38:51 +01:00
Mattias Jansson
2266b36156
Configurable page size ( #42 )
...
* separate page size and class setup
* modify implementation to allow page sizes in [512,16384] range
2018-01-22 08:14:57 +01:00
Mattias Jansson
64053c8ac5
update docs
2018-01-18 11:59:08 +01:00
Dair Grant
89e3259c40
Fix typos.
2018-01-16 20:55:47 +00:00
Mattias Jansson
7f00456e69
split into two separate libraries, one for rpmalloc only code and one with libc overrides
2017-10-07 23:32:10 +02:00
Mattias Jansson
47041de81d
clarification for libc entry points
2017-08-27 10:51:51 +02:00
Mattias Jansson
485b0f53a2
clarify usage and caveats
2017-08-26 21:04:12 +02:00
Mattias Jansson
206f04db5a
dual license
2017-04-06 08:07:25 +02:00
Mattias Jansson
bb658201d9
updating documentation
2017-04-05 11:50:34 +02:00
Mattias Jansson
12053ef159
clarify producer-consumer scenario
2017-04-03 12:59:19 +02:00
Mattias Jansson
c857c1a721
update documentation
2017-04-03 12:26:33 +02:00
Mattias Jansson
f65de4c56e
add more documentation
2017-03-28 12:59:11 +02:00
Mattias Jansson
db8622cd30
rephrasing some sections
2017-03-27 09:42:29 +02:00
Mattias Jansson
39da1347cf
updating benchmarks, part one
2017-03-26 23:40:09 +02:00
Mattias Jansson
b4e684afcf
more statistics
2017-03-25 07:04:37 +01:00
Mattias Jansson
261b7e1a15
adding a quick overview
2017-03-24 09:30:13 +01:00
Mattias Jansson
ba247be6c2
improve documentation regarding fragmentation and best/worst case scenarios
2017-03-24 09:22:12 +01:00