aboutsummaryrefslogtreecommitdiffstats
path: root/system/doc/efficiency_guide
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2016-12-20 15:59:32 +0100
committerSverker Eriksson <[email protected]>2016-12-20 15:59:32 +0100
commitac2de409f9379544234f3356974feb2ac15d4818 (patch)
tree06861a680e12e98882285dec427634620b944c27 /system/doc/efficiency_guide
parentf0152387b96dc0c2ce5ecf7805fc435cb400356e (diff)
parent9a048a8743c3d384b5e33d6383be97dc4858126e (diff)
downloadotp-ac2de409f9379544234f3356974feb2ac15d4818.tar.gz
otp-ac2de409f9379544234f3356974feb2ac15d4818.tar.bz2
otp-ac2de409f9379544234f3356974feb2ac15d4818.zip
Merge branch 'sverker/map-footprint-docs/OTP-14118' into maint
* sverker/map-footprint-docs: erts: Correct memory footprint for maps
Diffstat (limited to 'system/doc/efficiency_guide')
-rw-r--r--system/doc/efficiency_guide/advanced.xml12
1 files changed, 6 insertions, 6 deletions
diff --git a/system/doc/efficiency_guide/advanced.xml b/system/doc/efficiency_guide/advanced.xml
index eee2648f34..e1760d0ded 100644
--- a/system/doc/efficiency_guide/advanced.xml
+++ b/system/doc/efficiency_guide/advanced.xml
@@ -87,15 +87,15 @@
</row>
<row>
<cell>Small Map</cell>
- <cell>4 words + 2 words per entry (key and value) + the size of each key and value pair.</cell>
+ <cell>5 words + the size of all keys and values.</cell>
</row>
<row>
- <cell>Large Map</cell>
+ <cell>Large Map (> 32 keys)</cell>
<cell>
- At least, 2 words + 2 x <c>N</c> words + 2 x log16(<c>N</c>) words +
- the size of each key and value pair, where <c>N</c> is the number of pairs in the Map.
- A large Map is represented as a tree internally where each node in the tree is a
- "sparse tuple" of arity 16.
+ <c>N</c> x <c>F</c> words + the size of all keys and values.<br></br>
+ <c>N</c> is the number of keys in the Map.<br></br>
+ <c>F</c> is a sparsity factor that can vary between 1.6 and 1.8
+ due to the probabilistic nature of the internal HAMT data structure.
</cell>
</row>
<row>