Matthew Parkinson
Matthew Parkinson
Although, double frees are generally caught on large allocs. This is done very late in the process after many operations more operations have occurred. This change brings that check much...
Pull a part the locking from the static range. This enables locking to be added to a range directly, and does not require it to be made static. This is...
On twitter @richfelker has said we should consider providing `__builtin_dynamic_object_size` as a more comprehensive way to provide [guarded memcpy](https://github.com/microsoft/snmalloc/blob/main/docs/security/GuardedMemcpy.md) like features: > I'd love if there were some clean agreed...
Implemenation of a range that gradually releases memory back to the OS. It quickly pulls memory, but the dealloc_range locally caches the memory and uses Pal timers to release it...
If the caller knows the sizes, and knows the allocation is thread local, then we can make some significant optimisations. This is a brief hack to show where would need...
This issue is to track the poor performance reported by @armintoepfer on twitter, when comparing to mimalloc. > Initial testing, it's much slower than mimalloc. Do you have, similar to...
Based on [mimalloc](http://github.com/microsoft/mimalloc)'s design we have managed to dramatically improve the performance on snmalloc. We should * Rerun our benchmarking infrastructure to compare - snmalloc submitted to ISMM - snmalloc...
In #88, we implemented enough backtrace to flush out some CI failures for Windows. This should be refactored. * We should always call Pal::error instead of abort. * Assert should...
Based on the work in #109 alignment with `snmalloc` can be implemented extremely efficiently: just two additional instructions, which can be optimised away if the alignment is known to be...