Tcache flush: prefetch edata contents.

This frontloads more of the miss latency.  It also moves it to a pathway where
we have not yet acquired any locks, so that it should (hopefully) reduce hold
times.
This commit is contained in:
David Goldblatt
2021-01-28 16:14:39 -08:00
committed by David Goldblatt
parent 9f9247a62e
commit 31a629c3de
2 changed files with 50 additions and 0 deletions

View File

@@ -247,6 +247,7 @@ tcache_bin_flush_metadata_visitor(void *szind_sum_ctx,
emap_full_alloc_ctx_t *alloc_ctx) {
size_t *szind_sum = (size_t *)szind_sum_ctx;
*szind_sum -= alloc_ctx->szind;
util_prefetch_write_range(alloc_ctx->edata, sizeof(edata_t));
}
static void