diff options
author | Daniel Micay <danielmicay@gmail.com> | 2014-09-30 14:33:46 (GMT) |
---|---|---|
committer | Jason Evans <jasone@canonware.com> | 2014-10-01 23:55:03 (GMT) |
commit | f8034540a16a6f4fc7948e4783747ca1e9055823 (patch) | |
tree | 337260e711860fada877482ba7c0da84b1138bfe /Makefile.in | |
parent | 4dcf04bfc03b9e9eb50015a8fc8735de28c23090 (diff) | |
download | jemalloc-f8034540a16a6f4fc7948e4783747ca1e9055823.zip jemalloc-f8034540a16a6f4fc7948e4783747ca1e9055823.tar.gz jemalloc-f8034540a16a6f4fc7948e4783747ca1e9055823.tar.bz2 |
Implement in-place huge allocation shrinking.
Trivial example:
#include <stdlib.h>
int main(void) {
void *ptr = malloc(1024 * 1024 * 8);
if (!ptr) return 1;
ptr = realloc(ptr, 1024 * 1024 * 4);
if (!ptr) return 1;
}
Before:
mmap(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fcfff000000
mmap(NULL, 4194304, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fcffec00000
madvise(0x7fcfff000000, 8388608, MADV_DONTNEED) = 0
After:
mmap(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1934800000
madvise(0x7f1934c00000, 4194304, MADV_DONTNEED) = 0
Closes #134
Diffstat (limited to 'Makefile.in')
0 files changed, 0 insertions, 0 deletions