From 5e4a2e86cad55af6f4a4187d1924c38a080ded56 Mon Sep 17 00:00:00 2001 From: greg Date: Thu, 28 Mar 2019 23:00:20 -0400 Subject: [PATCH] Update memory usage in README --- README.md | 13 ++++++++----- html/img/flat_peak.gif | Bin 0 -> 1772 bytes html/img/node_peak.gif | Bin 0 -> 955 bytes html/img/parallel_flat_peak.gif | Bin 0 -> 1810 bytes html/img/parallel_node_peak.gif | Bin 0 -> 1005 bytes 5 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 html/img/flat_peak.gif create mode 100644 html/img/node_peak.gif create mode 100644 html/img/parallel_flat_peak.gif create mode 100644 html/img/parallel_node_peak.gif diff --git a/README.md b/README.md index 9e0fdae..787a280 100644 --- a/README.md +++ b/README.md @@ -95,13 +95,16 @@ The full types with template parameters can be found in the [parallel_hashmap/ph ## Memory usage -| type | memory usage | -|--------|-------------------| -| flat tables | ![flat_mem_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/flat_mem_usage.gif?raw=true) | -| node tables | ![node_mem_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/node_mem_usage.gif?raw=true) | +| type | memory usage | additional memory usage when resizing | +|-----------------------|-------------------| +| flat tables | ![flat_mem_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/flat_mem_usage.gif?raw=true) | ![flat_peak_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/flat_peak.gif?raw=true) | +| node tables | ![node_mem_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/node_mem_usage.gif?raw=true) | ![flat_node_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/flat_node.gif?raw=true) | +| parallel flat tables | ![flat_mem_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/flat_mem_usage.gif?raw=true) | ![parallel_flat_peak](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/parallel_flat_peak.gif?raw=true) | +| parallel node tables | ![node_mem_usage](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/node_mem_usage.gif?raw=true) | ![parallel_node_peak](https://github.com/greg7mdp/parallel-hashmap/blob/master/html/img/parallel_node_peak.gif?raw=true) | + The load factor varies between 0.4375 (just after the resize) and 0.875 (just before the resize). -In addition, when the table resizes, the peak memory usage is an additional 50% of the new size for the *non-parallel* hashmaps, and an additional 3% of the new size for the *parallel* hashmaps (single threaded usage). +In addition, during the resizes, the peak memory usage is an additional 50% of the new size for the *non-parallel* hashmaps, and an additional 3% of the new size for the *parallel* hashmaps (single threaded usage). diff --git a/html/img/flat_peak.gif b/html/img/flat_peak.gif new file mode 100644 index 0000000000000000000000000000000000000000..eefbad6cbc5ef36fbdf35168ee64c29a83445795 GIT binary patch literal 1772 zcmV%MR-W5#sUbFS}v@BhG`1Hl?3D2+jI$!t2G&?w*_U@Wps;jI~1UMn30;v`Ppp;n$1R(+o7z-h-!o$Qd2>}5Lnv{PN31$=s z271B0zrn@X+S?)yfr-l!q!kANg*KQj2iBa%O$ASJcKmZX5g=C6m6Z+_JHZ7QkUJKw& z`6LFL7z<@$p!~A)i-3j%d*-;Ygx?gQKWQ2`2fzrE0}8OjaM}$ZM*{290GJwn_8bp=A;H(5&2~2-BIElglUxuFiAqwNBmVFg$Q&2FP z!Z9a&bC}DKGmK{popH)E@oqu^IklF%hGzhDg8;!Y0v}^?MC%LMrOdMsUV;GxMngIA zHY0&m7aNU}NDc=&hVQ7BHLxl`x-;n49scJ)0GhnF25kRakcSw2_)$S1gA}62cMiZ6 z7zMg4zyJYkrE{Hs`CQQxw4_8K@=@5gKO(g|5jc zA`X-@#+(2YI?e>NY>?!9$8}0Un1%vCCLCV!n5qq+EFc*z$zYJx$i0EBDH0vvUSo0$ zI}<;^$TtGA6Qqk1u9l!G<*FADP$mGtl!M=C0aUwdT>u9x@W2EYOmGITaSP?H$0W1N zD;mip4K=2KQcgJK)KY5zZc$Jf3SBvu2q=j*2W%fp(B+9ri9%F1Bi-m2muJKz+ZLJQNUvcB(Na|?|H)ro6fLR z4pULe=yU_SR&7eh_NaD3Od|j4<+yNG0Jo{5jqTmZcMtGap#b!&cY^AQz%HJ-VXgJP zOb)RKJOiYo<-JW6t>+j1^<;5eI?drZ9zOTTIK|R7s7zYNG-tUp3L%IU3kv?AUy(Tikr|WKRB5C%J2TJM&6>?~kbRxi3S4Ndb z$C2e7B#uH1*#nV8S(9eb5tPk*vZ1bfzkpkvXuzkR>E-THG`wsLLMpddnzbAtfKm+V z18#dvQ#i#7`W)j8rBR=AmJuIMDaitdtKcGB)*A-A;eH>eM#;ospBuo%6ROco9r8yb zB@RSic|<)+;C+JX01M>-7X#pfh^F$yQpgZSHBt@= zYcv5=wBR%w+z}+M>CKBy0Gb|-Q3QnyLLxPAp$b$eE{EjNcf@cjVF?TobU}ttOwhB1R|(`1^nSnmP*q-QWGE4h!O>x?13P# zl!0KfgEkQ3mmZA?1KK>nnJD;3=S=lJBza{52Ivg}pmU3hoTiQ`_(%{w;W`Z62_%Pr z5d-Y9O6Rom1>I>vJXw%5dl(3PJ;^1MfYKj8`tzS>D4RG)M-C4dpeOdaKr^azrAPww zp%86Ps-GTsfrcE^kvvNeUKG_Xheq_HAVmR12U;0In5QRjB+VKV8q$`!bOp1}4?#J4 zQVe`!0;a2IA79GTo+1Yyj&tNf7NVgGJ>X%fDuCo5cR8OrwWWZg-tTZQ3wS(0RMn{- zAgcM)uDVo~r1{{V406k0@Wm~>$&Cm<=GC@>^pS3K2H1FHfB;D24W78wa;}*hIkMHQ OfDNo*2Mf{&002AP73F3C literal 0 HcmV?d00001 diff --git a/html/img/node_peak.gif b/html/img/node_peak.gif new file mode 100644 index 0000000000000000000000000000000000000000..82e47eca872e13348d142720ff1f7a9fdc16409c GIT binary patch literal 955 zcmV;s14R5sNk%w1VUGYP0J8u9|Ns90007+F+=z&Xc6N4{n3!f}X729p5D*Z|%*;eY zL?R+0GBPr{y1J^Ws#H`|A^8LW00000EC2ui0FMAD000F35XecZy*O)niY&(_j$~<` zXet@g!K!d9&wzu(Lqat}><|Nkjz%n24uTlNvQ!lmlSR@}T3C}Wn+Ic{2Wm7}vrTEd$w*eSeS z&%V9;_weJ(kB?zpy9#ek=dLeL0y+Qzl>X=0S^i{KM*#yBRGw=!Y=i(f1N=jW0?Glf zPBp|CNP{UJSujdslNpA_G8NF_&qoA2kj`fsl0jSpe@!8Pia?o%03ob7Wx!gW5LSp* zEgE6f1ZwpmQ39IC@reOpStbHmL0&MVhMJL}*9k?owLt=iVWCVY)3DdZ8*dGzAzvw& zsR4{;`AES6Vt|5609o_~Qv$5@f@hR1s7XReBQzvOh!;pEMnd6C=1WcHIT@sAcElzD zY8k*}fSML*B>+p&ILfCTZ#1`G3m#m00Ra^P;Ky!1`1UCo-Ys{V7Ap+pfB`gCAQ!1o zxcX`pvBtXD6sF>oBn1piiR!O)Yvi}tsDKu$$|AdDFhGCITEUX~w)32@`SWE5$@ dk;mpEi#St!qKst^n8{Wc;4$p+#}h;V06XIPf+7F_ literal 0 HcmV?d00001 diff --git a/html/img/parallel_flat_peak.gif b/html/img/parallel_flat_peak.gif new file mode 100644 index 0000000000000000000000000000000000000000..45e8ee6550e661cf0f1b24ddb590aa28664563da GIT binary patch literal 1810 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