Skip to content

Instantly share code, notes, and snippets.

@liskin
Last active December 12, 2017 22:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save liskin/7dfb823feb8eaa17d272157b760b72af to your computer and use it in GitHub Desktop.
Save liskin/7dfb823feb8eaa17d272157b760b72af to your computer and use it in GitHub Desktop.
[tomi@notes ndm_gcc_memchr]$ ./Main
benchmarking 1 memchr_std
time 77.57 ns (77.38 ns .. 77.83 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 78.02 ns (77.72 ns .. 78.67 ns)
std dev 1.446 ns (788.0 ps .. 2.725 ns)
variance introduced by outliers: 25% (moderately inflated)
benchmarking 1 strchr_std
time 54.00 ns (53.82 ns .. 54.24 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 54.36 ns (53.95 ns .. 55.21 ns)
std dev 1.916 ns (1.135 ns .. 2.884 ns)
variance introduced by outliers: 55% (severely inflated)
benchmarking 1 memchr_c
time 77.43 ns (77.26 ns .. 77.65 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 77.56 ns (77.31 ns .. 77.93 ns)
std dev 985.9 ps (624.5 ps .. 1.564 ns)
variance introduced by outliers: 13% (moderately inflated)
benchmarking 1 strchr_c
time 54.86 ns (54.68 ns .. 55.06 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 55.25 ns (54.82 ns .. 56.65 ns)
std dev 2.400 ns (510.3 ps .. 4.997 ns)
variance introduced by outliers: 65% (severely inflated)
benchmarking 10 memchr_std
time 77.84 ns (77.62 ns .. 78.05 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 77.95 ns (77.62 ns .. 78.82 ns)
std dev 1.577 ns (684.0 ps .. 3.233 ns)
variance introduced by outliers: 28% (moderately inflated)
benchmarking 10 strchr_std
time 54.08 ns (53.88 ns .. 54.33 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 54.07 ns (53.91 ns .. 54.30 ns)
std dev 637.2 ps (471.7 ps .. 857.7 ps)
variance introduced by outliers: 12% (moderately inflated)
benchmarking 10 memchr_c
time 81.20 ns (80.96 ns .. 81.44 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 81.19 ns (80.99 ns .. 81.71 ns)
std dev 1.033 ns (550.5 ps .. 1.906 ns)
variance introduced by outliers: 13% (moderately inflated)
benchmarking 10 strchr_c
time 58.21 ns (57.80 ns .. 58.82 ns)
0.999 R² (0.998 R² .. 1.000 R²)
mean 58.11 ns (57.81 ns .. 58.71 ns)
std dev 1.364 ns (861.7 ps .. 2.454 ns)
variance introduced by outliers: 35% (moderately inflated)
benchmarking 100 memchr_std
time 82.42 ns (81.97 ns .. 83.00 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 82.31 ns (81.78 ns .. 83.22 ns)
std dev 2.238 ns (1.360 ns .. 3.444 ns)
variance introduced by outliers: 42% (moderately inflated)
benchmarking 100 strchr_std
time 58.82 ns (58.51 ns .. 59.21 ns)
0.998 R² (0.997 R² .. 0.999 R²)
mean 61.06 ns (59.94 ns .. 63.20 ns)
std dev 5.060 ns (3.245 ns .. 8.595 ns)
variance introduced by outliers: 87% (severely inflated)
benchmarking 100 memchr_c
time 124.9 ns (123.9 ns .. 126.5 ns)
0.999 R² (0.999 R² .. 1.000 R²)
mean 124.7 ns (124.2 ns .. 125.5 ns)
std dev 2.068 ns (1.397 ns .. 3.211 ns)
variance introduced by outliers: 20% (moderately inflated)
benchmarking 100 strchr_c
time 95.27 ns (94.55 ns .. 96.01 ns)
0.999 R² (0.999 R² .. 1.000 R²)
mean 95.27 ns (94.68 ns .. 96.17 ns)
std dev 2.366 ns (1.801 ns .. 2.888 ns)
variance introduced by outliers: 37% (moderately inflated)
benchmarking 1000 memchr_std
time 100.6 ns (100.2 ns .. 101.1 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 101.0 ns (100.5 ns .. 101.7 ns)
std dev 1.831 ns (1.246 ns .. 2.710 ns)
variance introduced by outliers: 24% (moderately inflated)
benchmarking 1000 strchr_std
time 94.03 ns (93.76 ns .. 94.30 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 94.06 ns (93.74 ns .. 94.46 ns)
std dev 1.222 ns (961.8 ps .. 1.531 ns)
variance introduced by outliers: 14% (moderately inflated)
benchmarking 1000 memchr_c
time 396.6 ns (394.4 ns .. 398.9 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 397.8 ns (394.8 ns .. 401.4 ns)
std dev 10.72 ns (8.340 ns .. 14.82 ns)
variance introduced by outliers: 38% (moderately inflated)
benchmarking 1000 strchr_c
time 356.4 ns (354.8 ns .. 358.1 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 356.2 ns (354.6 ns .. 358.2 ns)
std dev 5.999 ns (4.380 ns .. 8.470 ns)
variance introduced by outliers: 19% (moderately inflated)
benchmarking 10000 memchr_std
time 277.6 ns (276.5 ns .. 278.6 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 277.3 ns (276.2 ns .. 278.8 ns)
std dev 4.265 ns (3.333 ns .. 5.762 ns)
variance introduced by outliers: 17% (moderately inflated)
benchmarking 10000 strchr_std
time 478.8 ns (477.6 ns .. 480.2 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 480.0 ns (478.4 ns .. 482.7 ns)
std dev 6.585 ns (4.832 ns .. 9.070 ns)
variance introduced by outliers: 13% (moderately inflated)
benchmarking 10000 memchr_c
time 3.062 μs (3.037 μs .. 3.091 μs)
0.999 R² (0.998 R² .. 1.000 R²)
mean 3.060 μs (3.039 μs .. 3.095 μs)
std dev 86.72 ns (58.00 ns .. 143.2 ns)
variance introduced by outliers: 36% (moderately inflated)
benchmarking 10000 strchr_c
time 2.998 μs (2.990 μs .. 3.006 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 2.998 μs (2.987 μs .. 3.013 μs)
std dev 44.38 ns (31.02 ns .. 63.55 ns)
variance introduced by outliers: 13% (moderately inflated)
benchmarking 100000 memchr_std
time 2.227 μs (2.208 μs .. 2.256 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 2.221 μs (2.210 μs .. 2.241 μs)
std dev 46.26 ns (24.83 ns .. 73.74 ns)
variance introduced by outliers: 23% (moderately inflated)
benchmarking 100000 strchr_std
time 4.559 μs (4.545 μs .. 4.578 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 4.552 μs (4.538 μs .. 4.571 μs)
std dev 52.83 ns (39.46 ns .. 78.45 ns)
benchmarking 100000 memchr_c
time 29.66 μs (29.47 μs .. 29.87 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 29.46 μs (29.35 μs .. 29.61 μs)
std dev 455.5 ns (368.0 ns .. 610.5 ns)
variance introduced by outliers: 11% (moderately inflated)
benchmarking 100000 strchr_c
time 29.14 μs (29.04 μs .. 29.26 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 29.24 μs (29.13 μs .. 29.43 μs)
std dev 443.2 ns (295.1 ns .. 696.5 ns)
variance introduced by outliers: 11% (moderately inflated)
benchmarking 1000000 memchr_std
time 24.62 μs (24.52 μs .. 24.72 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 24.67 μs (24.55 μs .. 24.90 μs)
std dev 554.0 ns (345.4 ns .. 909.8 ns)
variance introduced by outliers: 22% (moderately inflated)
benchmarking 1000000 strchr_std
time 47.70 μs (47.50 μs .. 47.95 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 47.68 μs (47.50 μs .. 48.01 μs)
std dev 779.0 ns (524.7 ns .. 1.255 μs)
variance introduced by outliers: 11% (moderately inflated)
benchmarking 1000000 memchr_c
time 290.6 μs (289.3 μs .. 292.2 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 291.6 μs (290.1 μs .. 295.0 μs)
std dev 7.122 μs (3.983 μs .. 13.31 μs)
variance introduced by outliers: 17% (moderately inflated)
benchmarking 1000000 strchr_c
time 295.7 μs (292.6 μs .. 299.4 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 293.1 μs (291.4 μs .. 295.3 μs)
std dev 6.505 μs (5.212 μs .. 8.025 μs)
variance introduced by outliers: 15% (moderately inflated)
benchmarking 10000000 memchr_std
time 428.6 μs (420.7 μs .. 438.3 μs)
0.998 R² (0.996 R² .. 1.000 R²)
mean 425.7 μs (423.0 μs .. 430.3 μs)
std dev 12.46 μs (8.667 μs .. 17.78 μs)
variance introduced by outliers: 22% (moderately inflated)
benchmarking 10000000 strchr_std
time 653.1 μs (649.4 μs .. 657.2 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 651.0 μs (648.3 μs .. 654.5 μs)
std dev 10.76 μs (8.297 μs .. 14.11 μs)
benchmarking 10000000 memchr_c
time 2.989 ms (2.968 ms .. 3.015 ms)
0.999 R² (0.999 R² .. 1.000 R²)
mean 2.974 ms (2.961 ms .. 2.998 ms)
std dev 52.49 μs (35.51 μs .. 78.15 μs)
benchmarking 10000000 strchr_c
time 2.993 ms (2.953 ms .. 3.038 ms)
0.998 R² (0.997 R² .. 1.000 R²)
mean 2.972 ms (2.957 ms .. 2.998 ms)
std dev 63.96 μs (43.20 μs .. 99.45 μs)
vagrant@stretch:~/ndm_gcc_memchr$ ./Main
benchmarking 1 memchr_std
time 75.83 ns (75.39 ns .. 76.40 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 76.14 ns (75.54 ns .. 77.78 ns)
std dev 3.170 ns (1.098 ns .. 6.371 ns)
variance introduced by outliers: 63% (severely inflated)
benchmarking 1 strchr_std
time 55.05 ns (54.66 ns .. 55.49 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 55.20 ns (54.94 ns .. 55.63 ns)
std dev 1.156 ns (804.9 ps .. 1.944 ns)
variance introduced by outliers: 30% (moderately inflated)
benchmarking 1 memchr_c
time 81.02 ns (79.73 ns .. 82.24 ns)
0.998 R² (0.998 R² .. 0.999 R²)
mean 80.44 ns (79.42 ns .. 81.63 ns)
std dev 3.527 ns (3.084 ns .. 4.134 ns)
variance introduced by outliers: 65% (severely inflated)
benchmarking 1 strchr_c
time 53.35 ns (53.17 ns .. 53.58 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 53.47 ns (53.28 ns .. 53.78 ns)
std dev 760.9 ps (563.4 ps .. 1.165 ns)
variance introduced by outliers: 16% (moderately inflated)
benchmarking 10 memchr_std
time 75.59 ns (75.40 ns .. 75.83 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 75.80 ns (75.55 ns .. 76.24 ns)
std dev 1.101 ns (734.0 ps .. 1.699 ns)
variance introduced by outliers: 17% (moderately inflated)
benchmarking 10 strchr_std
time 54.57 ns (54.34 ns .. 54.84 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 54.78 ns (54.50 ns .. 55.32 ns)
std dev 1.280 ns (874.8 ps .. 2.078 ns)
variance introduced by outliers: 35% (moderately inflated)
benchmarking 10 memchr_c
time 81.85 ns (81.00 ns .. 82.82 ns)
0.999 R² (0.999 R² .. 1.000 R²)
mean 81.46 ns (80.78 ns .. 82.48 ns)
std dev 2.855 ns (2.321 ns .. 3.622 ns)
variance introduced by outliers: 54% (severely inflated)
benchmarking 10 strchr_c
time 56.55 ns (56.35 ns .. 56.74 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 56.48 ns (56.33 ns .. 56.69 ns)
std dev 585.0 ps (454.4 ps .. 740.8 ps)
benchmarking 100 memchr_std
time 79.19 ns (78.85 ns .. 79.59 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 79.31 ns (79.05 ns .. 79.66 ns)
std dev 1.072 ns (833.5 ps .. 1.448 ns)
variance introduced by outliers: 15% (moderately inflated)
benchmarking 100 strchr_std
time 59.08 ns (58.82 ns .. 59.41 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 58.92 ns (58.65 ns .. 59.35 ns)
std dev 1.133 ns (790.6 ps .. 1.619 ns)
variance introduced by outliers: 27% (moderately inflated)
benchmarking 100 memchr_c
time 123.4 ns (121.7 ns .. 124.8 ns)
0.999 R² (0.999 R² .. 0.999 R²)
mean 122.6 ns (121.6 ns .. 123.9 ns)
std dev 3.702 ns (3.253 ns .. 4.311 ns)
variance introduced by outliers: 46% (moderately inflated)
benchmarking 100 strchr_c
time 91.49 ns (91.22 ns .. 91.84 ns)
1.000 R² (1.000 R² .. 1.000 R²)
mean 91.71 ns (91.33 ns .. 92.44 ns)
std dev 1.710 ns (1.059 ns .. 2.923 ns)
variance introduced by outliers: 25% (moderately inflated)
benchmarking 1000 memchr_std
time 100.3 ns (99.39 ns .. 101.4 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 100.1 ns (99.56 ns .. 101.0 ns)
std dev 2.266 ns (1.420 ns .. 3.472 ns)
variance introduced by outliers: 32% (moderately inflated)
benchmarking 1000 strchr_std
time 79.03 ns (78.36 ns .. 79.57 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 78.10 ns (77.59 ns .. 78.72 ns)
std dev 1.884 ns (1.402 ns .. 2.839 ns)
variance introduced by outliers: 36% (moderately inflated)
benchmarking 1000 memchr_c
time 388.1 ns (385.7 ns .. 391.0 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 388.7 ns (386.4 ns .. 391.4 ns)
std dev 8.675 ns (6.868 ns .. 10.88 ns)
variance introduced by outliers: 29% (moderately inflated)
benchmarking 1000 strchr_c
time 355.6 ns (353.7 ns .. 358.2 ns)
0.999 R² (0.999 R² .. 1.000 R²)
mean 357.2 ns (354.6 ns .. 361.5 ns)
std dev 11.06 ns (6.457 ns .. 16.32 ns)
variance introduced by outliers: 45% (moderately inflated)
benchmarking 10000 memchr_std
time 284.5 ns (282.6 ns .. 286.6 ns)
1.000 R² (0.999 R² .. 1.000 R²)
mean 284.1 ns (282.1 ns .. 287.9 ns)
std dev 8.325 ns (5.041 ns .. 12.66 ns)
variance introduced by outliers: 43% (moderately inflated)
benchmarking 10000 strchr_std
time 298.2 ns (294.4 ns .. 303.4 ns)
0.999 R² (0.998 R² .. 1.000 R²)
mean 297.8 ns (296.1 ns .. 300.8 ns)
std dev 7.319 ns (5.328 ns .. 9.924 ns)
variance introduced by outliers: 34% (moderately inflated)
benchmarking 10000 memchr_c
time 3.044 μs (3.031 μs .. 3.057 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 3.043 μs (3.031 μs .. 3.064 μs)
std dev 52.54 ns (39.08 ns .. 76.20 ns)
variance introduced by outliers: 17% (moderately inflated)
benchmarking 10000 strchr_c
time 3.025 μs (3.007 μs .. 3.045 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 3.029 μs (3.012 μs .. 3.057 μs)
std dev 70.62 ns (46.07 ns .. 99.96 ns)
variance introduced by outliers: 27% (moderately inflated)
benchmarking 100000 memchr_std
time 2.158 μs (2.149 μs .. 2.173 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 2.178 μs (2.161 μs .. 2.207 μs)
std dev 70.98 ns (41.03 ns .. 113.7 ns)
variance introduced by outliers: 43% (moderately inflated)
benchmarking 100000 strchr_std
time 3.716 μs (3.700 μs .. 3.735 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 3.701 μs (3.692 μs .. 3.714 μs)
std dev 34.91 ns (23.94 ns .. 56.01 ns)
benchmarking 100000 memchr_c
time 29.43 μs (29.15 μs .. 29.79 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 29.54 μs (29.30 μs .. 29.90 μs)
std dev 1.017 μs (729.5 ns .. 1.399 μs)
variance introduced by outliers: 38% (moderately inflated)
benchmarking 100000 strchr_c
time 29.25 μs (29.10 μs .. 29.45 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 29.22 μs (29.10 μs .. 29.38 μs)
std dev 466.4 ns (368.8 ns .. 632.3 ns)
variance introduced by outliers: 12% (moderately inflated)
benchmarking 1000000 memchr_std
time 24.79 μs (24.57 μs .. 25.02 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 24.67 μs (24.55 μs .. 24.86 μs)
std dev 509.0 ns (405.3 ns .. 669.4 ns)
variance introduced by outliers: 18% (moderately inflated)
benchmarking 1000000 strchr_std
time 38.29 μs (38.06 μs .. 38.61 μs)
0.999 R² (0.998 R² .. 1.000 R²)
mean 38.28 μs (38.07 μs .. 38.67 μs)
std dev 936.4 ns (545.4 ns .. 1.488 μs)
variance introduced by outliers: 23% (moderately inflated)
benchmarking 1000000 memchr_c
time 292.3 μs (290.1 μs .. 294.4 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 291.6 μs (290.3 μs .. 293.8 μs)
std dev 5.679 μs (3.310 μs .. 10.75 μs)
variance introduced by outliers: 12% (moderately inflated)
benchmarking 1000000 strchr_c
time 292.6 μs (290.1 μs .. 295.1 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 293.5 μs (291.5 μs .. 297.4 μs)
std dev 9.754 μs (5.414 μs .. 16.68 μs)
variance introduced by outliers: 28% (moderately inflated)
benchmarking 10000000 memchr_std
time 469.7 μs (465.7 μs .. 473.5 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 467.9 μs (465.6 μs .. 471.1 μs)
std dev 9.257 μs (6.915 μs .. 12.26 μs)
variance introduced by outliers: 11% (moderately inflated)
benchmarking 10000000 strchr_std
time 577.8 μs (574.2 μs .. 581.4 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 580.4 μs (577.9 μs .. 584.0 μs)
std dev 10.28 μs (7.395 μs .. 13.72 μs)
benchmarking 10000000 memchr_c
time 2.935 ms (2.921 ms .. 2.953 ms)
1.000 R² (0.999 R² .. 1.000 R²)
mean 2.946 ms (2.935 ms .. 2.968 ms)
std dev 48.36 μs (33.72 μs .. 72.81 μs)
benchmarking 10000000 strchr_c
time 2.948 ms (2.928 ms .. 2.972 ms)
0.999 R² (0.999 R² .. 1.000 R²)
mean 2.949 ms (2.937 ms .. 2.973 ms)
std dev 52.44 μs (31.89 μs .. 85.43 μs)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment