pushing 400000 elements of size 40 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 106240 microseconds WITH EXISTING split_off(), called flush 100 times 105617 microseconds replaced with `with_capacity()`, called flush 100 times 109207 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 80 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 237254 microseconds WITH EXISTING split_off(), called flush 100 times 212168 microseconds replaced with `with_capacity()`, called flush 100 times 236253 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 160 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 539032 microseconds WITH EXISTING split_off(), called flush 100 times 442323 microseconds replaced with `with_capacity()`, called flush 100 times 539675 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 200000 elements of size 10 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 52801 microseconds WITH EXISTING split_off(), called flush 100 times 51979 microseconds replaced with `with_capacity()`, called flush 100 times 50514 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 20 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 105680 microseconds WITH EXISTING split_off(), called flush 100 times 105430 microseconds replaced with `with_capacity()`, called flush 100 times 105804 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 40 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 211094 microseconds WITH EXISTING split_off(), called flush 100 times 211003 microseconds replaced with `with_capacity()`, called flush 100 times 211165 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 80 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 452722 microseconds WITH EXISTING split_off(), called flush 100 times 426030 microseconds replaced with `with_capacity()`, called flush 100 times 481256 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 3200000 elements of size 160 bytes into a Vec buffer flushed at max 32000 elements -------------------------------------------------------------------- 1086303 microseconds WITH EXISTING split_off(), called flush 100 times 884816 microseconds replaced with `with_capacity()`, called flush 100 times 1088261 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 200000 elements of size 10 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 53034 microseconds WITH EXISTING split_off(), called flush 200 times 51624 microseconds replaced with `with_capacity()`, called flush 200 times 53622 microseconds replaced with `new()`, called flush 200 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 20 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 105512 microseconds WITH EXISTING split_off(), called flush 200 times 103873 microseconds replaced with `with_capacity()`, called flush 200 times 100984 microseconds replaced with `new()`, called flush 200 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 40 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 211134 microseconds WITH EXISTING split_off(), called flush 200 times 211001 microseconds replaced with `with_capacity()`, called flush 200 times 211635 microseconds replaced with `new()`, called flush 200 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 80 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 425261 microseconds WITH EXISTING split_off(), called flush 200 times 424067 microseconds replaced with `with_capacity()`, called flush 200 times 425096 microseconds replaced with `new()`, called flush 200 times ========================== BENCHMARK TEST ========================== pushing 3200000 elements of size 160 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 980616 microseconds WITH EXISTING split_off(), called flush 200 times 882808 microseconds replaced with `with_capacity()`, called flush 200 times 1079028 microseconds replaced with `new()`, called flush 200 times ========================== BENCHMARK TEST ========================== pushing 100000 elements of size 20 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 26522 microseconds WITH EXISTING split_off(), called flush 100 times 25824 microseconds replaced with `with_capacity()`, called flush 100 times 26784 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 200000 elements of size 40 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 52801 microseconds WITH EXISTING split_off(), called flush 100 times 51986 microseconds replaced with `with_capacity()`, called flush 100 times 50563 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 80 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 106157 microseconds WITH EXISTING split_off(), called flush 100 times 105936 microseconds replaced with `with_capacity()`, called flush 100 times 106768 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 160 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 223250 microseconds WITH EXISTING split_off(), called flush 100 times 221066 microseconds replaced with `with_capacity()`, called flush 100 times 265623 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 320 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 566210 microseconds WITH EXISTING split_off(), called flush 100 times 466242 microseconds replaced with `with_capacity()`, called flush 100 times 645183 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 300000 elements of size 10 bytes into a Vec buffer flushed at max 3000 elements -------------------------------------------------------------------- 79326 microseconds WITH EXISTING split_off(), called flush 100 times 79140 microseconds replaced with `with_capacity()`, called flush 100 times 79500 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 600000 elements of size 20 bytes into a Vec buffer flushed at max 6000 elements -------------------------------------------------------------------- 158496 microseconds WITH EXISTING split_off(), called flush 100 times 158173 microseconds replaced with `with_capacity()`, called flush 100 times 158524 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1200000 elements of size 40 bytes into a Vec buffer flushed at max 12000 elements -------------------------------------------------------------------- 317770 microseconds WITH EXISTING split_off(), called flush 100 times 316395 microseconds replaced with `with_capacity()`, called flush 100 times 317361 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 2400000 elements of size 80 bytes into a Vec buffer flushed at max 24000 elements -------------------------------------------------------------------- 642190 microseconds WITH EXISTING split_off(), called flush 100 times 646318 microseconds replaced with `with_capacity()`, called flush 100 times 728202 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 4800000 elements of size 160 bytes into a Vec buffer flushed at max 48000 elements -------------------------------------------------------------------- 1638622 microseconds WITH EXISTING split_off(), called flush 100 times 1327689 microseconds replaced with `with_capacity()`, called flush 100 times 1637071 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 300000 elements of size 10 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 79508 microseconds WITH EXISTING split_off(), called flush 300 times 77431 microseconds replaced with `with_capacity()`, called flush 300 times 80389 microseconds replaced with `new()`, called flush 300 times ========================== BENCHMARK TEST ========================== pushing 600000 elements of size 20 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 150893 microseconds WITH EXISTING split_off(), called flush 300 times 150511 microseconds replaced with `with_capacity()`, called flush 300 times 151435 microseconds replaced with `new()`, called flush 300 times ========================== BENCHMARK TEST ========================== pushing 1200000 elements of size 40 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 316729 microseconds WITH EXISTING split_off(), called flush 300 times 316451 microseconds replaced with `with_capacity()`, called flush 300 times 317448 microseconds replaced with `new()`, called flush 300 times ========================== BENCHMARK TEST ========================== pushing 2400000 elements of size 80 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 637372 microseconds WITH EXISTING split_off(), called flush 300 times 635960 microseconds replaced with `with_capacity()`, called flush 300 times 637657 microseconds replaced with `new()`, called flush 300 times ========================== BENCHMARK TEST ========================== pushing 4800000 elements of size 160 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 1333011 microseconds WITH EXISTING split_off(), called flush 300 times 1325036 microseconds replaced with `with_capacity()`, called flush 300 times 1616975 microseconds replaced with `new()`, called flush 300 times ========================== BENCHMARK TEST ========================== pushing 100000 elements of size 30 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 26542 microseconds WITH EXISTING split_off(), called flush 100 times 25767 microseconds replaced with `with_capacity()`, called flush 100 times 25386 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 200000 elements of size 60 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 52830 microseconds WITH EXISTING split_off(), called flush 100 times 50276 microseconds replaced with `with_capacity()`, called flush 100 times 50544 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 120 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 106130 microseconds WITH EXISTING split_off(), called flush 100 times 105938 microseconds replaced with `with_capacity()`, called flush 100 times 106287 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 240 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 228276 microseconds WITH EXISTING split_off(), called flush 100 times 226488 microseconds replaced with `with_capacity()`, called flush 100 times 229080 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 480 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 594456 microseconds WITH EXISTING split_off(), called flush 100 times 468011 microseconds replaced with `with_capacity()`, called flush 100 times 703854 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 10 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 105706 microseconds WITH EXISTING split_off(), called flush 100 times 105477 microseconds replaced with `with_capacity()`, called flush 100 times 106222 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 20 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 211356 microseconds WITH EXISTING split_off(), called flush 100 times 210872 microseconds replaced with `with_capacity()`, called flush 100 times 211769 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 40 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 423595 microseconds WITH EXISTING split_off(), called flush 100 times 422191 microseconds replaced with `with_capacity()`, called flush 100 times 423344 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 3200000 elements of size 80 bytes into a Vec buffer flushed at max 32000 elements -------------------------------------------------------------------- 855388 microseconds WITH EXISTING split_off(), called flush 100 times 851623 microseconds replaced with `with_capacity()`, called flush 100 times 970142 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 6400000 elements of size 160 bytes into a Vec buffer flushed at max 64000 elements -------------------------------------------------------------------- 1986741 microseconds WITH EXISTING split_off(), called flush 100 times 1769598 microseconds replaced with `with_capacity()`, called flush 100 times 2167315 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 10 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 100823 microseconds WITH EXISTING split_off(), called flush 400 times 100656 microseconds replaced with `with_capacity()`, called flush 400 times 106228 microseconds replaced with `new()`, called flush 400 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 20 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 211983 microseconds WITH EXISTING split_off(), called flush 400 times 206338 microseconds replaced with `with_capacity()`, called flush 400 times 210934 microseconds replaced with `new()`, called flush 400 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 40 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 423302 microseconds WITH EXISTING split_off(), called flush 400 times 422860 microseconds replaced with `with_capacity()`, called flush 400 times 425214 microseconds replaced with `new()`, called flush 400 times ========================== BENCHMARK TEST ========================== pushing 3200000 elements of size 80 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 851118 microseconds WITH EXISTING split_off(), called flush 400 times 847846 microseconds replaced with `with_capacity()`, called flush 400 times 851985 microseconds replaced with `new()`, called flush 400 times ========================== BENCHMARK TEST ========================== pushing 6400000 elements of size 160 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 1776684 microseconds WITH EXISTING split_off(), called flush 400 times 1761545 microseconds replaced with `with_capacity()`, called flush 400 times 1774948 microseconds replaced with `new()`, called flush 400 times ========================== BENCHMARK TEST ========================== pushing 100000 elements of size 40 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 25205 microseconds WITH EXISTING split_off(), called flush 100 times 25192 microseconds replaced with `with_capacity()`, called flush 100 times 26742 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 200000 elements of size 80 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 53220 microseconds WITH EXISTING split_off(), called flush 100 times 50491 microseconds replaced with `with_capacity()`, called flush 100 times 50770 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 160 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 108547 microseconds WITH EXISTING split_off(), called flush 100 times 108158 microseconds replaced with `with_capacity()`, called flush 100 times 108685 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 320 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 232152 microseconds WITH EXISTING split_off(), called flush 100 times 230626 microseconds replaced with `with_capacity()`, called flush 100 times 232422 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 640 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 633325 microseconds WITH EXISTING split_off(), called flush 100 times 472261 microseconds replaced with `with_capacity()`, called flush 100 times 778994 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 500000 elements of size 10 bytes into a Vec buffer flushed at max 5000 elements -------------------------------------------------------------------- 132217 microseconds WITH EXISTING split_off(), called flush 100 times 131898 microseconds replaced with `with_capacity()`, called flush 100 times 132875 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1000000 elements of size 20 bytes into a Vec buffer flushed at max 10000 elements -------------------------------------------------------------------- 264291 microseconds WITH EXISTING split_off(), called flush 100 times 263653 microseconds replaced with `with_capacity()`, called flush 100 times 265288 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 2000000 elements of size 40 bytes into a Vec buffer flushed at max 20000 elements -------------------------------------------------------------------- 530785 microseconds WITH EXISTING split_off(), called flush 100 times 528027 microseconds replaced with `with_capacity()`, called flush 100 times 530578 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 4000000 elements of size 80 bytes into a Vec buffer flushed at max 40000 elements -------------------------------------------------------------------- 1072028 microseconds WITH EXISTING split_off(), called flush 100 times 1064998 microseconds replaced with `with_capacity()`, called flush 100 times 1200589 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 8000000 elements of size 160 bytes into a Vec buffer flushed at max 80000 elements -------------------------------------------------------------------- 2765129 microseconds WITH EXISTING split_off(), called flush 100 times 2218019 microseconds replaced with `with_capacity()`, called flush 100 times 2745457 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 500000 elements of size 10 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 125966 microseconds WITH EXISTING split_off(), called flush 500 times 125703 microseconds replaced with `with_capacity()`, called flush 500 times 132965 microseconds replaced with `new()`, called flush 500 times ========================== BENCHMARK TEST ========================== pushing 1000000 elements of size 20 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 267286 microseconds WITH EXISTING split_off(), called flush 500 times 258752 microseconds replaced with `with_capacity()`, called flush 500 times 263689 microseconds replaced with `new()`, called flush 500 times ========================== BENCHMARK TEST ========================== pushing 2000000 elements of size 40 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 529435 microseconds WITH EXISTING split_off(), called flush 500 times 528217 microseconds replaced with `with_capacity()`, called flush 500 times 531432 microseconds replaced with `new()`, called flush 500 times ========================== BENCHMARK TEST ========================== pushing 4000000 elements of size 80 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 1063832 microseconds WITH EXISTING split_off(), called flush 500 times 1060209 microseconds replaced with `with_capacity()`, called flush 500 times 1065488 microseconds replaced with `new()`, called flush 500 times ========================== BENCHMARK TEST ========================== pushing 8000000 elements of size 160 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 2218805 microseconds WITH EXISTING split_off(), called flush 500 times 2202301 microseconds replaced with `with_capacity()`, called flush 500 times 2219654 microseconds replaced with `new()`, called flush 500 times ========================== BENCHMARK TEST ========================== pushing 100000 elements of size 50 bytes into a Vec buffer flushed at max 1000 elements -------------------------------------------------------------------- 25197 microseconds WITH EXISTING split_off(), called flush 100 times 25150 microseconds replaced with `with_capacity()`, called flush 100 times 25440 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 200000 elements of size 100 bytes into a Vec buffer flushed at max 2000 elements -------------------------------------------------------------------- 53212 microseconds WITH EXISTING split_off(), called flush 100 times 51870 microseconds replaced with `with_capacity()`, called flush 100 times 52306 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 400000 elements of size 200 bytes into a Vec buffer flushed at max 4000 elements -------------------------------------------------------------------- 110014 microseconds WITH EXISTING split_off(), called flush 100 times 109366 microseconds replaced with `with_capacity()`, called flush 100 times 110032 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 800000 elements of size 400 bytes into a Vec buffer flushed at max 8000 elements -------------------------------------------------------------------- 231156 microseconds WITH EXISTING split_off(), called flush 100 times 229330 microseconds replaced with `with_capacity()`, called flush 100 times 231040 microseconds replaced with `new()`, called flush 100 times ========================== BENCHMARK TEST ========================== pushing 1600000 elements of size 800 bytes into a Vec buffer flushed at max 16000 elements -------------------------------------------------------------------- 688955 microseconds WITH EXISTING split_off(), called flush 100 times 490099 microseconds replaced with `with_capacity()`, called flush 100 times 870521 microseconds replaced with `new()`, called flush 100 times