Jason Evans 8a03cf039c Implement cache index randomization for large allocations.
Extract szad size quantization into {extent,run}_quantize(), and .
quantize szad run sizes to the union of valid small region run sizes and
large run sizes.

Refactor iteration in arena_run_first_fit() to use
run_quantize{,_first,_next(), and add support for padded large runs.

For large allocations that have no specified alignment constraints,
compute a pseudo-random offset from the beginning of the first backing
page that is a multiple of the cache line size.  Under typical
configurations with 4-KiB pages and 64-byte cache lines this results in
a uniform distribution among 64 page boundary offsets.

Add the --disable-cache-oblivious option, primarily intended for
performance testing.

This resolves #13.
2015-05-06 13:27:39 -07:00
..
2015-03-23 17:26:53 -07:00
2014-12-08 16:34:04 -08:00
2012-02-28 16:50:47 -08:00
2015-03-16 15:11:06 -07:00
2014-12-08 16:34:04 -08:00
2014-12-08 16:34:04 -08:00
2014-11-07 14:50:38 -08:00
2014-12-08 16:34:04 -08:00
2015-03-11 23:14:50 -07:00
2015-03-22 00:09:04 -07:00
2014-09-10 21:49:42 -04:00