summaryrefslogtreecommitdiff
path: root/doc/0/A-meta_alloc.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/0/A-meta_alloc.md')
-rw-r--r--doc/0/A-meta_alloc.md11
1 files changed, 6 insertions, 5 deletions
diff --git a/doc/0/A-meta_alloc.md b/doc/0/A-meta_alloc.md
index 45d851a..577f066 100644
--- a/doc/0/A-meta_alloc.md
+++ b/doc/0/A-meta_alloc.md
@@ -208,18 +208,19 @@ values used by the implementation are as follows:
* Padding: 56 bytes
-* Maximum count: 32 indexes
+* Maximum count: 16 indexes
* Smallest size class: 256 bytes
-The extra index array starts after 64 bytes, and requires 128 bytes,
-since it stores up to 32 4-byte integers; that gives us a total size
-of 192, which fits in under 256 bytes.
+The extra index array starts after 64 bytes, and requires 64 bytes,
+since it stores up to 16 32-bit integers; that's a total size of 128,
+which fits within 256, and means we could decrease the smallest size
+to 128 as well if deemed more appropriate.
The 64-byte padding is to allow for efficient bulk memory transfer
using up to 512-bit SIMD instructions on modern processors.
-Why we would need to bulk-transfer 32 index values will be explained
+Why we would need to bulk-transfer 16 index values will be explained
later, as we look into thread-local cache metadata.
## Per-thread metadata