cdec4b0e | 03-Aug-2016 |
ticki <ticki@users.noreply.github.com> |
Ralloc 1.0.0: A trait-based local/global allocator model.
- Use a trait-based approach to local/global allocators. In particular, we make what was previously provided by `Bookkeeper` to a trait in
Ralloc 1.0.0: A trait-based local/global allocator model.
- Use a trait-based approach to local/global allocators. In particular, we make what was previously provided by `Bookkeeper` to a trait in which the custom methods are overriden. - Enable ralloc-based block list reallocation. Instead of using BRK for this, we allow the allocator itself to manage the bookkeeper's capacity. This is done by adding the guarantee of the vector's capacity always being greater than or equal two the length plus two. - Remove the `UniCell` primitive and provides a `MoveCell` primitive instead. - Move `Bookkeeper`-specific methods to `Bookkeeper`'s impl instead of the `Allocator` trait. - Introduce the `LazyInit` primitive, which provides functionality similar to the `lazy_static` crate. In particular, it allows for an initializer to be executed if initialization is needed. This is used for allocating the initial segment. - Use lonely method for allocation API (abolish `lock`, which is no longer relevant due to the new model). - Due to an unsoundness discovered by @nilset, we remove the correctness guarantee of the "seperate deallocation" example. - Remove microcaches. This method is outdated with the new model. In the future, it will likely be replaced by a small-allocation LL arena. - Wrap TLS variables in a newtype that guarantees against crossthread leakage. - Update the tests.
show more ...
|
146a5db9 | 06-Jun-2016 |
ticki <ticki@users.noreply.github.com> |
Add thread local allocators, BRK locks, platform independency, lock reuse, local allocators, more tests, abort-as-panic, additional benches, provide an Allocator struct, memleak detection, fix bugs r
Add thread local allocators, BRK locks, platform independency, lock reuse, local allocators, more tests, abort-as-panic, additional benches, provide an Allocator struct, memleak detection, fix bugs related to the is_empty function, micro caches (implemented, but not wired up), a prelude, allocator specific OOM handler, fix bound checks, Leak trait, fix bug in Mutex.
show more ...
|