You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by al...@apache.org on 2020/02/24 18:14:56 UTC
[incubator-datasketches-characterization] 01/01: frequent items
merge time
This is an automated email from the ASF dual-hosted git repository.
alsay pushed a commit to branch fi_merge_time
in repository https://gitbox.apache.org/repos/asf/incubator-datasketches-characterization.git
commit a574853f0f3698f39b414dfc2e7de87a6bc33aaf
Author: AlexanderSaydakov <Al...@users.noreply.github.com>
AuthorDate: Mon Feb 24 10:14:42 2020 -0800
frequent items merge time
---
cpp/matlab/frequent_items_merge_time.m | 20 ++
..._merge_timing_string_lgk10_zipf11_long_copy.tsv | 319 +++++++++++++++++++++
..._merge_timing_string_lgk10_zipf11_long_move.tsv | 319 +++++++++++++++++++++
...merge_timing_string_lgk10_zipf11_short_copy.tsv | 319 +++++++++++++++++++++
...merge_timing_string_lgk10_zipf11_short_move.tsv | 319 +++++++++++++++++++++
cpp/src/frequent_items_merge_timing_profile.cpp | 115 ++++++++
cpp/src/frequent_items_merge_timing_profile.hpp | 34 +++
cpp/src/main.cpp | 2 +
8 files changed, 1447 insertions(+)
diff --git a/cpp/matlab/frequent_items_merge_time.m b/cpp/matlab/frequent_items_merge_time.m
new file mode 100644
index 0000000..6e000aa
--- /dev/null
+++ b/cpp/matlab/frequent_items_merge_time.m
@@ -0,0 +1,20 @@
+clf;
+k=1024;
+
+fi_str_cp_sh=load('../results/frequent_items_merge_timing_string_lgk10_zipf11_short_copy.tsv');
+fi_str_mv_sh=load('../results/frequent_items_merge_timing_string_lgk10_zipf11_short_move.tsv');
+fi_str_cp_ln=load('../results/frequent_items_merge_timing_string_lgk10_zipf11_long_copy.tsv');
+fi_str_mv_ln=load('../results/frequent_items_merge_timing_string_lgk10_zipf11_long_move.tsv');
+
+hold on;
+semilogx(fi_str_cp_sh(:,1), fi_str_cp_sh(:,5), 'linewidth', 2);
+semilogx(fi_str_mv_sh(:,1), fi_str_mv_sh(:,5), 'linewidth', 2);
+semilogx(fi_str_cp_ln(:,1), fi_str_cp_ln(:,5), 'linewidth', 2);
+semilogx(fi_str_mv_ln(:,1), fi_str_mv_ln(:,5), 'linewidth', 2);
+
+set(gca, 'fontsize', 16);
+title 'Merge time of frequent items sketch<std::string>(10)'
+xlabel 'stream size'
+ylabel 'time, nanoseconds'
+legend('zipf 1.1 copy short strings', 'zipf 1.1 move short strings', 'zipf 1.1 copy long strings', 'zipf 1.1 move long strings');
+grid minor on
diff --git a/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_long_copy.tsv b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_long_copy.tsv
new file mode 100644
index 0000000..66b08b2
--- /dev/null
+++ b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_long_copy.tsv
@@ -0,0 +1,319 @@
+1 16384 14273.6 110.168 256.104 0 1
+2 12120 14241.7 106.518 379.95 0 1.96469
+3 10161 14317.5 104.845 497.097 0 2.90139
+4 8967 14380.4 101.623 605.442 0 3.80908
+5 8138 14446.2 100.713 736.299 0 4.69661
+6 7517 14463.5 99.0643 868.565 0 5.53891
+7 7030 14059.3 96.5657 1462.59 0 6.38549
+8 6633 14300.6 100.237 1769.18 0 7.22795
+9 6302 14381.6 98.4167 1984.77 0 8.02253
+10 6020 14475.7 97.6744 2160.96 0 8.82442
+11 5776 14345.7 97.3621 2313.19 0 9.60319
+12 5561 14485.9 96.985 2475.45 0 10.3726
+13 5371 14590 97.7328 2800.97 0 11.1434
+14 5201 14477.6 96.3688 3076.14 0 11.896
+15 5047 14646.1 97.2855 3409.75 0 12.6037
+16 4907 14464.2 96.9406 3673.53 0 13.3621
+17 4780 14498.1 96.1359 3886.61 0 14.0477
+18 4662 14540.5 95.1428 4074.43 0 14.7926
+19 4554 14738 98.6409 4318.62 0 15.4877
+20 4454 14880.1 96.8455 4469.91 0 16.2146
+21 4360 14601.1 96.2211 4572.02 0 16.8778
+22 4273 14640.8 96.7066 4735.31 0 17.5844
+23 4191 15073 99.167 4959.91 0 18.24
+24 4114 14907.6 98.0899 5081.67 0 18.9482
+25 4042 14746.4 97.7635 5187.04 0 19.622
+26 3973 15361.9 101.715 5497.36 0 20.2698
+27 3909 16987.7 106.298 6008.7 0 20.935
+28 3847 14681.1 96.8287 5664.15 0 21.6272
+29 3789 16148.3 109.437 6534.18 0 22.2655
+31 3681 15308.1 101.016 6700.9 0 23.5621
+32 3630 15340.2 101.386 6992.84 0 24.2915
+33 3582 15013.7 98.8275 7179.23 0 24.9442
+35 3492 16571.9 108.223 8145.19 0 26.0819
+36 3449 15685.4 103.299 8014.79 0 26.6959
+38 3369 15261.5 98.4206 8157.02 0 27.992
+40 3295 15126.3 96.2898 8259.48 0 29.2662
+41 3259 15082.5 96.7602 8395.83 0 29.8607
+43 3193 15770.4 100.576 8999.06 0 31.2152
+45 3130 15976.7 100.575 9330.03 0 32.3518
+47 3071 16411.9 105.441 9807.55 0 33.4507
+49 3016 16447.6 105.336 10029.8 0 34.7709
+52 2939 16130 101.899 10140.5 0 36.5713
+54 2892 16960.2 107.538 10758.6 0 37.6978
+56 2846 15812 99.099 10389.7 0 38.8823
+59 2782 16202 101.652 10990.3 0 40.5557
+61 2742 16774.3 104.489 11664.8 0 41.7381
+64 2686 16473.6 101.737 12022.7 0 43.5953
+67 2633 19693.5 118.57 14143.2 0 45.3217
+70 2583 19912.9 125.115 15500.2 0 46.8753
+73 2536 17509.9 105.586 14082 0 48.5059
+76 2492 17379.2 103.267 14557 0 50.2183
+79 2451 17200.3 99.8353 14899.2 0 51.8409
+83 2399 17716.5 101.076 15642.8 0 54.0092
+87 2350 19465.5 110.115 17305.1 0 55.9987
+91 2304 18415.4 103.26 16833.3 0 58.25
+95 2262 18267.9 100.596 16912.5 0 60.2732
+99 2222 18798.8 102.024 17373.5 0 62.5986
+103 2184 18891 101.053 17500 0 64.1809
+108 2139 19157.1 101.328 18078.5 0 67.1459
+112 2105 19893.6 102.655 18686.9 0 69.162
+117 2066 19733.3 100.367 18871.7 0 71.6544
+123 2021 20213.8 100.739 19430 0 74.809
+128 1987 20644.7 102.856 20264.2 0 77.1278
+134 1948 21219.7 103.945 21060.1 0 80.0642
+140 1911 22191 105.521 21949.8 0 83.1737
+146 1876 22235.1 104.708 22302.2 0 85.7564
+152 1844 23547.2 109.548 23514.6 0 88.6502
+159 1808 23003.9 104.981 24231.7 0 91.9817
+166 1774 23576.7 105.045 25655 0 95.5192
+173 1743 24676.4 108.139 27535.9 0 98.6064
+181 1709 27728.5 118.204 30568.8 0 102.167
+189 1677 27559.9 115.216 31497.3 0 106.249
+197 1647 27079.5 125.751 31187 0 109.673
+206 1615 26866.9 142.676 31697.2 0 113.596
+215 1586 28074.4 164.231 32844.3 0 117.666
+225 1555 28212.9 178.732 33619.3 0 121.761
+235 1525 28347.5 183.927 34321.3 0 126.448
+245 1498 29076.1 194.264 35174.2 0 130.92
+256 1470 30452.4 202.267 37632 0 135.514
+267 1443 32390.9 209.053 39316 0 140.31
+279 1416 29590.4 190.648 37353.1 0 145.28
+292 1388 35166.4 217.888 43166.4 0 150.713
+304 1364 33276.4 203.943 42261.7 0 155.405
+318 1337 33519.1 198.932 42946.9 0 161.455
+332 1313 36165.3 203.388 45659.6 0 167.03
+347 1288 45618 235.474 54534.2 0 172.953
+362 1264 37945.4 195.44 48017.4 0 179.089
+378 1240 44916.9 212.666 55748.4 0 185.58
+395 1217 61493.8 294.823 75197.2 0 191.909
+412 1195 47764 233.873 65103.8 0 198.527
+431 1172 41804.6 216.694 61157.8 0 205.469
+450 1150 45819.1 237.016 67990.4 0 212.563
+470 1128 38410.5 217.461 62936.2 0 219.355
+490 1108 39546.9 223.366 65231 0 227.497
+512 1087 41992.6 238.341 68910.8 0 235.799
+535 1067 43347.7 245.412 72056.2 0 243.324
+558 1047 42444.1 236.462 72973.3 0 251.683
+583 1027 47337.9 246.818 78930.9 0 261.217
+609 1008 43027.8 228.193 75585.3 0 269.468
+636 989 45467.1 232.628 78859.5 0 278.534
+664 971 45068 219.126 77797.1 0 288.84
+693 953 44184.7 206.269 76834.2 0 298.751
+724 935 49681.3 216.843 83048.1 0 308.523
+756 918 50385.6 210.859 83777.8 0 319.413
+790 900 55430 213.786 89230 0 330.514
+825 883 52225.4 197.721 85782.6 0 341.418
+861 867 54027.7 197.478 89352.9 0 353.547
+899 851 55953 197.076 93235 0 364.813
+939 835 56752.1 195.415 100765 0 377.792
+981 819 57941.4 198.736 110380 0 390.19
+1024 804 58145.5 199.148 117782 0 404.284
+1069 789 57752.9 202.015 122554 0 417.575
+1117 774 58598.2 205.313 126252 0 431.239
+1166 760 58589.5 204.271 130408 0 445.551
+1218 746 61457.1 206.068 133895 0 460.594
+1272 732 63008.2 204.458 138848 0 476.141
+1328 718 72281.3 216.765 152121 0 492.309
+1387 705 76561.7 216.633 156055 0 508.382
+1448 692 70708.1 193.311 149653 0 524.803
+1512 679 83911.6 210.935 166583 0 543.016
+1579 666 82261.3 198.401 162616 0 559.659
+1649 654 91192.7 203.217 173096 0 580.2
+1722 641 88697.3 187.921 170340 0 598.437
+1798 629 87376.8 179.457 170272 0 617.445
+1878 618 88344.7 174.652 171010 0 639.068
+1961 606 91594.1 173.31 175521 0 660.886
+2048 595 93995 173.015 181101 0 680.829
+2139 584 100586 181.312 193329 0 702.553
+2233 573 107894 202.457 219101 0.0122164 717.567
+2332 562 116973 211.423 253162 0.181495 646.671
+2435 552 104232 200.428 279187 0.606884 432.678
+2543 541 87245.8 183.048 287577 0.946396 274.556
+2656 531 87114.9 181.312 297141 0.99435 279.817
+2774 521 88468.3 180.597 303313 1 311.668
+2896 512 92654.3 175.771 308846 1 347.307
+3025 502 98649.4 176.129 317353 1 382.307
+3158 493 102923 172.815 324286 1 419.55
+3298 483 110319 169.212 332035 1 457.058
+3444 474 122165 172.203 342620 1 495.295
+3597 465 131325 170.188 352606 1 535.357
+3756 457 137823 167.448 359392 1 574.035
+3922 448 153775 181.183 385388 1 615.167
+4096 440 146143 166.659 379284 1 655.739
+4277 432 144662 161.846 386685 1.00231 696.266
+4467 424 158778 163.63 406649 1.12028 676.927
+4664 416 170361 164.118 457238 1.80288 367.44
+4871 408 168564 160.931 470380 1.9951 322.36
+5087 400 185335 174.569 499090 2 377.882
+5312 393 163481 169.411 499333 2 436.41
+5547 385 149283 170.571 512675 2 497.595
+5793 378 140437 174.171 516471 2 558.183
+6049 371 139261 171.391 525102 2 618.286
+6317 364 144753 167.581 541591 2 678.945
+6597 357 148350 163.605 555429 2.22129 629.627
+6889 351 161641 160.3 613342 2.91738 343.105
+7194 344 206006 185.718 714323 3 383.047
+7512 338 204237 170.713 689482 3 464.006
+7845 331 260033 193.149 814039 3 549.369
+8192 325 248449 177.319 765578 3 628.329
+8555 319 262614 177.853 784561 3.05329 686.972
+8933 313 295882 177.192 875278 3.80511 396.259
+9329 307 289687 170.102 856958 4 400.046
+9742 302 312695 162.8 879798 4 499.781
+10173 296 290730 153.355 818128 4 599.669
+10624 290 312569 151.985 844010 4.04483 683.99
+11094 285 328632 145.317 900628 4.87018 382.442
+11585 280 345129 151.11 938986 5 446.729
+12098 274 335084 151.467 968223 5 566.723
+12634 269 319903 164.529 1.03535e+06 5.0223 677.082
+13193 264 270765 159.678 1.10067e+06 5.86364 396.178
+13777 259 252633 154.947 1.14293e+06 6 478.641
+14387 255 251267 155.714 1.1718e+06 6 624.902
+15024 250 266144 153.544 1.23105e+06 6.424 553
+15689 245 284849 155.068 1.29598e+06 7 437.951
+16384 241 304203 153.597 1.32997e+06 7 603.203
+17109 236 334110 154.45 1.40992e+06 7.51271 521.246
+17867 232 357228 158.09 1.46036e+06 8 460.621
+18658 227 401612 154.386 1.51283e+06 8.00881 649.233
+19484 223 418359 161.257 1.59087e+06 8.92825 388.345
+20347 219 444767 152.945 1.61903e+06 9 562.904
+21247 215 513986 171.048 1.77137e+06 9.44651 547.312
+22188 211 545299 160.858 1.80074e+06 10 511.166
+23170 207 732952 181.808 2.16599e+06 10.2512 612.362
+24196 203 718202 172.934 2.15177e+06 11 501.626
+25268 199 768769 170.368 2.23776e+06 11.3417 586.08
+26386 195 838472 176.263 2.40437e+06 12 538.097
+27554 192 769495 159.342 2.21248e+06 12.6458 480.599
+28774 188 797356 175.585 2.29297e+06 13 617.218
+30048 185 723951 171.13 2.42481e+06 13.9838 425.697
+31379 181 636768 175.437 2.64122e+06 14.2873 589.768
+32768 178 518275 170.003 2.64979e+06 15 585.618
+34219 174 554713 170.192 2.95578e+06 15.9885 447.874
+35734 171 544386 160.759 2.91002e+06 16.7018 465.333
+37316 168 638071 173.684 3.12218e+06 17.0952 642.542
+38968 165 637115 167.637 3.17922e+06 18 587.327
+40693 162 684852 166.929 3.2751e+06 19 522.698
+42495 159 907528 172.444 3.94129e+06 20 457.428
+44376 156 879115 168.841 3.85497e+06 20.9103 458.712
+46341 153 1.00429e+06 179.249 4.19858e+06 21.8889 447.013
+48393 150 1.14372e+06 176.233 4.45819e+06 22.8933 442.24
+50535 147 1.13573e+06 172.874 4.44873e+06 23.8912 467.497
+52773 144 1.08865e+06 162.549 4.22077e+06 24.9861 490.778
+55109 142 1.38936e+06 179.826 4.90989e+06 26.007 530.099
+57549 139 1.50729e+06 185.985 5.13364e+06 27.0288 611.158
+60097 136 1.38297e+06 170.327 4.87306e+06 28.3456 569.838
+62757 134 1.96634e+06 200.814 6.04443e+06 29.8134 475.784
+65536 131 1.70738e+06 160.988 5.54332e+06 31.0305 566.198
+68438 129 1.70885e+06 158.106 5.43417e+06 32.4729 540.24
+71468 127 1.71609e+06 166.573 5.32801e+06 34.0079 518.165
+74632 124 1.69194e+06 177.171 4.79616e+06 35.1532 612.25
+77936 122 963803 185.728 2.7434e+06 36.3689 582.582
+81386 120 373775 181.762 1.40218e+06 38.6 559.65
+84990 117 343889 181.091 1.47197e+06 40.1453 587.752
+88752 115 357609 167.995 1.6537e+06 41.4783 602.791
+92682 113 422053 169.585 1.95956e+06 43.0973 581.354
+96785 111 524649 170.996 2.31632e+06 44.7477 577.955
+101070 109 647477 164.497 2.6387e+06 46.8716 532.092
+105545 107 703093 155.867 2.85538e+06 49.0187 567.364
+110218 105 984410 165.265 3.5183e+06 51.2667 592.6
+115098 103 1.01058e+06 158.147 3.70189e+06 53.7961 549.951
+120194 101 1.21794e+06 153.061 4.06572e+06 56.2277 582.406
+125515 99 1.46934e+06 167.74 4.65077e+06 58.9798 525.384
+131072 97 1.49444e+06 156.241 4.65548e+06 61.6289 557.278
+136875 95 1.85428e+06 168.671 5.18955e+06 64.5368 546.232
+142935 93 1.67337e+06 158.33 4.59218e+06 67.2796 573.312
+149263 92 748804 170.791 2.18334e+06 71.3913 592.87
+155872 90 488167 187.439 1.81937e+06 75.1778 570.467
+162773 88 682409 183.817 2.47628e+06 77.8523 567.409
+169979 87 761425 163.383 2.72054e+06 80.5862 554.276
+177505 85 876353 160.518 3.18598e+06 83.7647 568.835
+185364 83 1.18827e+06 166.978 3.8474e+06 87.1446 564.47
+193571 82 1.44049e+06 161.031 4.34061e+06 90.9268 596.683
+202141 80 1.79682e+06 164.724 4.91528e+06 95.35 559.5
+211090 79 1.93841e+06 183.878 4.72325e+06 99.7722 603.316
+220436 77 656818 180.289 1.99227e+06 106.455 534.312
+230195 76 616671 170.039 2.13559e+06 110.868 562.895
+240387 74 897135 166.884 2.96146e+06 114.689 574.162
+251030 73 1.22842e+06 159.007 3.70888e+06 119.082 586.301
+262144 72 1.56515e+06 162.251 4.40085e+06 124.014 557.222
+273750 70 1.99706e+06 166.772 5.07887e+06 129.6 574.386
+285870 69 924174 177.243 2.45649e+06 137.768 546.957
+298527 68 1.02554e+06 209.767 3.04528e+06 143.912 588.324
+311744 66 1.22603e+06 177.34 3.55979e+06 149.258 565.939
+325546 65 1.70815e+06 170.755 4.50586e+06 154.892 562.338
+339959 64 2.46453e+06 183.999 5.69739e+06 161.516 575.953
+355010 63 848302 180.87 2.1619e+06 171.413 570.333
+370728 62 1.06656e+06 184.308 3.12624e+06 178.581 559.452
+387141 60 1.75853e+06 213.282 4.72453e+06 185.233 570.117
+404281 59 2.02649e+06 162.665 5.22353e+06 192.61 576.881
+422180 58 830483 165.157 2.20531e+06 204.069 548.81
+440872 57 1.2206e+06 175.745 3.29191e+06 212.439 563.456
+460391 56 1.79538e+06 169.095 4.7188e+06 220.375 538.946
+480774 55 1.8844e+06 191.292 4.19518e+06 231.455 580.164
+502060 54 886093 165.15 2.69124e+06 242.463 537.815
+524288 53 1.89466e+06 183.481 4.76713e+06 251.34 571.698
+547500 52 1.56873e+06 166.106 3.61948e+06 263.846 568.346
+571740 51 1.1842e+06 183.797 3.15412e+06 275.961 560.686
+597053 50 2.2124e+06 190.707 5.30462e+06 286.58 548.66
+623487 49 988878 180.428 2.49378e+06 301.51 559.224
+651091 48 1.51021e+06 164.582 3.97058e+06 313.438 584.229
+679917 47 1.72468e+06 184.408 3.93596e+06 328.319 558.936
+710020 46 1.51139e+06 192.478 4.02602e+06 342.696 556.783
+741455 45 2.14522e+06 186.373 4.65767e+06 357.467 587.911
+774282 45 1.52264e+06 202.844 3.82911e+06 374.289 519.578
+808563 44 1.84493e+06 176.82 4.21314e+06 390.318 579.409
+844361 43 1.42253e+06 166.386 3.72567e+06 407.767 561.86
+881744 42 1.23948e+06 172.683 2.95471e+06 426.857 540.833
+920782 41 1.87773e+06 180.333 4.46124e+06 444.415 574.463
+961548 41 1.06066e+06 173.103 2.72995e+06 465.854 561.098
+1004120 40 1.71918e+06 160.77 3.92085e+06 485.3 558.2
+1048576 39 1.65262e+06 171.199 4.21631e+06 506.795 541.974
+1095000 38 1.22068e+06 191.152 3.17045e+06 530.763 539.211
+1143480 38 1.50008e+06 185.771 3.46155e+06 554.368 567.395
+1194106 37 1.95143e+06 172.365 4.68481e+06 576.838 587.162
+1246974 36 1.83717e+06 174.91 4.51583e+06 603.583 542.306
+1302182 35 1.30326e+06 159.659 3.36511e+06 631.086 579.371
+1359835 35 1.21691e+06 170.646 3.10066e+06 659.514 558.857
+1420040 34 1.08565e+06 167.665 2.72841e+06 689.088 537.735
+1482910 33 1.18327e+06 172.868 3.01852e+06 719.303 585.212
+1548564 33 1.16267e+06 173.22 2.733e+06 752.303 538.758
+1617125 32 1.246e+06 173.591 3.08603e+06 785.344 558.125
+1688722 32 1.36322e+06 184.928 3.35278e+06 819.875 563.188
+1763488 31 1.49277e+06 170.61 3.7889e+06 855.839 586.71
+1841564 30 1.7208e+06 161.821 4.16627e+06 893.4 556.633
+1923097 30 1.54327e+06 156.017 3.6395e+06 934.333 582
+2008240 29 1.22279e+06 166.361 3.01303e+06 976.586 576
+2097152 29 1.79228e+06 171.698 4.17845e+06 1019 510.828
+2190001 28 1.54839e+06 167.74 3.44107e+06 1065.36 511.107
+2286960 28 1.41275e+06 158.787 3.56129e+06 1111.5 592.393
+2388213 27 1.33893e+06 149.79 3.17889e+06 1161.93 600.667
+2493948 27 1.66867e+06 159.015 4.0463e+06 1213.11 515.148
+2604365 26 1.35688e+06 169.293 3.31785e+06 1267.65 575.462
+2719670 26 1.37304e+06 160.459 3.0755e+06 1323.96 564.538
+2840080 25 1.62848e+06 170.939 3.70164e+06 1382.44 570.96
+2965821 25 2.09028e+06 180.627 4.48352e+06 1443.6 581.92
+3097129 24 2.17188e+06 175.859 4.47854e+06 1507.92 529.625
+3234251 24 1.5055e+06 152.757 3.40196e+06 1575.88 525.958
+3377443 23 1.40626e+06 166.785 3.38339e+06 1645.43 566.217
+3526975 23 1.32291e+06 148.346 3.30117e+06 1718.78 572.435
+3683128 22 1.735e+06 158.843 3.90341e+06 1795.14 556.682
+3846194 22 1.31282e+06 153.429 3.23041e+06 1876.18 540.545
+4016479 22 1.42968e+06 147.663 3.32477e+06 1958.86 553.364
+4194304 21 1.63186e+06 149.884 3.81048e+06 2045.52 549.952
+4380002 21 1.44286e+06 153.908 3.53095e+06 2137.14 510.952
+4573921 20 1.4913e+06 153.732 3.4708e+06 2232.1 552.35
+4776426 20 1.51755e+06 152.018 3.7196e+06 2330.75 549.85
+4987896 20 2.37665e+06 154.516 3.93775e+06 2434.15 554.8
+5208729 19 1.32089e+06 150.837 3.15526e+06 2542.84 557
+5439339 19 1.54853e+06 150.765 3.64337e+06 2655.58 568.421
+5680159 18 1.44972e+06 152.633 3.39994e+06 2773.39 597
+5931642 18 1.34539e+06 149.141 3.24294e+06 2896.67 621.667
+6194258 18 1.32161e+06 156.283 3.18217e+06 3026.89 548.556
+6468501 17 1.41765e+06 149.199 3.52829e+06 3160.76 559.471
+6754886 17 1.55153e+06 150.633 3.50588e+06 3300.53 581.765
+7053950 17 1.36912e+06 148.382 3.26494e+06 3447.53 623.294
+7366255 16 1.36225e+06 148.252 3.26956e+06 3600.88 560.75
+7692387 16 1.42106e+06 144.001 3.45825e+06 3760.06 610.625
+8032959 16 1.76062e+06 156.274 3.849e+06 3927.44 525.438
+8388608 16 1.71262e+06 162.447 3.94312e+06 4102 545.375
diff --git a/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_long_move.tsv b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_long_move.tsv
new file mode 100644
index 0000000..01e470e
--- /dev/null
+++ b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_long_move.tsv
@@ -0,0 +1,319 @@
+1 16384 15310.6 102.966 168.396 0 1
+2 12120 14159.6 101.361 204.125 0 1.9651
+3 10161 14239.9 105.239 256.766 0 2.90208
+4 8967 14066.2 99.3365 310.026 0 3.80841
+5 8138 14051.4 97.2229 374.171 0 4.70435
+6 7517 14109.6 95.8716 455.634 0 5.55833
+7 7030 14241.5 99.8984 899.289 0 6.38279
+8 6633 14241.1 97.2034 1154.38 0 7.22358
+9 6302 14293.6 96.1247 1294.51 0 8.04284
+10 6020 14378.4 96.5615 1388.37 0 8.80249
+11 5776 14320.6 95.7095 1472.47 0 9.61998
+12 5561 14269 95.0818 1552.06 0 10.3285
+13 5371 14623 96.0858 1799.29 0 11.1594
+14 5201 14365.1 96.3551 2018.65 0 11.9041
+15 5047 14342.6 96.7704 2285.91 0 12.6527
+16 4907 14336.1 96.9406 2486.04 0 13.3436
+17 4780 14401.7 97.1942 2683.89 0 14.1042
+18 4662 14395.8 96.7038 2821.32 0 14.7982
+19 4554 14586.3 97.0922 2946.86 0 15.4752
+20 4454 14763.4 98.0692 3082.17 0 16.1904
+21 4360 14815.6 98.9734 3181.88 0 16.8807
+22 4273 14870.1 99.6 3291.36 0 17.6422
+23 4191 14923.9 99.7583 3393.46 0 18.1801
+24 4114 14611.8 97.4822 3407.39 0 18.9302
+25 4042 14682.6 97.6843 3491.34 0 19.6185
+26 3973 14610.4 95.9941 3558.27 0 20.3554
+27 3909 14701.7 96.3873 3687.64 0 20.9698
+28 3847 14590.6 96.0489 3808.16 0 21.5513
+29 3789 14604.4 96.741 4024.54 0 22.2906
+31 3681 14603.1 96.0819 4431.68 0 23.5911
+32 3630 14677.4 96.1777 4682.09 0 24.2113
+33 3582 14571.7 95.3167 4864.04 0 24.8878
+35 3492 14724.5 96.5881 5223.08 0 26.1429
+36 3449 14863.7 97.1618 5415.48 0 26.7596
+38 3369 14867.6 96.5225 5620.07 0 28.0748
+40 3295 14924.1 96.9575 5817.6 0 29.2944
+41 3259 14885.5 97.2841 5882.48 0 29.9257
+43 3193 14894.5 96.8252 6004.38 0 31.1118
+45 3130 15033.2 97.1033 6134.82 0 32.3006
+47 3071 15201.9 96.8774 6307.07 0 33.5161
+49 3016 16324.6 104.578 6830.24 0 34.7702
+52 2939 16044.6 103.855 7012.25 0 36.4913
+54 2892 15174.3 98.695 6804.98 0 37.6511
+56 2846 15355.6 98.2457 7004.92 0 38.9086
+59 2782 15537.4 99.4468 7289 0 40.541
+61 2742 15627.3 99.2814 7472.28 0 41.663
+64 2686 15432.6 99.0204 7759.49 0 43.4393
+67 2633 15654.4 99.2058 8196.35 0 45.0843
+70 2583 15919.9 100.901 8765.39 0 46.7925
+73 2536 16174.7 101.038 9401.42 0 48.3498
+76 2492 16861.6 104.139 10038.1 0 50.1569
+79 2451 16649.5 102.846 10350.1 0 51.7515
+83 2399 18341.4 108.73 11517.7 0 54.11
+87 2350 18100.9 108.237 11700.4 0 56.0021
+91 2304 16993.5 102.726 11385.4 0 58.2361
+95 2262 17684.4 104.435 11912.9 0 60.2538
+99 2222 17730 103.283 11962.6 0 62.4716
+103 2184 17740.4 104.631 12239 0 64.3723
+108 2139 18062.6 103.415 12407.7 0 67.1323
+112 2105 18643.7 106.507 12876.5 0 68.8732
+117 2066 18376.6 104.12 12814.6 0 71.5755
+123 2021 18352.8 103.217 13099.5 0 74.6274
+128 1987 18551.1 103.458 13356.3 0 77.1037
+134 1948 18602.2 103.78 13664.8 0 80.0303
+140 1911 19215.1 106.13 14273.2 0 83.0387
+146 1876 19419 105.16 14605 0 85.9472
+152 1844 19649.7 105.952 15216.4 0 88.8379
+159 1808 19983.4 106.445 16216.8 0 92.0808
+166 1774 20249.7 108.631 17270.6 0 95.4848
+173 1743 20497.4 109.395 18383.2 0 98.6139
+181 1709 20578.1 108.606 19039.2 0 102.142
+189 1677 21104.4 110.076 19922.5 0 106.062
+197 1647 21916.2 123.763 20777.2 0 109.574
+206 1615 22602.5 142.141 21497.8 0 113.562
+215 1586 23114.8 156.876 22018.9 0 117.836
+225 1555 23535.7 170.398 22595.5 0 122.064
+235 1525 23724.6 174.848 22967.9 0 126.714
+245 1498 24449.9 183.058 23783 0 130.829
+256 1470 25328.6 189.772 24715 0 135.867
+267 1443 25271 189.54 24985.4 0 140.186
+279 1416 26822.7 197.178 26198.4 0 144.987
+292 1388 26401.3 191.194 26319.9 0 150.501
+304 1364 26412.8 188.166 26707.5 0 155.672
+318 1337 27380.7 188.724 27642.5 0 161.462
+332 1313 27280.3 183.879 28051.8 0 167.176
+347 1288 27957.3 181.934 29035.7 0 172.831
+362 1264 28756.3 180.911 30051.4 0 178.864
+378 1240 29059.7 177.993 31621.8 0 185.364
+395 1217 29647.5 181.174 34299.1 0 191.397
+412 1195 30559 188.441 37698.7 0 198.261
+431 1172 29795.2 192.118 39639.9 0 205.54
+450 1150 29628.7 196.808 40911.3 0 212.792
+470 1128 29645.4 201.888 42234.9 0 220.251
+490 1108 29527.1 205.203 43154.3 0 227.563
+512 1087 31031.3 218.317 45988 0 235.476
+535 1067 32291.5 222.868 48068.4 0 243.37
+558 1047 29276 205.982 46114.6 0 251.071
+583 1027 30659.2 211.784 48907.5 0 260.426
+609 1008 38581.3 247.579 58273.8 0 269.65
+636 989 30930.2 201.447 50264.9 0 278.313
+664 971 32987.6 203.597 52479.9 0 288.676
+693 953 34273.9 202.27 53899.3 0 298.655
+724 935 34567.9 194.505 54266.3 0 309.092
+756 918 37857.3 200.704 57922.7 0 319.757
+790 900 36414.4 186.121 56562.2 0 330.01
+825 883 37977.3 185.596 58044.2 0 340.948
+861 867 38784.3 183.968 60139.6 0 353.383
+899 851 40468.9 184.837 64126.9 0 365.013
+939 835 40701.8 186.812 68568.9 0 376.861
+981 819 41300.4 190.889 77188 0 390.792
+1024 804 41557.2 194.125 82699 0 404.068
+1069 789 41887.2 195.851 85447.4 0 417.36
+1117 774 42316.5 199.14 87510.3 0 431.258
+1166 760 43111.8 199.219 90357.9 0 446.667
+1218 746 44193 196.776 92474.5 0 460.101
+1272 732 45427.6 194.236 94413.9 0 476.833
+1328 718 48403.9 196.343 98628.1 0 492.001
+1387 705 49190.1 189.69 99649.6 0 507.901
+1448 692 56177.7 198.866 107835 0 524.957
+1512 679 52680.4 183.794 104224 0 543.467
+1579 666 55036 183.056 106865 0 560.432
+1649 654 56750.8 178.432 108983 0 579.893
+1722 641 59260.5 176.956 112190 0 599.359
+1798 629 62752 176.181 116086 0 618.649
+1878 618 64385.1 174.302 118236 0 639.447
+1961 606 66722.8 172.29 121033 0 658.216
+2048 595 68048.7 173.352 125709 0 680.114
+2139 584 67400.7 173.165 130411 0 703.476
+2233 573 67144.9 176.161 137236 0.0052356 722.51
+2332 562 66948.4 181.442 155196 0.174377 651.231
+2435 552 69865.9 187.902 194217 0.603261 433.674
+2543 541 64977.8 181.779 210617 0.935305 281.031
+2656 531 66576.3 184.17 220687 0.998117 276.586
+2774 521 68445.3 182.477 225749 1 313.303
+2896 512 70543 179.47 228830 1 347.119
+3025 502 74671.3 177.992 234187 1 382.618
+3158 493 79551.7 179.522 242519 1 420.761
+3298 483 84436.9 176.864 248021 1 458.13
+3444 474 86742.6 171.021 248979 1 497.006
+3597 465 90520.4 168.091 250428 1 535.062
+3756 457 96013.1 168.19 256558 1 574.19
+3922 448 103663 164.924 263259 1 615.076
+4096 440 112268 164.273 270452 1 657.445
+4277 432 116028 164.013 278248 1 699.039
+4467 424 120427 164.267 300745 1.1533 661.309
+4664 416 122834 165.028 345464 1.72596 403.728
+4871 408 123922 161.897 367221 1.99265 324.468
+5087 400 122222 172.71 377385 2 377.075
+5312 393 117142 171.202 382590 2 437.094
+5547 385 113847 178.008 398569 2 494.738
+5793 378 108479 177.606 402011 2 561.106
+6049 371 112752 184.112 427795 2 616.922
+6317 364 115058 184.007 433335 2.00275 678.272
+6597 357 122426 180.135 462877 2.22969 624.801
+6889 351 126108 172.301 499558 2.90883 346.197
+7194 344 134628 178.086 539163 2.99709 386.279
+7512 338 140811 168.158 546053 3 465.885
+7845 331 145565 162.219 542278 3 548.647
+8192 325 151068 164.386 544837 3 629.486
+8555 319 158476 161.558 549909 3.05329 686.784
+8933 313 177201 167.36 633527 3.8147 388.47
+9329 307 187971 159.023 652055 4 401.495
+9742 302 197245 159.235 667583 4 503.993
+10173 296 206253 157.456 665385 4 604.666
+10624 290 224255 168.172 699255 4.03793 687.597
+11094 285 225130 156.638 734905 4.86667 383.316
+11585 280 229946 156.105 751589 5 440.154
+12098 274 224956 167.487 794318 5 570.686
+12634 269 208409 171.318 824242 5.02974 677.45
+13193 264 194886 176.64 935053 5.88636 386.894
+13777 259 179815 172.502 969243 6 475.112
+14387 255 178102 179.509 971039 6 616.314
+15024 250 182068 164.05 999096 6.42 558.452
+15689 245 181780 149.42 980110 6.99592 441.139
+16384 241 192328 150.663 1.00156e+06 7 604.606
+17109 236 206017 151.838 1.05916e+06 7.47881 533.225
+17867 232 220082 155.417 1.10881e+06 8 470.284
+18658 227 239485 159.65 1.17477e+06 8.00441 649.295
+19484 223 254655 158.237 1.22815e+06 8.91928 397.063
+20347 219 266973 157.729 1.26436e+06 9 561.511
+21247 215 280535 154.752 1.30194e+06 9.51163 517.702
+22188 211 300289 157.58 1.38652e+06 10 513.009
+23170 207 318749 162.353 1.44578e+06 10.2899 594.739
+24196 203 329695 160.011 1.50509e+06 11 487.286
+25268 199 339101 156.282 1.50542e+06 11.3467 579.467
+26386 195 358769 159.839 1.57718e+06 12 534.082
+27554 192 381875 159.393 1.65495e+06 12.6094 499.385
+28774 188 386665 163.62 1.72327e+06 13.0106 608.559
+30048 185 369243 168.01 1.82806e+06 13.9784 429.324
+31379 181 314039 171.289 1.97464e+06 14.2541 603.492
+32768 178 300449 181.885 2.27924e+06 15 579.135
+34219 174 291862 174.03 2.27917e+06 15.977 445.506
+35734 171 304082 174.07 2.2848e+06 16.6842 465.374
+37316 168 331375 183.171 2.49267e+06 17.0774 648.381
+38968 165 353018 178.431 2.72274e+06 18.0121 594.685
+40693 162 388191 181.331 2.92977e+06 18.9938 517.296
+42495 159 422138 178.84 3.29211e+06 19.9686 463.245
+44376 156 393545 156.306 2.9614e+06 20.9359 447.801
+46341 153 416431 172.228 3.12367e+06 21.8954 454.451
+48393 150 427927 173.574 3.19925e+06 22.9 448.607
+50535 147 458429 175.075 3.36431e+06 23.9048 459.054
+52773 144 475347 173.709 3.45496e+06 25 461.028
+55109 142 498232 174.612 3.67358e+06 26 530.479
+57549 139 509468 172.673 3.66593e+06 27.0288 607.173
+60097 136 525088 174.178 3.88676e+06 28.3382 566.382
+62757 134 551582 178.696 4.07433e+06 29.8284 462.776
+65536 131 576038 178.052 4.17767e+06 31.0153 557.221
+68438 129 592302 178.524 4.33005e+06 32.5194 518.969
+71468 127 601874 179.752 4.41469e+06 33.9843 520.669
+74632 124 569823 181.018 4.00903e+06 35.1613 612.565
+77936 122 542049 237.683 3.51611e+06 36.2459 591.082
+81386 120 313042 213.549 1.64559e+06 38.5583 557.458
+84990 117 231752 177.225 1.24624e+06 40.2137 593.906
+88752 115 257104 178.981 1.42876e+06 41.4783 600.348
+92682 113 292956 179.04 1.68984e+06 42.9912 583.912
+96785 111 371126 197.011 2.21579e+06 44.8288 546.505
+101070 109 535743 191.992 2.56861e+06 46.8899 519.716
+105545 107 448757 174.904 2.52831e+06 49 564.794
+110218 105 492371 181.828 2.83067e+06 51.2286 599.476
+115098 103 517175 176.294 3.00455e+06 53.8447 536.99
+120194 101 573158 173.603 3.32256e+06 56.1485 597.921
+125515 99 622475 179.528 3.739e+06 58.9091 537.232
+131072 97 667742 183.935 4.09059e+06 61.732 532.536
+136875 95 739874 182.057 4.58178e+06 64.6211 536.558
+142935 93 694000 179.17 4.14888e+06 67.1398 624.57
+149263 92 385076 178.52 1.97637e+06 71.5326 564.62
+155872 90 294956 183.088 1.43861e+06 75.0556 569.689
+162773 88 359580 184.939 1.78976e+06 77.8182 566.398
+169979 87 450713 173.538 2.27726e+06 80.5172 578.103
+177505 85 537306 177.715 2.79416e+06 83.5765 571.341
+185364 83 607928 169.067 3.25792e+06 87.1084 577.157
+193571 82 676537 163.479 3.74105e+06 91.0244 579.878
+202141 80 739500 162.275 4.18261e+06 95.425 549.35
+211090 79 729532 169.893 4.06211e+06 99.8608 592.038
+220436 77 360104 172.924 1.64782e+06 106.39 554.065
+230195 76 396382 169.637 1.88012e+06 110.974 546.961
+240387 74 522054 167.802 2.533e+06 114.784 582.216
+251030 73 652932 168.706 3.20679e+06 119.178 543.726
+262144 72 745514 163.706 3.89333e+06 123.958 579.083
+273750 70 818800 167.926 4.45793e+06 129.671 563.114
+285870 69 457145 173.504 2.0232e+06 137.783 549.29
+298527 68 451206 166.22 1.96453e+06 143.985 558.5
+311744 66 612985 166.352 2.77805e+06 149.182 555.909
+325546 65 749431 158.644 3.69237e+06 154.985 555.369
+339959 64 831766 161.551 4.25922e+06 161.562 561.156
+355010 63 453873 168.626 1.85783e+06 171.238 580.603
+370728 62 524161 164.183 2.34321e+06 178.323 586.145
+387141 60 698967 158.394 3.31822e+06 185.25 566.6
+404281 59 855525 157.737 4.30661e+06 192.661 556.847
+422180 58 469345 160.905 1.95262e+06 203.879 555.897
+440872 57 594982 161.991 2.67212e+06 212.158 573.123
+460391 56 851232 159.253 3.83612e+06 220.107 557.893
+480774 55 685218 154.24 3.1694e+06 231.582 573.109
+502060 54 564315 159.584 2.365e+06 242.519 548.87
+524288 53 809830 155.224 3.70219e+06 251.472 569.189
+547500 52 706288 164.702 3.25638e+06 264.019 581
+571740 51 602784 155.308 2.47678e+06 275.882 595.039
+597053 50 884840 156.403 3.94142e+06 286.36 590.02
+623487 49 549122 164.305 2.116e+06 301.592 541.612
+651091 48 769396 157.636 3.21267e+06 313.188 599.292
+679917 47 727745 155.273 3.05306e+06 328.426 572.936
+710020 46 687130 156.506 2.81111e+06 342.652 578.913
+741455 45 801978 153.436 3.50042e+06 357.778 562.911
+774282 45 731600 159.591 2.75809e+06 373.778 568.022
+808563 44 812364 154.485 3.39807e+06 390.409 588.727
+844361 43 838233 164.377 3.12942e+06 407.86 602.279
+881744 42 692595 161.831 2.6181e+06 426.905 577.881
+920782 41 876951 151.02 3.5712e+06 444.024 581.463
+961548 41 571805 146.012 2.1262e+06 465.683 574.366
+1004120 40 826975 150.54 3.49882e+06 485.2 584.525
+1048576 39 857897 156.653 3.35105e+06 506.59 554.179
+1095000 38 651895 152.936 2.28971e+06 530.763 565.5
+1143480 38 699868 151.648 2.6975e+06 554.342 567.579
+1194106 37 915270 150.043 3.65286e+06 577.432 559.081
+1246974 36 911722 152.661 3.50006e+06 603.417 590.25
+1302182 35 767286 150.721 2.86434e+06 630.743 592.4
+1359835 35 676886 150.572 2.3364e+06 659.257 567.543
+1420040 34 653118 149.608 2.20847e+06 689.147 582.176
+1482910 33 632576 146.538 2.25658e+06 719.909 541.636
+1548564 33 665000 147.247 2.28476e+06 751.697 565.606
+1617125 32 666406 145.18 2.27694e+06 785.312 545.625
+1688722 32 726438 143.557 2.47634e+06 820.094 552.25
+1763488 31 790581 148.2 2.88765e+06 856.032 522.032
+1841564 30 959133 149.362 3.50483e+06 893.567 575.367
+1923097 30 888867 144.958 3.2206e+06 933.333 560.867
+2008240 29 711793 148.206 2.39017e+06 976.862 540.862
+2097152 29 902207 143.099 3.245e+06 1018.59 614.103
+2190001 28 778786 145.996 2.94268e+06 1064.57 589.179
+2286960 28 846964 145.969 3.01604e+06 1111.57 583.357
+2388213 27 719148 140.9 2.72307e+06 1162 564.296
+2493948 27 909852 140.687 3.41574e+06 1212 578.704
+2604365 26 768115 144.733 2.584e+06 1268.04 560.154
+2719670 26 765846 140.37 2.60785e+06 1324.38 541.192
+2840080 25 828680 142.347 2.99028e+06 1382.6 594.2
+2965821 25 874680 145.907 3.31656e+06 1443.72 507.92
+3097129 24 893208 141.364 3.27017e+06 1507.58 548
+3234251 24 975375 161.209 3.54954e+06 1575.62 573.958
+3377443 23 800957 142.798 2.60413e+06 1646 542.957
+3526975 23 811870 139.363 2.91917e+06 1718.65 555
+3683128 22 853455 137.853 3.0935e+06 1794.73 591.682
+3846194 22 843682 146.538 2.90386e+06 1875.95 539.227
+4016479 22 868545 147.466 3.112e+06 1958.27 532.727
+4194304 21 943238 144.295 3.31943e+06 2045.29 571.238
+4380002 21 884667 149.969 3.00224e+06 2136.14 566.571
+4573921 20 903600 144.856 3.0694e+06 2231.3 569.15
+4776426 20 1.00985e+06 148.897 3.4994e+06 2331.05 562.4
+4987896 20 898000 145.956 3.195e+06 2434.7 535.1
+5208729 19 889053 154.377 2.95126e+06 2542.05 603.368
+5439339 19 967421 148.921 3.19847e+06 2655.26 567.263
+5680159 18 932556 153.162 2.93394e+06 2773.56 548.778
+5931642 18 897222 149.403 2.95089e+06 2896.72 577
+6194258 18 793167 129.619 2.72561e+06 3026.83 521.389
+6468501 17 847529 130.436 2.81041e+06 3160.06 546.294
+6754886 17 818471 126.568 2.81165e+06 3300.29 577.235
+7053950 17 794000 128.002 2.78265e+06 3446.35 572
+7366255 16 813688 128.941 2.782e+06 3601.19 572.5
+7692387 16 893500 144.497 2.94219e+06 3760.12 589.25
+8032959 16 852438 139.036 2.78744e+06 3926.69 566.875
+8388608 16 924500 139.002 2.96444e+06 4101.44 537.812
diff --git a/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_short_copy.tsv b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_short_copy.tsv
new file mode 100644
index 0000000..01ebb3e
--- /dev/null
+++ b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_short_copy.tsv
@@ -0,0 +1,319 @@
+1 16384 14652.6 48.4619 171.143 0 1
+2 12874 14646.3 40.1973 227.124 0 1.96505
+3 11180 14984.8 41.5921 286.404 0 2.90009
+4 10115 14551.4 38.5072 321.008 0 3.80198
+5 9360 14553.3 35.1068 378.846 0 4.69231
+6 8785 14823.1 33.9784 430.734 0 5.54604
+7 8326 15430.1 32.7545 851.069 0 6.38422
+8 7948 15521.6 30.558 1078.51 0 7.20861
+9 7629 15568.4 31.0657 1211.56 0 8.02517
+10 7355 15611.4 30.0884 1307.27 0 8.81564
+11 7115 15694.2 30.5756 1350.95 0 9.57414
+12 6903 15440.8 30.0232 1400.55 0 10.3522
+13 6713 15451.1 30.0107 1610.31 0 11.1245
+14 6542 15801.4 29.7965 1860.59 0 11.899
+15 6387 15178.2 28.819 2031.31 0 12.5906
+16 6245 14762.5 29.0833 2209.13 0 13.3518
+17 6115 14875.1 27.0502 2388.72 0 14.0695
+18 5995 15047.2 28.0697 2462.72 0 14.7741
+19 5883 15178.3 27.2596 2579.47 0 15.4868
+20 5779 15286.6 28.0239 2675.72 0 16.2006
+21 5682 15440 28.2764 2789.86 0 16.9101
+22 5591 14961.2 28.2028 2764.44 0 17.5867
+23 5505 15002.5 27.3585 2819.62 0 18.254
+24 5424 14959.4 27.4859 2898.78 0 18.9864
+25 5347 15047.3 26.8487 2959.98 0 19.599
+26 5275 15249.3 27.0069 2992.99 0 20.2872
+27 5206 15124.3 26.9561 3072.22 0 20.9823
+28 5141 15097.5 26.9959 3173.9 0 21.6123
+29 5078 14969.3 26.8773 3342.65 0 22.3401
+31 4962 15558.4 26.7972 3734.78 0 23.6288
+32 4907 15085.6 26.7284 3874.67 0 24.234
+33 4855 15580.2 27.5817 4104.63 0 24.8622
+35 4757 15668.7 28.3252 4431.78 0 26.1503
+36 4710 15719.1 27.3944 4471.34 0 26.7732
+38 4623 15956.1 27.9267 4817.87 0 28.0415
+40 4541 15496.4 27.3618 4826.25 0 29.2588
+41 4502 15620.6 27.6354 4966.02 0 29.8914
+43 4428 15639.1 27.5204 5101.85 0 31.1585
+45 4359 15502.2 27.7128 5203.49 0 32.2517
+47 4293 15320.8 27.9178 5308.64 0 33.4836
+49 4231 15267.8 27.7061 5413.14 0 34.7334
+52 4145 15776.6 27.902 5645.11 0 36.401
+54 4091 15903 27.5582 5756.29 0 37.5827
+56 4039 15893.8 27.7252 5880.42 0 38.8188
+59 3967 15211.7 27.4083 5958.91 0 40.5495
+61 3921 15683.8 27.6067 6148.94 0 41.7577
+64 3856 15925.1 28.0731 6416.75 0 43.5044
+67 3795 16004.5 28.3051 6841.37 0 45.1713
+70 3738 15848.6 28.43 7219.1 0 46.7737
+73 3683 15244.4 28.4238 7717.35 0 48.4876
+76 3632 15443.8 28.5329 8155.29 0 50.0942
+79 3584 15298 28.7106 8541.29 0 51.7238
+83 3523 15557.8 29.0484 9043.15 0 54.0131
+87 3465 15711.4 29.5766 9359.88 0 56.1968
+91 3412 15518.5 28.8445 9516.12 0 58.0903
+95 3361 15705.4 28.945 9681.94 0 60.3996
+99 3313 15367 29.4402 9828.25 0 62.5008
+103 3268 15923.2 29.5421 10076.8 0 64.3696
+108 3214 16097.7 29.8348 10408.2 0 67.1465
+112 3174 15930.4 29.6916 10493.4 0 69.0942
+117 3126 16370.1 30.3165 10809.7 0 71.7841
+123 3072 16235.7 30.2258 11008.5 0 74.8206
+128 3030 16649.2 31.0179 11421.8 0 77.27
+134 2982 16366.5 31.077 11510.1 0 80.0312
+140 2937 16251.3 31.3342 11771.2 0 82.9946
+146 2894 16242.6 31.4538 12043.9 0 85.7626
+152 2854 16405.4 31.8897 12640.2 0 88.8311
+159 2810 16002.8 32.0911 13274.7 0 92.2078
+166 2768 16470.7 32.5145 14215 0 95.3566
+173 2728 16473.6 33.1289 14958.9 0 98.5913
+181 2686 16269.9 33.5215 15743.9 0 102.243
+189 2646 16972.8 33.9796 16536.3 0 106.024
+197 2608 16646.5 44.535 17067.5 0 109.582
+206 2568 17560.4 61.1087 17649.1 0 113.498
+215 2530 18420.9 76.6357 18288.9 0 117.735
+225 2490 19053.8 91.5109 18839.4 0 122.391
+235 2453 19517.7 98.4986 19536.5 0 126.457
+245 2417 19818 104.197 19895.3 0 130.59
+256 2381 20001.7 109.59 20559 0 135.459
+267 2346 19960.8 110.244 20718.2 0 139.851
+279 2310 19825.5 110.042 21077.1 0 145.309
+292 2274 19938.9 110.262 21623.6 0 150.413
+304 2242 20163.2 109.894 22187.8 0 155.485
+318 2208 20048.9 107.806 22577.4 0 161.315
+332 2175 19958.6 105.19 22879.1 0 166.91
+347 2142 20143.8 103.515 23609.2 0 172.815
+362 2110 20152.6 101.134 24263 0 178.434
+378 2079 20107.7 98.614 25611.8 0 185.357
+395 2047 20227.2 100.416 27756.2 0 191.678
+412 2017 20540.4 104.43 30272.7 0 198.488
+431 1986 20959.2 110.178 32649.5 0 205.491
+450 1956 20728.5 114.551 33590 0 212.628
+470 1927 20808 119.48 34548.5 0 219.987
+490 1899 20759.9 122.364 35384.4 0 227.324
+512 1870 20857.8 125.463 36333.2 0 235.725
+535 1842 21021.2 126.938 37261.1 0 243.592
+558 1815 20941 126.253 38046.8 0 251.662
+583 1788 21023.5 125.474 38887 0 260.718
+609 1761 20943.2 122.69 39427.6 0 269.328
+636 1735 20911.2 120.087 40276.1 0 278.89
+664 1709 21097.1 118.018 41323 0 288.947
+693 1683 20947.1 114.26 41711.2 0 298.426
+724 1658 21139.9 111.834 42728.6 0 309.017
+756 1633 21335 109.28 43761.2 0 319.792
+790 1608 21380 106.746 44928.5 0 330.339
+825 1584 21406.6 104.646 45861.7 0 341.999
+861 1561 21500.3 103.126 47100.6 0 353.566
+899 1538 21522.8 103.096 49301 0 365.542
+939 1515 22377.6 105.705 54208.6 0 377.923
+981 1492 22782.2 107.874 60460.5 0 390.365
+1024 1470 23244.9 110.868 65142.9 0 403.749
+1069 1448 23810.1 113.433 68148.5 0 417.501
+1117 1426 24212.5 114.783 69781.2 0 431.28
+1166 1405 24817.8 116.216 71929.5 0 446.353
+1218 1384 24459.5 113.966 72980.5 0 460.847
+1272 1363 24821.7 112.646 74659.6 0 475.836
+1328 1343 25053.6 110.388 75959.8 0 492.161
+1387 1322 25338.1 107.56 77461.4 0 509.169
+1448 1303 25255.6 104.6 78751.3 0 526.216
+1512 1283 25399.8 101.551 79957.9 0 542.949
+1579 1264 25730.2 99.7291 81976.3 0 560.576
+1649 1245 26073.9 97.2623 83541.4 0 579.144
+1722 1226 25818.9 94.6725 85035.9 0 598.112
+1798 1208 25772.4 92.3566 86378.3 0 618.179
+1878 1190 25841.2 90.6995 88102.5 0 638.757
+1961 1172 25877.1 89.5548 90428.3 0 659.936
+2048 1155 26218.2 89.1454 93648.5 0 680.831
+2139 1137 26699.2 90.0477 97193.5 0 702.212
+2233 1120 27461.6 92.4193 102446 0.00803571 720.341
+2332 1104 27644.9 93.943 109350 0.15308 662.111
+2435 1087 28017.5 96.4325 121050 0.600736 434.849
+2543 1071 28535 98.0781 130747 0.951447 271.008
+2656 1055 28800.9 97.3991 134312 0.997156 279.2
+2774 1039 29237.7 96.576 137805 1 312.136
+2896 1024 29074.2 93.9304 139758 1 346.182
+3025 1008 29699.4 92.3147 143174 1 384.36
+3158 993 29799.6 89.6491 145531 1 419.677
+3298 978 30068.5 87.4549 148075 1 456.818
+3444 964 30484.4 85.7264 151717 1 495.649
+3597 949 30460.5 83.4532 153677 1 533.564
+3756 935 30585 81.6112 156857 1 574.341
+3922 921 30793.7 80.162 160492 1 616.419
+4096 907 30772.9 78.2418 163456 1 656.826
+4277 894 31340 77.1535 167921 1.00112 698.394
+4467 880 31018.2 75.4325 173356 1.14318 666.156
+4664 867 31005.8 74.4622 186717 1.76471 385.374
+4871 854 31817.3 75.1698 196809 1.99883 319.118
+5087 841 33235.4 76.7095 205134 2 377.776
+5312 829 34945.7 79.0797 214136 2 435.483
+5547 816 36186.3 81.1771 223435 2 494.596
+5793 804 37286.1 82.8629 232603 2 558.544
+6049 792 38685.6 83.2438 241650 2 618.346
+6317 780 39326.9 81.865 248729 2.00256 680.409
+6597 769 39957.1 79.8757 258303 2.18986 646.576
+6889 757 40722.6 78.2784 277152 2.92338 342.273
+7194 746 41337.8 76.371 282743 2.99866 383.227
+7512 735 42042.2 74.5284 288272 3 462.355
+7845 724 42273.5 72.7873 293572 3 548.525
+8192 713 43096.8 71.8402 301919 3 630.376
+8555 702 43334.8 69.8179 307821 3.03846 691.782
+8933 692 44247.1 68.8169 329392 3.8237 386.429
+9329 681 44991.2 67.4327 336658 4 400.095
+9742 671 47073 66.2619 342230 4 503.644
+10173 661 50455.4 66.1164 352327 4 605.796
+10624 651 46066.1 64.1698 360126 4.05376 680.008
+11094 641 41351 63.4372 382602 4.85959 389.19
+11585 632 41963.6 63.1894 391019 5 443.101
+12098 622 42871.4 64.5492 400326 5 566.349
+12634 613 46168 67.8278 423452 5.02936 679.643
+13193 604 47309.6 70.4229 445425 5.87417 391.017
+13777 595 48522.7 71.4536 456461 6 473.82
+14387 586 50718.4 71.1424 469879 6.00171 616.852
+15024 577 51327.6 69.2811 480456 6.41248 559.548
+15689 568 53098.6 68.8102 501968 6.99824 440.653
+16384 560 53766.1 66.5495 508436 7 605.938
+17109 552 54873.2 65.4645 530080 7.45471 541.855
+17867 543 55193.4 63.9268 543341 8 467.497
+18658 535 56538.3 63.0391 562105 8.00935 651.262
+19484 527 57290.3 61.386 586545 8.91841 394.567
+20347 519 57988.4 60.5498 596636 9 565.285
+21247 512 58916 59.6349 622521 9.50586 522.738
+22188 504 57692.5 57.8209 626573 10 515.266
+23170 496 59663.3 57.3443 655657 10.2258 622.663
+24196 489 58253.6 56.2896 671110 11 500.434
+25268 482 59381.7 55.5676 695942 11.3278 588.517
+26386 474 59204.6 54.9447 719070 12 534.479
+27554 467 57972.2 54.1531 734730 12.6617 476.325
+28774 460 60010.9 54.9829 773198 13.0043 608.024
+30048 453 64554.1 57.0272 829038 13.9823 435.804
+31379 447 70970.9 59.2946 878284 14.2461 608.519
+32768 440 77468.2 61.6078 941557 15 575.989
+34219 433 80468.8 60.8948 985875 15.9838 443.889
+35734 427 82697.9 59.8648 1.01541e+06 16.5878 506.941
+37316 420 83438.1 58.2233 1.03898e+06 17.1024 629.224
+38968 414 87579.7 57.7482 1.09184e+06 18.0024 584.804
+40693 408 89970.6 56.7377 1.13164e+06 18.9975 519.456
+42495 402 91032.3 55.6326 1.16757e+06 19.9876 463.828
+44376 396 93752.5 54.7949 1.21124e+06 20.9293 444.538
+46341 390 95941 53.7206 1.24783e+06 21.8564 453.431
+48393 384 96950.5 53.0989 1.29397e+06 22.8594 451.315
+50535 378 99071.4 51.9507 1.32691e+06 23.9101 451.217
+52773 373 100383 51.3192 1.36837e+06 24.9598 476.879
+55109 367 102177 50.65 1.41586e+06 26.0082 521.951
+57549 362 102483 50.1692 1.45547e+06 27.0359 609.356
+60097 356 103483 49.9227 1.49928e+06 28.3202 578.736
+62757 351 103866 49.0747 1.54081e+06 29.8462 462.786
+65536 346 103639 49.0795 1.58216e+06 31.0202 560.795
+68438 340 102738 48.2422 1.63657e+06 32.4941 534.412
+71468 335 101200 48.1525 1.66802e+06 33.9821 520.34
+74632 330 93336.4 50.1686 1.53606e+06 35.1303 617.561
+77936 325 69852.3 52.3978 972000 36.2708 600.874
+81386 320 54209.4 53.2955 564572 38.5906 556.9
+84990 316 56310.1 51.5172 556199 40.0854 592.475
+88752 311 62836 52.2131 652450 41.5145 577
+92682 306 69176.5 51.3893 749059 42.9804 589.425
+96785 302 75165.6 50.6128 845563 44.7649 565.182
+101070 297 80447.8 49.9258 943653 46.835 541.956
+105545 293 86511.9 49.4866 1.04429e+06 49 556.84
+110218 288 92319.4 49.2008 1.15055e+06 51.2535 603.549
+115098 284 96352.1 48.0368 1.25369e+06 53.7817 536.82
+120194 280 99839.3 49.4362 1.35025e+06 56.1821 603.404
+125515 276 103453 47.9497 1.44836e+06 58.9384 547.634
+131072 271 103830 47.3459 1.53649e+06 61.7306 522.07
+136875 267 102903 48.5004 1.63757e+06 64.5581 544.112
+142935 263 95874.5 47.8558 1.56144e+06 67.2471 580.536
+149263 259 68579.2 49.7798 810834 71.3398 560.985
+155872 255 65200 50.3031 630102 75.0824 566.961
+162773 252 75075.4 50.1179 791028 77.8294 558.996
+169979 248 84068.5 49.1486 966956 80.4395 562.694
+177505 244 92082 49.8683 1.13338e+06 83.6148 547.779
+185364 241 99622.4 49.1457 1.29944e+06 87.0913 552.954
+193571 237 102722 47.8445 1.44503e+06 91.0633 559.688
+202141 233 105339 46.8883 1.60715e+06 95.2876 584.906
+211090 230 93669.6 50.546 1.48806e+06 99.6957 594.087
+220436 226 66845.1 50.6191 667739 106.15 588.934
+230195 223 77017.9 49.8475 791610 110.848 572.583
+240387 220 87718.2 49.1932 1.02315e+06 114.745 571.855
+251030 216 99300.9 48.8072 1.26241e+06 119.074 561.546
+262144 213 104380 47.7362 1.46434e+06 123.925 555.803
+273750 210 102000 47.3768 1.6147e+06 129.552 578.224
+285870 207 72386.5 48.7942 808333 137.778 567.271
+298527 204 78676.5 47.9718 813946 143.917 562.088
+311744 201 94313.4 49.0618 1.12708e+06 149.164 562.697
+325546 198 103056 47.8089 1.40624e+06 154.823 563.217
+339959 195 101918 47.6699 1.60165e+06 161.579 563.533
+355010 192 72546.9 48.6573 760464 171.146 581.24
+370728 189 88455 52.5609 975804 178.54 572.651
+387141 186 103382 53.0367 1.34358e+06 184.995 569.489
+404281 183 105497 51.6035 1.61511e+06 192.53 576.623
+422180 181 75348.1 49.1241 772403 203.796 564.608
+440872 178 90101.1 50.4108 1.05038e+06 212.062 570.865
+460391 175 106326 51.2593 1.45656e+06 220.097 582.806
+480774 173 88693.6 53.461 1.21479e+06 231.491 571.399
+502060 170 86000 53.1507 928465 242.241 572.012
+524288 167 104928 52.8466 1.40862e+06 251.251 567.581
+547500 165 89260.6 50.7933 1.18855e+06 263.873 563.012
+571740 162 91648.1 51.6062 1.01088e+06 275.944 569.907
+597053 160 105456 51.2914 1.52562e+06 286.231 575.894
+623487 158 79474.7 50.757 805006 301.449 558.766
+651091 155 100310 48.8136 1.29741e+06 313.419 580.619
+679917 153 88993.5 47.7947 1.1529e+06 328.092 571.039
+710020 151 95231.8 47.4707 1.14548e+06 342.497 573.887
+741455 148 95716.2 47.3328 1.36326e+06 357.243 577.601
+774282 146 96630.1 48.2813 1.12061e+06 373.747 582.767
+808563 144 91722.2 46.7315 1.28259e+06 390.188 554.361
+844361 142 98774.6 47.1296 1.1858e+06 407.549 579.479
+881744 140 84271.4 45.9832 994907 426.693 568.679
+920782 138 104130 47.5387 1.40901e+06 443.768 590.957
+961548 135 83740.7 45.5412 894822 465.763 564.659
+1004120 133 96060.2 46.9694 1.34998e+06 484.925 574.571
+1048576 131 102458 46.9916 1.31711e+06 506.374 600.344
+1095000 129 86666.7 45.6656 930829 530.403 586.016
+1143480 128 85101.6 45.2442 1.06322e+06 554.055 567.797
+1194106 126 102532 47.1191 1.45679e+06 576.96 556.532
+1246974 124 100839 47.298 1.32498e+06 603.177 569.25
+1302182 122 94950.8 46.7291 1.13885e+06 630.803 563.943
+1359835 120 88675 46.2353 985325 659.4 558.85
+1420040 118 85067.8 45.8523 916458 688.915 554.017
+1482910 116 84612.1 46.5319 901845 719.759 579.819
+1548564 115 83869.6 45.6195 905687 751.687 573.217
+1617125 113 86531 46.5189 942965 785.186 575.142
+1688722 111 90846.8 45.7107 1.01425e+06 819.901 571.216
+1763488 110 96063.6 44.7613 1.18597e+06 855.755 565.018
+1841564 108 101380 45.3541 1.37131e+06 893.204 557.565
+1923097 106 94358.5 44.4305 1.2352e+06 933.821 595.443
+2008240 105 86371.4 45.5881 955048 976.152 562.181
+2097152 103 99572.8 45.7643 1.28837e+06 1018.5 543.233
+2190001 102 89196.1 45.5646 1.13859e+06 1064.64 574.961
+2286960 100 95930 46.1082 1.16885e+06 1111.6 562.5
+2388213 99 91383.8 45.3841 1.10649e+06 1161.64 583.091
+2493948 97 100206 44.9902 1.31921e+06 1212.29 546.082
+2604365 96 91781.2 45.2787 1.04554e+06 1267.48 575.156
+2719670 94 87478.7 45.4319 1.04923e+06 1323.67 568.489
+2840080 93 92763.4 46.749 1.20652e+06 1382.46 571.333
+2965821 91 96945.1 49.8238 1.26675e+06 1443.38 595.385
+3097129 90 94944.4 47.8151 1.26537e+06 1507.97 595.367
+3234251 89 92224.7 47.2517 1.18671e+06 1575.26 562.876
+3377443 87 90264.4 47.088 1.04713e+06 1646.01 580.218
+3526975 86 95255.8 48.1014 1.1655e+06 1718.62 574.581
+3683128 85 96576.5 47.2034 1.25373e+06 1794.85 574.165
+3846194 83 92710.8 47.8028 1.08846e+06 1875.45 565.337
+4016479 82 95378 47.0941 1.23201e+06 1958.06 583.134
+4194304 81 97345.7 46.4886 1.24591e+06 2045.14 590.049
+4380002 80 94537.5 46.247 1.1855e+06 2136.03 576.375
+4573921 79 94949.4 46.6133 1.18132e+06 2231.41 579.506
+4776426 77 100052 46.9686 1.23786e+06 2330.38 588.481
+4987896 76 98144.7 46.848 1.24691e+06 2433.84 565.711
+5208729 75 93346.7 46.7353 1.1296e+06 2542.47 561.547
+5439339 74 95067.6 47.509 1.22524e+06 2655.26 568.014
+5680159 73 97178.1 45.9181 1.1631e+06 2773.38 598.151
+5931642 72 93958.3 44.758 1.12617e+06 2896.82 574.014
+6194258 71 92802.8 44.8097 1.13717e+06 3025.77 558.789
+6468501 70 94371.4 44.4499 1.15046e+06 3159.87 558.671
+6754886 69 94318.8 44.1984 1.18719e+06 3300.28 580.058
+7053950 67 94238.8 45.4648 1.14888e+06 3446.88 572.03
+7366255 66 94621.2 45.6998 1.14712e+06 3600.29 572.561
+7692387 65 93661.5 44.7761 1.14728e+06 3759.8 574.477
+8032959 64 95656.2 44.1764 1.19073e+06 3926.77 595.203
+8388608 64 94203.1 43.7826 1.18773e+06 4101.2 558.906
diff --git a/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_short_move.tsv b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_short_move.tsv
new file mode 100644
index 0000000..45cb6d0
--- /dev/null
+++ b/cpp/results/frequent_items_merge_timing_string_lgk10_zipf11_short_move.tsv
@@ -0,0 +1,319 @@
+1 16384 15124.3 48.4619 165.039 0 1
+2 12874 14949.9 43.7316 215.162 0 1.96784
+3 11180 14915.7 39.4753 260.018 0 2.90045
+4 10115 14857.8 38.3836 310.826 0 3.80237
+5 9360 14877.1 35.7051 349.573 0 4.69177
+6 8785 14966.6 33.6559 406.261 0 5.55003
+7 8326 15488 31.7594 827.048 0 6.3865
+8 7948 15681.2 33.4833 1057 0 7.20055
+9 7629 15334.6 30.92 1191.77 0 8.01337
+10 7355 15558.7 31.6791 1293.27 0 8.81917
+11 7115 15576.7 29.8473 1320.31 0 9.6059
+12 6903 15403.2 29.5041 1367.96 0 10.3781
+13 6713 14943.2 28.7273 1543.13 0 11.1202
+14 6542 14695.5 28.8793 1744.88 0 11.9121
+15 6387 15052.9 28.2866 1984.5 0 12.605
+16 6245 14467.6 27.9724 2129.06 0 13.3593
+17 6115 15205.9 29.0029 2322.32 0 14.0275
+18 5995 14601.5 27.282 2376.31 0 14.8075
+19 5883 15230.3 28.1722 2471.53 0 15.4987
+20 5779 15055 27.3231 2577.09 0 16.2144
+21 5682 15017.8 26.8014 2591.17 0 16.9065
+22 5591 15347.3 27.3248 2642.46 0 17.6047
+23 5505 15597.8 26.8768 2959.13 0 18.2621
+24 5424 15596.6 26.7868 2946.35 0 19.045
+25 5347 15315.9 26.6991 2858.24 0 19.6035
+26 5275 15741.8 27.8017 2942.37 0 20.3448
+27 5206 14964.5 26.9418 2979.83 0 20.971
+28 5141 14784.9 26.5026 3071.78 0 21.6401
+29 5078 14785.9 26.0556 3210.71 0 22.2519
+31 4962 14772.5 26.1796 3527.01 0 23.6116
+32 4907 14752.2 26.1807 3668.23 0 24.2134
+33 4855 14719.9 26.4207 3835.63 0 24.8754
+35 4757 14620.1 26.6615 4112.89 0 26.0942
+36 4710 15505.5 27.3649 4442.25 0 26.7798
+38 4623 19399.5 38.5544 5433.92 0 27.9686
+40 4541 17072 29.4814 5105.92 0 29.2063
+41 4502 14902.7 26.7632 4759.44 0 29.9947
+43 4428 15083.1 26.3702 4837.62 0 31.0935
+45 4359 14744.2 27.05 4923.38 0 32.3599
+47 4293 14881.2 26.7234 5016.54 0 33.5404
+49 4231 14719.2 26.833 5155.99 0 34.7157
+52 4145 16215.4 28.4727 5599.76 0 36.4854
+54 4091 15532.9 27.5401 5547.3 0 37.7634
+56 4039 15078 26.9471 5583.56 0 38.977
+59 3967 15552.6 27.4083 5784.47 0 40.6476
+61 3921 15417.5 27.4269 5924.25 0 41.7697
+64 3856 15545.1 27.6233 6186.72 0 43.5358
+67 3795 16285.1 28.2619 6772.86 0 45.1552
+70 3738 15413.9 27.5204 6962.55 0 46.8432
+73 3683 15384.2 27.8176 7402.93 0 48.4784
+76 3632 15474.9 27.4497 7766.24 0 50.182
+79 3584 15224.6 27.8417 8112.44 0 51.8304
+83 3523 15412.1 27.7967 8483.96 0 54.0216
+87 3465 15191.3 28.2331 8791.92 0 56.0499
+91 3412 15167.9 28.0072 8930.83 0 58.3438
+95 3361 16309.7 27.6609 9070.51 0 60.3246
+99 3313 15938.7 28.8396 9421.67 0 62.5047
+103 3268 15019.6 28.4221 9460.22 0 64.5483
+108 3214 15051.6 28.426 9640.63 0 67.1985
+112 3174 15364.5 28.8814 9914.93 0 69.0788
+117 3126 15715 29.0287 10165.1 0 71.7674
+123 3072 15748.7 29.1831 10353.8 0 74.6725
+128 3030 16235 29.3936 10552.1 0 77.1884
+134 2982 15426.6 29.4879 10650.9 0 80.0278
+140 2937 15897.2 29.9455 10989.1 0 83.1825
+146 2894 15441.6 30.2373 11285.1 0 86.0871
+152 2854 15436.6 30.8962 11676.2 0 88.7628
+159 2810 16014.2 31.1354 12578.3 0 92.2456
+166 2768 16431.7 31.7636 13266.6 0 95.5553
+173 2728 16198.7 32.3132 14130.9 0 98.548
+181 2686 15924.1 32.5033 14892.4 0 102.407
+189 2646 15894.6 33.4577 15395.7 0 105.928
+197 2608 16667.2 43.554 16030.7 0 109.67
+206 2568 17644.9 60.5038 16702.5 0 113.63
+215 2530 18398.8 75.472 17229.6 0 117.618
+225 2490 19286.7 91.4128 17865.1 0 122.346
+235 2453 19432.5 97.5878 18291.9 0 126.425
+245 2417 19710.8 102.963 18662.8 0 130.691
+256 2381 19787.9 108.499 19073.5 0 135.343
+267 2346 19841.9 108.986 19393 0 140.258
+279 2310 20085.3 110.894 19980.5 0 145.406
+292 2274 20365 111.774 20582.2 0 150.812
+304 2242 19994.2 108.796 20583 0 155.492
+318 2208 20109.1 107.304 21061.1 0 161.424
+332 2175 20197.7 105.557 21611 0 166.933
+347 2142 20409.9 104.291 22150.8 0 173.183
+362 2110 20310.9 101.486 22675.4 0 178.912
+378 2079 20221.3 98.7883 23952.9 0 185.27
+395 2047 21929.7 107.186 27269.2 0 191.59
+412 2017 20523.5 104.592 28481.9 0 198.243
+431 1986 20662.1 109.742 30506 0 205.403
+450 1956 20637 114.86 31640.6 0 212.536
+470 1927 20684 119.66 32689.7 0 219.987
+490 1899 20742.5 123.193 33429.7 0 227.514
+512 1870 20744.4 126.261 34449.2 0 235.32
+535 1842 20671 126.685 35111.8 0 243.726
+558 1815 20977.4 127.854 36427.5 0 251.888
+583 1788 20582.8 124.78 36563.2 0 260.496
+609 1761 20725.2 123.561 37453.7 0 269.853
+636 1735 20896.3 121.124 38297.4 0 279.361
+664 1709 20818.6 118.291 38897 0 288.884
+693 1683 20865.1 114.908 39623.9 0 298.418
+724 1658 20919.8 111.823 40171.3 0 308.466
+756 1633 20965.7 109.135 41039.8 0 319.805
+790 1608 20921.6 106.014 41645.5 0 330.394
+825 1584 21025.9 104.167 42755.1 0 341.819
+861 1561 21177.5 103.434 44041.6 0 352.787
+899 1538 21704.8 104.473 46445.4 0 365.233
+939 1515 21866 105.544 50825.7 0 377.548
+981 1492 22791.6 108.724 57060.3 0 390.46
+1024 1470 22906.1 110.843 61425.2 0 403.886
+1069 1448 23589.1 114.13 64447.5 0 417.602
+1117 1426 23599.6 115.246 66122.7 0 431.403
+1166 1405 23896.1 115.707 67607.1 0 446.186
+1218 1384 24184.2 114.305 69035.4 0 460.871
+1272 1363 24468.8 113.267 70593.5 0 476.323
+1328 1343 24827.3 110.768 72027.6 0 492.463
+1387 1322 25039.3 108.199 73368.4 0 508.458
+1448 1303 24989.3 104.768 74402.9 0 525.665
+1512 1283 25240.8 102.348 75850.4 0 543.544
+1579 1264 25352.1 99.6019 76949.4 0 561.782
+1649 1245 25380.7 96.8746 78340.6 0 578.479
+1722 1226 25613.4 94.9994 80059.5 0 598.983
+1798 1208 25596.9 92.7447 81553.8 0 618.656
+1878 1190 25731.9 90.8838 82868.1 0 638.414
+1961 1172 25710.8 89.5147 84732.1 0 659.485
+2048 1155 25927.3 88.8194 86806.1 0 681.323
+2139 1137 26358 89.8812 91047.5 0 703.857
+2233 1120 26836.6 91.9643 95941.1 0.0178571 715.935
+2332 1104 27592.4 94.751 104001 0.178442 648.935
+2435 1087 27920 97.391 116024 0.624655 422.787
+2543 1071 28407.1 97.5678 123391 0.94211 275.315
+2656 1055 28565.9 97.378 127535 1 276.67
+2774 1039 28956.7 96.0667 130217 1 313.33
+2896 1024 29117.2 94.0204 132895 1 346.962
+3025 1008 29255 91.5745 134733 1 383.296
+3158 993 29984.9 89.9555 138352 1 420.041
+3298 978 29878.3 87.7464 140492 1 457.507
+3444 964 30052.9 85.6396 142479 1 493.872
+3597 949 30304.5 83.4198 145255 1 534.506
+3756 935 30461 81.5015 147596 1 574.222
+3922 921 30710.1 79.9242 150515 1 615.466
+4096 907 30695.7 78.2004 153505 1 656.63
+4277 894 30825.5 76.8564 156979 1.00447 694.893
+4467 880 30951.1 75.5042 162993 1.14205 666.022
+4664 867 31149.9 74.8626 176889 1.78201 375.874
+4871 854 31867.7 74.8713 184809 1.99649 320.636
+5087 841 33014.3 76.3752 192646 2 377.943
+5312 829 34513.9 79.1455 202639 2 434.168
+5547 816 35529.4 81.3682 211607 2 496.571
+5793 804 36722.6 82.7135 219927 2 557.526
+6049 792 37895.2 82.1797 226124 2 618.239
+6317 780 38553.8 81.4495 235417 2.00128 680.508
+6597 769 39734.7 79.8507 246187 2.20806 636.189
+6889 757 40624.8 78.1895 263376 2.92734 341.305
+7194 746 40982.6 75.828 267349 3 384.05
+7512 735 41946.9 74.4097 273118 3 467.288
+7845 724 42400.6 72.7141 277615 3 546.82
+8192 713 42949.5 71.0833 283509 3 629.143
+8555 702 43703.7 70.0998 292815 3.04416 689.456
+8933 692 44173.4 68.1355 308847 3.79046 400.642
+9329 681 44732.7 67.0012 314934 3.99853 398.869
+9742 671 45620 66.0716 321835 4 502.68
+10173 661 47121 64.8891 328147 4 605.847
+10624 651 48428.6 63.9408 335790 4.04762 684.063
+11094 641 44237.1 63.1316 358743 4.86895 385.452
+11585 632 42125 62.917 367886 5 447.277
+12098 622 43064.3 64.1234 376984 5 569.502
+12634 613 44942.9 67.2876 393825 5.02284 683.135
+13193 604 47160.6 70.0105 420935 5.87748 388.119
+13777 595 48865.5 70.7792 434202 6 478.511
+14387 586 50015.4 70.6547 442474 6 618.788
+15024 577 51443.7 69.2553 458908 6.46274 537.523
+15689 568 51857.4 67.8123 468803 6.99824 437.354
+16384 560 53269.6 66.3868 476875 7 606.511
+17109 552 54094.2 64.7374 493888 7.49638 527.424
+17867 543 55289.1 63.4324 511116 7.99816 462.418
+18658 535 55786.9 62.3621 522503 8.00561 648.536
+19484 527 56963.9 60.9693 544397 8.9203 392.915
+20347 519 58215.8 60.4589 561270 9 567.89
+21247 512 58570.3 58.8434 573789 9.49219 529.781
+22188 504 59234.1 57.8816 592758 10 515.069
+23170 496 59082.7 56.7 603998 10.2843 598.978
+24196 489 58842.5 55.9194 624415 10.998 501.544
+25268 482 58867.2 55.3944 644840 11.2925 597.637
+26386 474 58542.2 54.94 661536 12 532.918
+27554 467 58888.7 53.9523 686099 12.7002 462.403
+28774 460 59923.9 54.1451 710163 13.0065 606.78
+30048 453 64125.8 55.9869 763137 13.9691 438.623
+31379 447 71022.4 58.6146 821935 14.2438 612.678
+32768 440 76270.5 60.8718 882436 15.0023 578.427
+34219 433 79219.4 60.1528 920192 15.9931 441.695
+35734 427 80955.5 58.5041 949112 16.6253 490.012
+37316 420 83797.6 57.9786 979950 17.0905 632.626
+38968 414 85082.1 56.2812 1.01838e+06 18.0072 591.536
+40693 408 87985.3 55.4894 1.05913e+06 18.9926 513.132
+42495 402 90313.4 55.0727 1.0965e+06 19.9726 465.604
+44376 396 92176.8 53.3503 1.12786e+06 20.9116 454.253
+46341 390 96261.5 52.6431 1.16884e+06 21.8692 454.167
+48393 384 96661.5 51.378 1.20131e+06 22.8802 446.862
+50535 378 98127 50.9817 1.23542e+06 23.8942 461.899
+52773 373 99992 50.401 1.27839e+06 24.9732 470.421
+55109 367 101297 49.7365 1.30451e+06 25.9973 536.88
+57549 362 102461 48.9688 1.34389e+06 27.0387 595.235
+60097 356 104138 48.9084 1.38892e+06 28.3371 575.242
+62757 351 104533 48.014 1.4237e+06 29.8575 460.84
+65536 346 102832 47.1278 1.45281e+06 31.026 549.798
+68438 340 102912 47.0824 1.51059e+06 32.4529 545.968
+71468 335 101140 47.4049 1.54402e+06 33.997 518.51
+74632 330 93524.2 47.7289 1.41586e+06 35.1182 619.612
+77936 325 69267.7 50.4413 918086 36.2585 586.665
+81386 320 53156.2 52.2922 537275 38.5344 567.862
+84990 316 53699.4 50.4845 532051 40.0949 600.022
+88752 311 61086.8 49.9283 624814 41.4598 599.257
+92682 306 67339.9 49.9826 712261 43.0425 588.549
+96785 302 73576.2 49.2169 812305 44.8146 556.536
+101070 297 79532 47.9683 904912 46.8721 536.236
+105545 293 85542.7 47.4968 996198 49.0171 567.362
+110218 288 90781.2 47.0239 1.08583e+06 51.2674 590.556
+115098 284 96552.8 46.3152 1.17764e+06 53.8169 533.806
+120194 280 100061 47.0014 1.27042e+06 56.1893 591.818
+125515 276 103862 46.6566 1.35522e+06 58.9674 531.188
+131072 271 104542 47.0039 1.43909e+06 61.6937 550.83
+136875 267 103858 45.6807 1.53057e+06 64.5393 546.049
+142935 263 95635 46.2657 1.45303e+06 67.2624 585.494
+149263 259 65725.9 48.6056 745880 71.4981 568.475
+155872 255 62160.8 47.7015 603616 75.0745 559.557
+162773 252 73246 48.4329 761897 77.7976 557.183
+169979 248 81883.1 47.146 914254 80.4194 568.395
+177505 244 92086.1 47.7767 1.08151e+06 83.5492 561.426
+185364 241 98485.5 45.6565 1.21495e+06 87.0954 556.967
+193571 237 102595 46.2971 1.34769e+06 91.038 576.654
+202141 233 104751 46.1447 1.48394e+06 95.3176 560.966
+211090 230 94243.5 47.2828 1.39483e+06 99.7348 581.713
+220436 226 65199.1 48.0642 647500 106.296 565.969
+230195 223 74188.3 47.4579 756596 110.839 572.04
+240387 220 86836.4 48.3926 974014 114.686 557.927
+251030 216 97463 47.7293 1.18565e+06 119.074 558.273
+262144 213 103516 46.6337 1.3707e+06 123.925 575.606
+273750 210 102300 48.163 1.50503e+06 129.586 576.319
+285870 207 70850.2 47.8883 756942 137.923 549.952
+298527 204 77455.9 47.776 784029 143.912 571.319
+311744 201 92766.2 47.0288 1.06597e+06 149.159 556.746
+325546 198 103071 46.9463 1.32277e+06 154.793 565.747
+339959 195 102062 45.2636 1.49437e+06 161.513 559.908
+355010 192 70578.1 47.6649 708167 171.318 560.906
+370728 189 85005.3 47.3877 904365 178.487 568.513
+387141 186 101113 46.042 1.22786e+06 185.086 565.817
+404281 183 103732 45.8031 1.46702e+06 192.59 549.683
+422180 181 72105 46.8106 718000 203.873 559.53
+440872 178 89342.7 46.4985 981674 212.163 575.691
+460391 175 104269 45.6456 1.35159e+06 220.166 555.84
+480774 173 86843.9 45.6478 1.13562e+06 231.301 587.832
+502060 170 83482.4 47.4602 872365 242.306 563.965
+524288 167 103551 44.4907 1.30312e+06 251.281 580.449
+547500 165 85436.4 47.1902 1.08248e+06 264.133 562.758
+571740 162 88821 45.091 946840 275.796 574.389
+597053 160 104119 44.0681 1.40143e+06 286.144 581.712
+623487 158 77348.1 47.5045 769627 301.494 561.576
+651091 155 100574 45.4647 1.2064e+06 313.265 585.697
+679917 153 87411.8 44.5493 1.08771e+06 328.124 573.131
+710020 151 95112.6 44.8286 1.06152e+06 342.503 567.894
+741455 148 94783.8 46.1964 1.26822e+06 357.338 569
+774282 146 93938.4 44.2002 1.04364e+06 373.795 558.87
+808563 144 93173.6 43.8941 1.22922e+06 390.125 559.132
+844361 142 98197.2 45.2587 1.13047e+06 407.803 570.324
+881744 140 83814.3 45.1048 936971 426.686 561.764
+920782 138 102594 44.703 1.30709e+06 444.087 562.319
+961548 135 83563 45.4488 855600 465.741 560.304
+1004120 133 95834.6 43.4691 1.24742e+06 485.135 577.94
+1048576 131 101366 44.1719 1.24118e+06 506.489 573.397
+1095000 129 85976.7 45.9107 886504 530.434 568.798
+1143480 128 85257.8 43.5776 978648 553.891 566.578
+1194106 126 103127 45.3294 1.36788e+06 577.222 557.095
+1246974 124 101774 44.9692 1.26409e+06 603.185 564.185
+1302182 122 94926.2 44.6825 1.07307e+06 630.754 586.705
+1359835 120 89400 43.8583 925692 659.383 568.05
+1420040 118 84355.9 44.3584 864492 688.975 565.466
+1482910 116 82689.7 45.6386 868681 719.733 580.655
+1548564 115 82878.3 43.1488 865696 751.704 573.635
+1617125 113 87212.4 45.7109 914752 785.239 554.336
+1688722 111 89225.2 44.7863 959324 820.072 563.964
+1763488 110 96736.4 44.1459 1.11785e+06 855.682 573.227
+1841564 108 102056 44.4192 1.28823e+06 893.352 557.917
+1923097 106 92924.5 44.2086 1.16892e+06 933.613 584.623
+2008240 105 86038.1 44.4033 908286 976.438 565.171
+2097152 103 98417.5 44.2892 1.20884e+06 1018.53 586.01
+2190001 102 89852.9 42.6507 1.07083e+06 1064.75 562.314
+2286960 100 95460 43.752 1.10183e+06 1111.63 583.26
+2388213 99 88444.4 43.2322 1.03411e+06 1161.55 565.091
+2493948 97 100206 42.8939 1.23572e+06 1212.67 578.196
+2604365 96 91937.5 43.1577 995750 1267.52 576.688
+2719670 94 87531.9 42.4807 983904 1323.81 581.33
+2840080 93 94053.8 43.8607 1.13942e+06 1382.16 576.376
+2965821 91 95989 43.8694 1.18922e+06 1443.86 556.956
+3097129 90 98155.6 43.8923 1.19596e+06 1508.06 550.356
+3234251 89 91528.1 44.2537 1.10853e+06 1575.31 570.742
+3377443 87 91770.1 45.9663 1.00266e+06 1645.93 562.046
+3526975 86 96395.3 45.2286 1.11976e+06 1718.94 574.814
+3683128 85 94670.6 42.0166 1.17532e+06 1794.98 551.6
+3846194 83 96698.8 45.3045 1.0503e+06 1875.17 576.735
+4016479 82 92975.6 44.3606 1.11365e+06 1958.82 555.61
+4194304 81 97123.5 44.0999 1.17995e+06 2045.23 572.753
+4380002 80 96362.5 46.4486 1.143e+06 2136.4 575.862
+4573921 79 97291.1 44.1858 1.12016e+06 2231.44 566.405
+4776426 77 98142.9 44.4767 1.15795e+06 2330.58 563.026
+4987896 76 96565.8 44.2459 1.17807e+06 2434.24 555.171
+5208729 75 93160 45.3355 1.06285e+06 2542.8 589.373
+5439339 74 96486.5 44.3617 1.1693e+06 2655.58 570.149
+5680159 73 94465.8 44.6944 1.10071e+06 2773.41 582.63
+5931642 72 92402.8 44.6007 1.06297e+06 2897.5 590.806
+6194258 71 93014.1 44.7498 1.07369e+06 3026.07 551.465
+6468501 70 95071.4 45.1187 1.13521e+06 3160.29 547.7
+6754886 69 94565.2 44.4122 1.12191e+06 3300.57 573.768
+7053950 67 96268.7 44.3835 1.12243e+06 3447.21 595.955
+7366255 66 94697 45.5218 1.08126e+06 3600.71 569.5
+7692387 65 95215.4 44.2951 1.10966e+06 3759.97 572.169
+8032959 64 95171.9 44.8602 1.11152e+06 3927.73 567.766
+8388608 64 94093.8 45.5677 1.10409e+06 4101.72 556.062
diff --git a/cpp/src/frequent_items_merge_timing_profile.cpp b/cpp/src/frequent_items_merge_timing_profile.cpp
new file mode 100644
index 0000000..4a3b8ef
--- /dev/null
+++ b/cpp/src/frequent_items_merge_timing_profile.cpp
@@ -0,0 +1,115 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#include <iostream>
+#include <algorithm>
+#include <random>
+#include <chrono>
+#include <sstream>
+
+#include <frequent_items_sketch.hpp>
+
+#include "frequent_items_merge_timing_profile.hpp"
+#include "zipf_distribution.hpp"
+
+namespace datasketches {
+
+void frequent_items_merge_timing_profile::run() {
+ const unsigned lg_min_stream_len = 0;
+ const unsigned lg_max_stream_len = 23;
+ const unsigned ppo = 16;
+
+ const unsigned lg_max_trials = 14;
+ const unsigned lg_min_trials = 4;
+
+ const unsigned lg_max_sketch_size = 10;
+
+ const unsigned zipf_lg_range = 13; // range: 8K values for 1K sketch
+ const double zipf_exponent = 1.1;
+ zipf_distribution zipf(1 << zipf_lg_range, zipf_exponent);
+ const unsigned long long high_bit = 1ULL << 63;
+
+ const size_t num_sketches = 32;
+
+ size_t max_len = 1 << lg_max_stream_len;
+ std::vector<std::string> values(max_len);
+ std::unique_ptr<frequent_items_sketch<std::string>> sketches[num_sketches];
+
+ std::cout << "StreamLen\tTrials\tBuild\tUpdate\tMerge\tMaxErr\tNumItems" << std::endl;
+
+ size_t stream_length = 1 << lg_min_stream_len;
+ while (stream_length <= 1 << lg_max_stream_len) {
+ std::chrono::nanoseconds build_time_ns(0);
+ std::chrono::nanoseconds update_time_ns(0);
+ std::chrono::nanoseconds merge_time_ns(0);
+ unsigned num_items = 0;
+ unsigned max_error = 0;
+
+ const size_t num_trials = get_num_trials(stream_length, lg_min_stream_len, lg_max_stream_len, lg_min_trials, lg_max_trials);
+
+ for (size_t t = 0; t < num_trials; t++) {
+ const auto start_build(std::chrono::high_resolution_clock::now());
+ for (size_t i = 0; i < num_sketches; i++) {
+ sketches[i] = std::unique_ptr<frequent_items_sketch<std::string>>(new frequent_items_sketch<std::string>(lg_max_sketch_size));
+ }
+ frequent_items_sketch<std::string> merge_sketch(lg_max_sketch_size);
+ const auto finish_build(std::chrono::high_resolution_clock::now());
+ build_time_ns += std::chrono::duration_cast<std::chrono::nanoseconds>(finish_build - start_build);
+
+ // prepare values to exclude cost from the update loop
+ // set the highest bit in 64-bit value to make strings longer so we can compare copying and moving better
+ for (size_t i = 0; i < stream_length; i++) values[i] = std::to_string(zipf.sample() | high_bit);
+
+ // spray input evenly across all sketches to be merged
+ const auto start_update(std::chrono::high_resolution_clock::now());
+ size_t i = 0;
+ for (size_t j = 0; j < stream_length; j++) {
+ sketches[i]->update(values[j]);
+ i++;
+ if (i == num_sketches) i = 0;
+ }
+ const auto finish_update(std::chrono::high_resolution_clock::now());
+ update_time_ns += std::chrono::duration_cast<std::chrono::nanoseconds>(finish_update - start_update);
+
+ const auto start_merge(std::chrono::high_resolution_clock::now());
+ for (size_t i = 0; i < num_sketches; i++) {
+ //merge_sketch.merge(*sketches[i]);
+ merge_sketch.merge(std::move(*sketches[i]));
+ }
+ const auto finish_merge(std::chrono::high_resolution_clock::now());
+ merge_time_ns += std::chrono::duration_cast<std::chrono::nanoseconds>(finish_merge - start_merge);
+
+ num_items += merge_sketch.get_num_active_items();
+ max_error += merge_sketch.get_maximum_error();
+ }
+
+ std::cout << stream_length << "\t"
+ << num_trials << "\t"
+ << (double) build_time_ns.count() / num_trials << "\t"
+ << (double) update_time_ns.count() / num_trials / stream_length << "\t"
+ << (double) merge_time_ns.count() / num_trials << "\t"
+ << (double) max_error / num_trials << "\t"
+ << (double) num_items / num_trials
+ << std::endl;
+
+ stream_length = pwr_2_law_next(ppo, stream_length);
+ }
+}
+
+}
diff --git a/cpp/src/frequent_items_merge_timing_profile.hpp b/cpp/src/frequent_items_merge_timing_profile.hpp
new file mode 100644
index 0000000..e8f9cdb
--- /dev/null
+++ b/cpp/src/frequent_items_merge_timing_profile.hpp
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#ifndef FREQUENT_ITEMS_MERGE_TIMING_PROFILE_HPP_
+#define FREQUENT_ITEMS_MERGE_TIMING_PROFILE_HPP_
+
+#include "job_profile.hpp"
+
+namespace datasketches {
+
+class frequent_items_merge_timing_profile: public job_profile {
+public:
+ void run();
+};
+
+}
+
+#endif
diff --git a/cpp/src/main.cpp b/cpp/src/main.cpp
index 3879073..43d5b0d 100644
--- a/cpp/src/main.cpp
+++ b/cpp/src/main.cpp
@@ -34,6 +34,7 @@
#include "kll_merge_timing_profile.hpp"
#include "frequent_items_sketch_timing_profile.hpp"
+#include "frequent_items_merge_timing_profile.hpp"
#include "kll_sketch_accuracy_profile.hpp"
#include "kll_merge_accuracy_profile.hpp"
@@ -69,6 +70,7 @@ int main(int argc, char **argv) {
job_profile::add("kll-merge-timing-float", job_profile_ptr(new kll_merge_timing_profile<float>()));
job_profile::add("kll-merge-timing-string", job_profile_ptr(new kll_merge_timing_profile<std::string>()));
job_profile::add("fi-sketch-timing", job_profile_ptr(new frequent_items_sketch_timing_profile()));
+ job_profile::add("fi-merge-timing", job_profile_ptr(new frequent_items_merge_timing_profile()));
job_profile::add("cpc-sketch-accuracy", job_profile_ptr(new cpc_sketch_accuracy_profile()));
job_profile::add("cpc-union-accuracy", job_profile_ptr(new cpc_union_accuracy_profile()));
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org