Eric Wong <normalperson / yhbt.net> wrote: > OK. Also, did we ever consider signed type (`ssize_t`) for malloc > counters instead? This may be more useful if we switch to > thread-local storage for counters to avoid atomics. Reverted for now because of regressions in: bm_array_sample_100k__6k bm_array_sample_100k___10k bm_array_sample_100k___50k I think the original unsigned + underflow avoidance code prevented us from accounting free() properly, and we were triggering GC more as a result. With this patch, frees are accounted properly so malloc_increase grew too slowly... Also, I think it would be beneficial to check malloc_increase and do a lazy sweep step BEFORE calling malloc, since that should improve cache locality in malloc (because they're usually LIFO). Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>