Skip to content

Instantly share code, notes, and snippets.

@gnzlbg
Created July 3, 2019 17:35
Show Gist options
  • Save gnzlbg/dba8836f80237e0affd63d13d6274a37 to your computer and use it in GitHub Desktop.
Save gnzlbg/dba8836f80237e0affd63d13d6274a37 to your computer and use it in GitHub Desktop.
name old ns/iter new ns/iter diff ns/iter diff % speedup
misc::anchored_literal_long_match 32 (12187 MB/s) 29 (13448 MB/s) -3 -9.38% x 1.10
misc::anchored_literal_long_non_match 35 (11142 MB/s) 35 (11142 MB/s) 0 0.00% x 1.00
misc::anchored_literal_short_match 32 (812 MB/s) 29 (896 MB/s) -3 -9.38% x 1.10
misc::anchored_literal_short_non_match 32 (812 MB/s) 35 (742 MB/s) 3 9.38% x 0.91
misc::easy0_1K 40 (26275 MB/s) 39 (26948 MB/s) -1 -2.50% x 1.03
misc::easy0_1MB 62 (16912951 MB/s) 66 (15887924 MB/s) 4 6.45% x 0.94
misc::easy0_32 40 (1475 MB/s) 43 (1372 MB/s) 3 7.50% x 0.93
misc::easy0_32K 40 (819875 MB/s) 42 (780833 MB/s) 2 5.00% x 0.95
misc::easy1_1K 65 (16061 MB/s) 65 (16061 MB/s) 0 0.00% x 1.00
misc::easy1_1MB 67 (15650686 MB/s) 68 (15420529 MB/s) 1 1.49% x 0.99
misc::easy1_32 64 (812 MB/s) 65 (800 MB/s) 1 1.56% x 0.98
misc::easy1_32K 73 (449150 MB/s) 64 (512312 MB/s) -9 -12.33% x 1.14
misc::hard_1K 83 (12662 MB/s) 90 (11677 MB/s) 7 8.43% x 0.92
misc::hard_1MB 103 (10180611 MB/s) 102 (10280421 MB/s) -1 -0.97% x 1.01
misc::hard_32 82 (719 MB/s) 82 (719 MB/s) 0 0.00% x 1.00
misc::hard_32K 82 (399939 MB/s) 83 (395120 MB/s) 1 1.22% x 0.99
misc::is_match_set 93 (268 MB/s) 81 (308 MB/s) -12 -12.90% x 1.15
misc::literal 25 (2040 MB/s) 27 (1888 MB/s) 2 8.00% x 0.93
misc::long_needle1 3,586 (27886 MB/s) 3,576 (27964 MB/s) -10 -0.28% x 1.00
misc::long_needle2 905,916 (110 MB/s) 850,427 (117 MB/s) -55,489 -6.13% x 1.07
misc::match_class 133 (609 MB/s) 117 (692 MB/s) -16 -12.03% x 1.14
misc::match_class_in_range 39 (2076 MB/s) 31 (2612 MB/s) -8 -20.51% x 1.26
misc::match_class_unicode 470 (342 MB/s) 432 (372 MB/s) -38 -8.09% x 1.09
misc::matches_set 972 (25 MB/s) 987 (25 MB/s) 15 1.54% x 0.98
misc::medium_1K 42 (25047 MB/s) 44 (23909 MB/s) 2 4.76% x 0.95
misc::medium_1MB 65 (16132369 MB/s) 64 (16384437 MB/s) -1 -1.54% x 1.02
misc::medium_32 42 (1428 MB/s) 47 (1276 MB/s) 5 11.90% x 0.89
misc::medium_32K 43 (762697 MB/s) 42 (780857 MB/s) -1 -2.33% x 1.02
misc::no_exponential 565 (176 MB/s) 597 (167 MB/s) 32 5.66% x 0.95
misc::not_literal 154 (331 MB/s) 155 (329 MB/s) 1 0.65% x 0.99
misc::one_pass_long_prefix 90 (288 MB/s) 90 (288 MB/s) 0 0.00% x 1.00
misc::one_pass_long_prefix_not 91 (285 MB/s) 92 (282 MB/s) 1 1.10% x 0.99
misc::one_pass_short 67 (253 MB/s) 76 (223 MB/s) 9 13.43% x 0.88
misc::one_pass_short_not 67 (253 MB/s) 67 (253 MB/s) 0 0.00% x 1.00
misc::reallyhard2_1K 108 (9629 MB/s) 110 (9454 MB/s) 2 1.85% x 0.98
misc::reallyhard_1K 2,710 (387 MB/s) 2,797 (375 MB/s) 87 3.21% x 0.97
misc::reallyhard_1MB 2,892,465 (362 MB/s) 2,849,283 (368 MB/s) -43,182 -1.49% x 1.02
misc::reallyhard_32 176 (335 MB/s) 177 (333 MB/s) 1 0.57% x 0.99
misc::reallyhard_32K 83,342 (393 MB/s) 83,595 (392 MB/s) 253 0.30% x 1.00
misc::replace_all 368 370 2 0.54% x 0.99
misc::reverse_suffix_no_quadratic 8,912 (897 MB/s) 9,429 (848 MB/s) 517 5.80% x 0.95
misc::short_haystack_1000000x 257,066 (31120 MB/s) 258,298 (30972 MB/s) 1,232 0.48% x 1.00
misc::short_haystack_100000x 20,115 (39771 MB/s) 19,604 (40808 MB/s) -511 -2.54% x 1.03
misc::short_haystack_10000x 9,543 (8384 MB/s) 8,316 (9621 MB/s) -1,227 -12.86% x 1.15
misc::short_haystack_1000x 1,173 (6829 MB/s) 1,238 (6470 MB/s) 65 5.54% x 0.95
misc::short_haystack_100x 626 (1295 MB/s) 590 (1374 MB/s) -36 -5.75% x 1.06
misc::short_haystack_10x 541 (168 MB/s) 511 (178 MB/s) -30 -5.55% x 1.06
misc::short_haystack_1x 535 (35 MB/s) 507 (37 MB/s) -28 -5.23% x 1.06
misc::short_haystack_2x 545 (49 MB/s) 503 (53 MB/s) -42 -7.71% x 1.08
misc::short_haystack_3x 528 (66 MB/s) 505 (69 MB/s) -23 -4.36% x 1.05
misc::short_haystack_4x 570 (75 MB/s) 506 (84 MB/s) -64 -11.23% x 1.13
regexdna::find_new_lines 22,204,209 (228 MB/s) 22,276,256 (228 MB/s) 72,047 0.32% x 1.00
regexdna::subst1 1,555,173 (3268 MB/s) 1,570,715 (3236 MB/s) 15,542 1.00% x 0.99
regexdna::subst10 1,542,203 (3296 MB/s) 1,543,069 (3294 MB/s) 866 0.06% x 1.00
regexdna::subst11 1,562,370 (3253 MB/s) 1,551,439 (3276 MB/s) -10,931 -0.70% x 1.01
regexdna::subst2 1,556,475 (3265 MB/s) 1,578,738 (3219 MB/s) 22,263 1.43% x 0.99
regexdna::subst3 1,577,571 (3222 MB/s) 1,555,384 (3268 MB/s) -22,187 -1.41% x 1.01
regexdna::subst4 1,564,403 (3249 MB/s) 1,566,394 (3245 MB/s) 1,991 0.13% x 1.00
regexdna::subst5 1,572,568 (3232 MB/s) 1,568,928 (3240 MB/s) -3,640 -0.23% x 1.00
regexdna::subst6 1,585,245 (3206 MB/s) 1,561,238 (3256 MB/s) -24,007 -1.51% x 1.02
regexdna::subst7 1,546,305 (3287 MB/s) 1,531,086 (3320 MB/s) -15,219 -0.98% x 1.01
regexdna::subst8 1,545,542 (3289 MB/s) 1,557,212 (3264 MB/s) 11,670 0.76% x 0.99
regexdna::subst9 1,559,167 (3260 MB/s) 1,589,416 (3198 MB/s) 30,249 1.94% x 0.98
regexdna::variant1 6,119,453 (830 MB/s) 5,845,163 (869 MB/s) -274,290 -4.48% x 1.05
regexdna::variant2 10,741,145 (473 MB/s) 10,099,425 (503 MB/s) -641,720 -5.97% x 1.06
regexdna::variant3 12,511,701 (406 MB/s) 12,250,755 (414 MB/s) -260,946 -2.09% x 1.02
regexdna::variant4 12,672,451 (401 MB/s) 12,209,565 (416 MB/s) -462,886 -3.65% x 1.04
regexdna::variant5 10,699,005 (475 MB/s) 10,007,955 (507 MB/s) -691,050 -6.46% x 1.07
regexdna::variant6 10,288,572 (494 MB/s) 9,914,581 (512 MB/s) -373,991 -3.64% x 1.04
regexdna::variant7 10,459,821 (485 MB/s) 10,099,624 (503 MB/s) -360,197 -3.44% x 1.04
regexdna::variant8 10,688,280 (475 MB/s) 10,041,027 (506 MB/s) -647,253 -6.06% x 1.06
regexdna::variant9 10,601,123 (479 MB/s) 10,151,925 (500 MB/s) -449,198 -4.24% x 1.04
sherlock::before_after_holmes 1,665,271 (357 MB/s) 1,663,605 (357 MB/s) -1,666 -0.10% x 1.00
sherlock::before_holmes 119,865 (4963 MB/s) 118,743 (5010 MB/s) -1,122 -0.94% x 1.01
sherlock::everything_greedy 3,650,368 (162 MB/s) 3,661,787 (162 MB/s) 11,419 0.31% x 1.00
sherlock::everything_greedy_nl 1,569,374 (379 MB/s) 1,530,157 (388 MB/s) -39,217 -2.50% x 1.03
sherlock::holmes_cochar_watson 247,273 (2405 MB/s) 244,715 (2431 MB/s) -2,558 -1.03% x 1.01
sherlock::holmes_coword_watson 902,940 (658 MB/s) 817,364 (727 MB/s) -85,576 -9.48% x 1.10
sherlock::ing_suffix 620,332 (959 MB/s) 611,431 (973 MB/s) -8,901 -1.43% x 1.01
sherlock::ing_suffix_limited_space 1,920,278 (309 MB/s) 1,931,458 (308 MB/s) 11,180 0.58% x 0.99
sherlock::letters 38,296,387 (15 MB/s) 37,175,378 (16 MB/s) -1,121,009 -2.93% x 1.03
sherlock::letters_lower 39,192,596 (15 MB/s) 36,199,169 (16 MB/s) -2,993,427 -7.64% x 1.08
sherlock::letters_upper 3,108,634 (191 MB/s) 3,139,893 (189 MB/s) 31,259 1.01% x 0.99
sherlock::line_boundary_sherlock_holmes 1,643,260 (362 MB/s) 1,641,699 (362 MB/s) -1,561 -0.09% x 1.00
sherlock::name_alt1 69,073 (8613 MB/s) 68,648 (8666 MB/s) -425 -0.62% x 1.01
sherlock::name_alt2 236,829 (2512 MB/s) 194,332 (3061 MB/s) -42,497 -17.94% x 1.22
sherlock::name_alt3 235,473 (2526 MB/s) 203,132 (2928 MB/s) -32,341 -13.73% x 1.16
sherlock::name_alt3_nocase 1,815,544 (327 MB/s) 1,808,648 (328 MB/s) -6,896 -0.38% x 1.00
sherlock::name_alt4 291,521 (2040 MB/s) 250,934 (2370 MB/s) -40,587 -13.92% x 1.16
sherlock::name_alt4_nocase 359,283 (1655 MB/s) 343,348 (1732 MB/s) -15,935 -4.44% x 1.05
sherlock::name_alt5 225,629 (2636 MB/s) 197,140 (3017 MB/s) -28,489 -12.63% x 1.14
sherlock::name_alt5_nocase 935,179 (636 MB/s) 887,677 (670 MB/s) -47,502 -5.08% x 1.05
sherlock::name_holmes 72,511 (8204 MB/s) 72,179 (8242 MB/s) -332 -0.46% x 1.00
sherlock::name_holmes_nocase 328,887 (1808 MB/s) 296,835 (2004 MB/s) -32,052 -9.75% x 1.11
sherlock::name_sherlock 130,773 (4549 MB/s) 124,655 (4772 MB/s) -6,118 -4.68% x 1.05
sherlock::name_sherlock_holmes 57,147 (10410 MB/s) 57,602 (10328 MB/s) 455 0.80% x 0.99
sherlock::name_sherlock_holmes_nocase 284,106 (2094 MB/s) 270,074 (2202 MB/s) -14,032 -4.94% x 1.05
sherlock::name_sherlock_nocase 289,764 (2053 MB/s) 275,665 (2158 MB/s) -14,099 -4.87% x 1.05
sherlock::name_whitespace 134,471 (4424 MB/s) 134,555 (4421 MB/s) 84 0.06% x 1.00
sherlock::no_match_common 31,339 (18983 MB/s) 31,237 (19045 MB/s) -102 -0.33% x 1.00
sherlock::no_match_really_common 497,075 (1196 MB/s) 496,332 (1198 MB/s) -743 -0.15% x 1.00
sherlock::no_match_uncommon 31,241 (19043 MB/s) 33,230 (17903 MB/s) 1,989 6.37% x 0.94
sherlock::quotes 632,377 (940 MB/s) 631,298 (942 MB/s) -1,079 -0.17% x 1.00
sherlock::repeated_class_negation 128,311,454 (4 MB/s) 130,292,923 (4 MB/s) 1,981,469 1.54% x 0.98
sherlock::the_lower 869,494 (684 MB/s) 869,419 (684 MB/s) -75 -0.01% x 1.00
sherlock::the_nocase 664,016 (895 MB/s) 622,866 (955 MB/s) -41,150 -6.20% x 1.07
sherlock::the_upper 71,432 (8328 MB/s) 79,523 (7481 MB/s) 8,091 11.33% x 0.90
sherlock::the_whitespace 1,697,407 (350 MB/s) 1,710,976 (347 MB/s) 13,569 0.80% x 0.99
sherlock::word_ending_n 3,019,276 (197 MB/s) 3,007,733 (197 MB/s) -11,543 -0.38% x 1.00
sherlock::words 14,581,733 (40 MB/s) 14,548,694 (40 MB/s) -33,039 -0.23% x 1.00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment