52 lines
2.2 KiB
Diff
52 lines
2.2 KiB
Diff
From 56c8ecffc1f84f630e10f775bc29fcf4c743a3c9 Mon Sep 17 00:00:00 2001
|
|
From: Yinan Zhang <zyn8950@gmail.com>
|
|
Date: Thu, 6 Jun 2019 09:22:10 -0700
|
|
Subject: [PATCH] Correct tsd layout graph
|
|
|
|
Augmented the tsd layout graph so that the two recently added fields,
|
|
`offset_state` and `bytes_until_sample`, are properly reflected.
|
|
As is shown, the cache footprint is 16 bytes larger than before.
|
|
---
|
|
include/jemalloc/internal/tsd.h | 8 ++++++--
|
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/include/jemalloc/internal/tsd.h b/include/jemalloc/internal/tsd.h
|
|
index 9ba26004..18b2476b 100644
|
|
--- a/include/jemalloc/internal/tsd.h
|
|
+++ b/include/jemalloc/internal/tsd.h
|
|
@@ -20,6 +20,7 @@
|
|
* e: tcache_enabled
|
|
* m: thread_allocated (config_stats)
|
|
* f: thread_deallocated (config_stats)
|
|
+ * b: bytes_until_sample (config_prof)
|
|
* p: prof_tdata (config_prof)
|
|
* c: rtree_ctx (rtree cache accessed on deallocation)
|
|
* t: tcache
|
|
@@ -27,6 +28,7 @@
|
|
* d: arenas_tdata_bypass
|
|
* r: reentrancy_level
|
|
* x: narenas_tdata
|
|
+ * v: offset_state
|
|
* i: iarena
|
|
* a: arena
|
|
* o: arenas_tdata
|
|
@@ -35,11 +37,13 @@
|
|
* Use a compact layout to reduce cache footprint.
|
|
* +--- 64-bit and 64B cacheline; 1B each letter; First byte on the left. ---+
|
|
* |---------------------------- 1st cacheline ----------------------------|
|
|
- * | sedrxxxx mmmmmmmm ffffffff pppppppp [c * 32 ........ ........ .......] |
|
|
+ * | sedrxxxx vvvvvvvv mmmmmmmm ffffffff bbbbbbbb pppppppp [c * 16 .......] |
|
|
* |---------------------------- 2nd cacheline ----------------------------|
|
|
* | [c * 64 ........ ........ ........ ........ ........ ........ .......] |
|
|
* |---------------------------- 3nd cacheline ----------------------------|
|
|
- * | [c * 32 ........ ........ .......] iiiiiiii aaaaaaaa oooooooo [t...... |
|
|
+ * | [c * 48 ........ ........ ........ ........ .......] iiiiiiii aaaaaaaa |
|
|
+ * +---------------------------- 4th cacheline ----------------------------+
|
|
+ * | oooooooo [t...... ........ ........ ........ ........ ........ ........ |
|
|
* +-------------------------------------------------------------------------+
|
|
* Note: the entire tcache is embedded into TSD and spans multiple cachelines.
|
|
*
|
|
--
|
|
2.37.3.windows.1
|
|
|