simstr/bench/results/004-Xeon E5-2682 v4, WASM C...

931 lines
138 KiB
Plaintext

Benchmarks of simstr, version 1.6.6
Sources: https://github.com/orefkov/simstr
Results: https://orefkov.github.io/simstr/results.html
Run on (32 X 2513.96 MHz CPU s)
Chrome/143.0.0.0 webasm
--------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------------------------------------------------------------------------------------------
----- Concatenate string + Number + "Literal" ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
Concat std::string and number by std to std::string_mean 950 ns 950 ns 4
Concat std::string and number by std to std::string_median 963 ns 963 ns 4
Concat std::string and number by std to std::string_stddev 41.6 ns 41.6 ns 4
Concat std::string and number by std to std::string_cv 4.38 % 4.38 % 4
Concat std::string and number by StrExpr to std::string_mean 486 ns 486 ns 4
Concat std::string and number by StrExpr to std::string_median 490 ns 490 ns 4
Concat std::string and number by StrExpr to std::string_stddev 24.4 ns 24.4 ns 4
Concat std::string and number by StrExpr to std::string_cv 5.02 % 5.02 % 4
Concat stringa and number by StrExpr to simstr::stringa_mean 216 ns 216 ns 4
Concat stringa and number by StrExpr to simstr::stringa_median 219 ns 219 ns 4
Concat stringa and number by StrExpr to simstr::stringa_stddev 18.4 ns 18.4 ns 4
Concat stringa and number by StrExpr to simstr::stringa_cv 8.49 % 8.49 % 4
Concat stringa and number by e_concat to simstr::stringa_mean 202 ns 202 ns 4
Concat stringa and number by e_concat to simstr::stringa_median 202 ns 202 ns 4
Concat stringa and number by e_concat to simstr::stringa_stddev 1.60 ns 1.60 ns 4
Concat stringa and number by e_concat to simstr::stringa_cv 0.79 % 0.79 % 4
----- Concatenate string + Hex Number + "Literal" ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
Concat std::string and format hex number and literal to std::string_mean 2042 ns 2042 ns 4
Concat std::string and format hex number and literal to std::string_median 2038 ns 2038 ns 4
Concat std::string and format hex number and literal to std::string_stddev 36.2 ns 36.2 ns 4
Concat std::string and format hex number and literal to std::string_cv 1.77 % 1.77 % 4
std::format std::string and hex number by literal to std::string_mean 2683 ns 2683 ns 4
std::format std::string and hex number by literal to std::string_median 2680 ns 2680 ns 4
std::format std::string and hex number by literal to std::string_stddev 133 ns 133 ns 4
std::format std::string and hex number by literal to std::string_cv 4.96 % 4.96 % 4
Concat std::string and std::to_chars and string to std::string_mean 623 ns 623 ns 4
Concat std::string and std::to_chars and string to std::string_median 601 ns 601 ns 4
Concat std::string and std::to_chars and string to std::string_stddev 53.8 ns 53.8 ns 4
Concat std::string and std::to_chars and string to std::string_cv 8.64 % 8.64 % 4
Concat std::string and hex number and literal by StrExpr to std::string_mean 461 ns 461 ns 4
Concat std::string and hex number and literal by StrExpr to std::string_median 470 ns 470 ns 4
Concat std::string and hex number and literal by StrExpr to std::string_stddev 17.4 ns 17.4 ns 4
Concat std::string and hex number and literal by StrExpr to std::string_cv 3.78 % 3.78 % 4
Concat stringa and hex number and literal by StrExpr to simstr::stringa_mean 186 ns 186 ns 4
Concat stringa and hex number and literal by StrExpr to simstr::stringa_median 188 ns 188 ns 4
Concat stringa and hex number and literal by StrExpr to simstr::stringa_stddev 9.61 ns 9.61 ns 4
Concat stringa and hex number and literal by StrExpr to simstr::stringa_cv 5.17 % 5.17 % 4
Concat stringa and hex number and literal by e_concat to simstr::stringa_mean 209 ns 209 ns 4
Concat stringa and hex number and literal by e_concat to simstr::stringa_median 208 ns 208 ns 4
Concat stringa and hex number and literal by e_concat to simstr::stringa_stddev 15.0 ns 15.0 ns 4
Concat stringa and hex number and literal by e_concat to simstr::stringa_cv 7.17 % 7.17 % 4
Subst stringa and hex number by e_subst literal to simstr::stringa_mean 366 ns 366 ns 4
Subst stringa and hex number by e_subst literal to simstr::stringa_median 369 ns 369 ns 4
Subst stringa and hex number by e_subst literal to simstr::stringa_stddev 12.0 ns 12.0 ns 4
Subst stringa and hex number by e_subst literal to simstr::stringa_cv 3.29 % 3.29 % 4
Subst stringa and hex number by e_vsubst stra to simstr::stringa_mean 911 ns 911 ns 4
Subst stringa and hex number by e_vsubst stra to simstr::stringa_median 908 ns 908 ns 4
Subst stringa and hex number by e_vsubst stra to simstr::stringa_stddev 19.5 ns 19.5 ns 4
Subst stringa and hex number by e_vsubst stra to simstr::stringa_cv 2.14 % 2.14 % 4
---- format/vformat and subst/vsubst octal number to 32 symbols result ----/repeats:1 0.000 ns 0.000 ns 1000000000000
"abcdefghihklmopqr "_ss + i / 0x8a010_fmt + " end"_mean 438 ns 438 ns 4
"abcdefghihklmopqr "_ss + i / 0x8a010_fmt + " end"_median 450 ns 450 ns 4
"abcdefghihklmopqr "_ss + i / 0x8a010_fmt + " end"_stddev 35.4 ns 35.4 ns 4
"abcdefghihklmopqr "_ss + i / 0x8a010_fmt + " end"_cv 8.08 % 8.08 % 4
e_subst("abcdefghihklmopqr {} end", i / 0x8a010_fmt)_mean 567 ns 567 ns 4
e_subst("abcdefghihklmopqr {} end", i / 0x8a010_fmt)_median 570 ns 570 ns 4
e_subst("abcdefghihklmopqr {} end", i / 0x8a010_fmt)_stddev 25.7 ns 25.7 ns 4
e_subst("abcdefghihklmopqr {} end", i / 0x8a010_fmt)_cv 4.54 % 4.54 % 4
e_vsubst(pattern, i / 0x8a010_fmt)_mean 1418 ns 1418 ns 4
e_vsubst(pattern, i / 0x8a010_fmt)_median 1416 ns 1416 ns 4
e_vsubst(pattern, i / 0x8a010_fmt)_stddev 31.4 ns 31.4 ns 4
e_vsubst(pattern, i / 0x8a010_fmt)_cv 2.21 % 2.21 % 4
fmt::format(FMT_COMPILE("abcdefghihklmopqr {:#010o} end"), i)_mean 2080 ns 2080 ns 4
fmt::format(FMT_COMPILE("abcdefghihklmopqr {:#010o} end"), i)_median 2085 ns 2086 ns 4
fmt::format(FMT_COMPILE("abcdefghihklmopqr {:#010o} end"), i)_stddev 55.0 ns 55.0 ns 4
fmt::format(FMT_COMPILE("abcdefghihklmopqr {:#010o} end"), i)_cv 2.64 % 2.64 % 4
fmt::format("abcdefghihklmopqr {:#010o} end", i)_mean 2889 ns 2889 ns 4
fmt::format("abcdefghihklmopqr {:#010o} end", i)_median 2886 ns 2886 ns 4
fmt::format("abcdefghihklmopqr {:#010o} end", i)_stddev 6.78 ns 6.78 ns 4
fmt::format("abcdefghihklmopqr {:#010o} end", i)_cv 0.23 % 0.23 % 4
std::format("abcdefghihklmopqr {:#010o} end", i)_mean 2983 ns 2983 ns 4
std::format("abcdefghihklmopqr {:#010o} end", i)_median 2985 ns 2985 ns 4
std::format("abcdefghihklmopqr {:#010o} end", i)_stddev 37.9 ns 37.9 ns 4
std::format("abcdefghihklmopqr {:#010o} end", i)_cv 1.27 % 1.27 % 4
std::vformat(pattern, std::make_format_args(i))_mean 3007 ns 3007 ns 4
std::vformat(pattern, std::make_format_args(i))_median 3008 ns 3008 ns 4
std::vformat(pattern, std::make_format_args(i))_stddev 10.9 ns 10.9 ns 4
std::vformat(pattern, std::make_format_args(i))_cv 0.36 % 0.36 % 4
strm << "abcdefghihklmopqr 0" << std::oct << std::setw(9) << std::setfill('0') << i << " end"_mean 8384 ns 8384 ns 4
strm << "abcdefghihklmopqr 0" << std::oct << std::setw(9) << std::setfill('0') << i << " end"_median 8389 ns 8389 ns 4
strm << "abcdefghihklmopqr 0" << std::oct << std::setw(9) << std::setfill('0') << i << " end"_stddev 178 ns 178 ns 4
strm << "abcdefghihklmopqr 0" << std::oct << std::setw(9) << std::setfill('0') << i << " end"_cv 2.12 % 2.12 % 4
----- Concatenate string + "Literal" ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
Concat std::string by std to std::string_mean 113 ns 113 ns 4
Concat std::string by std to std::string_median 113 ns 113 ns 4
Concat std::string by std to std::string_stddev 2.70 ns 2.70 ns 4
Concat std::string by std to std::string_cv 2.40 % 2.40 % 4
Concat std::string by StrExpr to std::string_mean 131 ns 131 ns 4
Concat std::string by StrExpr to std::string_median 130 ns 130 ns 4
Concat std::string by StrExpr to std::string_stddev 2.55 ns 2.55 ns 4
Concat std::string by StrExpr to std::string_cv 1.95 % 1.95 % 4
Concat stringa by StrExpr to stringa_mean 115 ns 115 ns 4
Concat stringa by StrExpr to stringa_median 113 ns 113 ns 4
Concat stringa by StrExpr to stringa_stddev 5.54 ns 5.54 ns 4
Concat stringa by StrExpr to stringa_cv 4.82 % 4.82 % 4
----- Find three concatenated string in string_view -----/repeats:1 0.000 ns 0.000 ns 1000000000000
Find concat three std::string_mean 229 ns 229 ns 4
Find concat three std::string_median 227 ns 227 ns 4
Find concat three std::string_stddev 14.4 ns 14.4 ns 4
Find concat three std::string_cv 6.29 % 6.29 % 4
Find concat three strexpr_mean 110 ns 110 ns 4
Find concat three strexpr_median 109 ns 109 ns 4
Find concat three strexpr_stddev 1.63 ns 1.63 ns 4
Find concat three strexpr_cv 1.49 % 1.49 % 4
Find concat three simstr_mean 63.3 ns 63.3 ns 4
Find concat three simstr_median 63.3 ns 63.3 ns 4
Find concat three simstr_stddev 0.894 ns 0.895 ns 4
Find concat three simstr_cv 1.41 % 1.41 % 4
----- Build Type Name ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
BuildTypeNameStr 0/0_mean 22.3 ns 22.3 ns 4
BuildTypeNameStr 0/0_median 22.4 ns 22.4 ns 4
BuildTypeNameStr 0/0_stddev 0.587 ns 0.587 ns 4
BuildTypeNameStr 0/0_cv 2.64 % 2.64 % 4
BuildTypeNameExp 0/0_mean 26.3 ns 26.3 ns 4
BuildTypeNameExp 0/0_median 26.2 ns 26.2 ns 4
BuildTypeNameExp 0/0_stddev 0.586 ns 0.586 ns 4
BuildTypeNameExp 0/0_cv 2.23 % 2.23 % 4
BuildTypeNameSim 0/0_mean 20.3 ns 20.3 ns 4
BuildTypeNameSim 0/0_median 20.4 ns 20.4 ns 4
BuildTypeNameSim 0/0_stddev 0.521 ns 0.521 ns 4
BuildTypeNameSim 0/0_cv 2.56 % 2.56 % 4
BuildTypeNameStr 10/10_mean 395 ns 395 ns 4
BuildTypeNameStr 10/10_median 395 ns 395 ns 4
BuildTypeNameStr 10/10_stddev 9.39 ns 9.39 ns 4
BuildTypeNameStr 10/10_cv 2.38 % 2.38 % 4
BuildTypeNameExp 10/10_mean 118 ns 118 ns 4
BuildTypeNameExp 10/10_median 118 ns 118 ns 4
BuildTypeNameExp 10/10_stddev 6.58 ns 6.58 ns 4
BuildTypeNameExp 10/10_cv 5.55 % 5.56 % 4
BuildTypeNameSim 10/10_mean 72.0 ns 72.0 ns 4
BuildTypeNameSim 10/10_median 72.6 ns 72.6 ns 4
BuildTypeNameSim 10/10_stddev 3.28 ns 3.29 ns 4
BuildTypeNameSim 10/10_cv 4.56 % 4.56 % 4
----- Replace string by copy -----/repeats:1 0.000 ns 0.000 ns 1000000000000
Concat with replace str_mean 509 ns 509 ns 4
Concat with replace str_median 505 ns 505 ns 4
Concat with replace str_stddev 21.3 ns 21.3 ns 4
Concat with replace str_cv 4.19 % 4.19 % 4
Concat with replace exp_mean 253 ns 253 ns 4
Concat with replace exp_median 252 ns 252 ns 4
Concat with replace exp_stddev 10.5 ns 10.5 ns 4
Concat with replace exp_cv 4.13 % 4.13 % 4
----- Create Empty Str ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e;_mean 2.14 ns 2.14 ns 4
std::string e;_median 2.14 ns 2.14 ns 4
std::string e;_stddev 0.020 ns 0.020 ns 4
std::string e;_cv 0.94 % 0.94 % 4
std::string_view e;_mean 0.741 ns 0.741 ns 4
std::string_view e;_median 0.733 ns 0.733 ns 4
std::string_view e;_stddev 0.025 ns 0.025 ns 4
std::string_view e;_cv 3.38 % 3.38 % 4
ssa e;_mean 0.361 ns 0.361 ns 4
ssa e;_median 0.362 ns 0.362 ns 4
ssa e;_stddev 0.003 ns 0.003 ns 4
ssa e;_cv 0.84 % 0.84 % 4
stringa e;_mean 2.15 ns 2.15 ns 4
stringa e;_median 2.14 ns 2.14 ns 4
stringa e;_stddev 0.030 ns 0.030 ns 4
stringa e;_cv 1.40 % 1.40 % 4
lstringa<20> e;_mean 2.21 ns 2.21 ns 4
lstringa<20> e;_median 2.20 ns 2.20 ns 4
lstringa<20> e;_stddev 0.049 ns 0.049 ns 4
lstringa<20> e;_cv 2.22 % 2.22 % 4
lstringa<40> e;_mean 2.24 ns 2.24 ns 4
lstringa<40> e;_median 2.22 ns 2.22 ns 4
lstringa<40> e;_stddev 0.054 ns 0.054 ns 4
lstringa<40> e;_cv 2.39 % 2.39 % 4
----- Create Str from short literal (9 symbols) --------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "Test text";_mean 2.42 ns 2.42 ns 4
std::string e = "Test text";_median 2.42 ns 2.42 ns 4
std::string e = "Test text";_stddev 0.070 ns 0.070 ns 4
std::string e = "Test text";_cv 2.91 % 2.91 % 4
std::string_view e = "Test text";_mean 1.09 ns 1.09 ns 4
std::string_view e = "Test text";_median 1.08 ns 1.08 ns 4
std::string_view e = "Test text";_stddev 0.013 ns 0.013 ns 4
std::string_view e = "Test text";_cv 1.24 % 1.24 % 4
ssa e = "Test text";_mean 0.732 ns 0.732 ns 4
ssa e = "Test text";_median 0.720 ns 0.720 ns 4
ssa e = "Test text";_stddev 0.026 ns 0.026 ns 4
ssa e = "Test text";_cv 3.50 % 3.50 % 4
stringa e = "Test text";_mean 2.18 ns 2.18 ns 4
stringa e = "Test text";_median 2.19 ns 2.19 ns 4
stringa e = "Test text";_stddev 0.018 ns 0.018 ns 4
stringa e = "Test text";_cv 0.84 % 0.84 % 4
lstringa<20> e = "Test text";_mean 2.62 ns 2.62 ns 4
lstringa<20> e = "Test text";_median 2.62 ns 2.62 ns 4
lstringa<20> e = "Test text";_stddev 0.059 ns 0.059 ns 4
lstringa<20> e = "Test text";_cv 2.24 % 2.24 % 4
lstringa<40> e = "Test text";_mean 2.58 ns 2.58 ns 4
lstringa<40> e = "Test text";_median 2.59 ns 2.59 ns 4
lstringa<40> e = "Test text";_stddev 0.014 ns 0.014 ns 4
lstringa<40> e = "Test text";_cv 0.53 % 0.53 % 4
----- Create Str from long literal (30 symbols) ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "123456789012345678901234567890";_mean 23.6 ns 23.6 ns 4
std::string e = "123456789012345678901234567890";_median 23.6 ns 23.6 ns 4
std::string e = "123456789012345678901234567890";_stddev 0.450 ns 0.450 ns 4
std::string e = "123456789012345678901234567890";_cv 1.91 % 1.91 % 4
std::string_view e = "123456789012345678901234567890";_mean 1.12 ns 1.12 ns 4
std::string_view e = "123456789012345678901234567890";_median 1.10 ns 1.10 ns 4
std::string_view e = "123456789012345678901234567890";_stddev 0.053 ns 0.053 ns 4
std::string_view e = "123456789012345678901234567890";_cv 4.71 % 4.71 % 4
ssa e = "123456789012345678901234567890";_mean 0.720 ns 0.720 ns 4
ssa e = "123456789012345678901234567890";_median 0.720 ns 0.720 ns 4
ssa e = "123456789012345678901234567890";_stddev 0.004 ns 0.004 ns 4
ssa e = "123456789012345678901234567890";_cv 0.51 % 0.51 % 4
stringa e = "123456789012345678901234567890";_mean 2.15 ns 2.15 ns 4
stringa e = "123456789012345678901234567890";_median 2.15 ns 2.15 ns 4
stringa e = "123456789012345678901234567890";_stddev 0.010 ns 0.010 ns 4
stringa e = "123456789012345678901234567890";_cv 0.46 % 0.46 % 4
lstringa<20> e = "123456789012345678901234567890";_mean 24.6 ns 24.6 ns 4
lstringa<20> e = "123456789012345678901234567890";_median 24.4 ns 24.4 ns 4
lstringa<20> e = "123456789012345678901234567890";_stddev 0.935 ns 0.935 ns 4
lstringa<20> e = "123456789012345678901234567890";_cv 3.80 % 3.80 % 4
lstringa<40> e = "123456789012345678901234567890";_mean 2.90 ns 2.90 ns 4
lstringa<40> e = "123456789012345678901234567890";_median 2.91 ns 2.91 ns 4
lstringa<40> e = "123456789012345678901234567890";_stddev 0.023 ns 0.023 ns 4
lstringa<40> e = "123456789012345678901234567890";_cv 0.79 % 0.79 % 4
----- Create copy of Str with 9 symbols ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "Test text"; auto c{e};_mean 3.63 ns 3.63 ns 4
std::string e = "Test text"; auto c{e};_median 3.61 ns 3.61 ns 4
std::string e = "Test text"; auto c{e};_stddev 0.064 ns 0.063 ns 4
std::string e = "Test text"; auto c{e};_cv 1.75 % 1.75 % 4
std::string_view e = "Test text"; auto c{e};_mean 1.08 ns 1.08 ns 4
std::string_view e = "Test text"; auto c{e};_median 1.08 ns 1.08 ns 4
std::string_view e = "Test text"; auto c{e};_stddev 0.014 ns 0.014 ns 4
std::string_view e = "Test text"; auto c{e};_cv 1.31 % 1.31 % 4
ssa e = "Test text"; auto c{e};_mean 1.10 ns 1.10 ns 4
ssa e = "Test text"; auto c{e};_median 1.10 ns 1.10 ns 4
ssa e = "Test text"; auto c{e};_stddev 0.018 ns 0.018 ns 4
ssa e = "Test text"; auto c{e};_cv 1.62 % 1.62 % 4
stringa e = "Test text"; auto c{e};_mean 2.49 ns 2.49 ns 4
stringa e = "Test text"; auto c{e};_median 2.48 ns 2.48 ns 4
stringa e = "Test text"; auto c{e};_stddev 0.038 ns 0.038 ns 4
stringa e = "Test text"; auto c{e};_cv 1.55 % 1.55 % 4
lstringa<20> e = "Test text"; auto c{e};_mean 5.22 ns 5.22 ns 4
lstringa<20> e = "Test text"; auto c{e};_median 5.20 ns 5.20 ns 4
lstringa<20> e = "Test text"; auto c{e};_stddev 0.197 ns 0.197 ns 4
lstringa<20> e = "Test text"; auto c{e};_cv 3.78 % 3.78 % 4
lstringa<40> e = "Test text"; auto c{e};_mean 5.43 ns 5.43 ns 4
lstringa<40> e = "Test text"; auto c{e};_median 5.42 ns 5.42 ns 4
lstringa<40> e = "Test text"; auto c{e};_stddev 0.083 ns 0.083 ns 4
lstringa<40> e = "Test text"; auto c{e};_cv 1.54 % 1.53 % 4
----- Create copy of Str with 30 symbols ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "123456789012345678901234567890"; auto c{e};_mean 48.4 ns 48.4 ns 4
std::string e = "123456789012345678901234567890"; auto c{e};_median 48.0 ns 48.0 ns 4
std::string e = "123456789012345678901234567890"; auto c{e};_stddev 1.48 ns 1.48 ns 4
std::string e = "123456789012345678901234567890"; auto c{e};_cv 3.05 % 3.05 % 4
std::string_view e = "123456789012345678901234567890"; auto c{e};_mean 1.11 ns 1.11 ns 4
std::string_view e = "123456789012345678901234567890"; auto c{e};_median 1.09 ns 1.09 ns 4
std::string_view e = "123456789012345678901234567890"; auto c{e};_stddev 0.034 ns 0.034 ns 4
std::string_view e = "123456789012345678901234567890"; auto c{e};_cv 3.03 % 3.03 % 4
ssa e = "123456789012345678901234567890"; auto c{e};_mean 0.745 ns 0.745 ns 4
ssa e = "123456789012345678901234567890"; auto c{e};_median 0.737 ns 0.737 ns 4
ssa e = "123456789012345678901234567890"; auto c{e};_stddev 0.023 ns 0.023 ns 4
ssa e = "123456789012345678901234567890"; auto c{e};_cv 3.05 % 3.05 % 4
stringa e = "123456789012345678901234567890"; auto c{e};_mean 2.17 ns 2.17 ns 4
stringa e = "123456789012345678901234567890"; auto c{e};_median 2.17 ns 2.17 ns 4
stringa e = "123456789012345678901234567890"; auto c{e};_stddev 0.010 ns 0.010 ns 4
stringa e = "123456789012345678901234567890"; auto c{e};_cv 0.44 % 0.44 % 4
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_mean 23.4 ns 23.4 ns 4
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_median 23.5 ns 23.5 ns 4
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_stddev 0.612 ns 0.612 ns 4
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_cv 2.61 % 2.61 % 4
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_mean 14.7 ns 14.7 ns 4
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_median 14.7 ns 14.7 ns 4
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_stddev 0.419 ns 0.419 ns 4
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_cv 2.84 % 2.84 % 4
----- Find 9 symbols text in end of 99 symbols text ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string::find;_mean 44.7 ns 44.7 ns 4
std::string::find;_median 44.4 ns 44.4 ns 4
std::string::find;_stddev 1.26 ns 1.26 ns 4
std::string::find;_cv 2.82 % 2.82 % 4
std::string_view::find;_mean 46.0 ns 46.0 ns 4
std::string_view::find;_median 46.1 ns 46.1 ns 4
std::string_view::find;_stddev 0.475 ns 0.474 ns 4
std::string_view::find;_cv 1.03 % 1.03 % 4
ssa::find;_mean 43.7 ns 43.7 ns 4
ssa::find;_median 43.6 ns 43.6 ns 4
ssa::find;_stddev 0.313 ns 0.313 ns 4
ssa::find;_cv 0.72 % 0.72 % 4
stringa::find;_mean 43.8 ns 43.8 ns 4
stringa::find;_median 43.8 ns 43.8 ns 4
stringa::find;_stddev 0.275 ns 0.275 ns 4
stringa::find;_cv 0.63 % 0.63 % 4
lstringa<20>::find;_mean 39.3 ns 39.3 ns 4
lstringa<20>::find;_median 39.2 ns 39.2 ns 4
lstringa<20>::find;_stddev 0.396 ns 0.396 ns 4
lstringa<20>::find;_cv 1.01 % 1.01 % 4
lstringa<40>::find;_mean 40.3 ns 40.3 ns 4
lstringa<40>::find;_median 40.5 ns 40.5 ns 4
lstringa<40>::find;_stddev 0.595 ns 0.594 ns 4
lstringa<40>::find;_cv 1.48 % 1.47 % 4
------- Copy not literal Str with N symbols ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string copy{str_with_len_N};/15_mean 48.6 ns 48.6 ns 4
std::string copy{str_with_len_N};/15_median 47.7 ns 47.7 ns 4
std::string copy{str_with_len_N};/15_stddev 2.43 ns 2.43 ns 4
std::string copy{str_with_len_N};/15_cv 5.00 % 5.00 % 4
std::string copy{str_with_len_N};/16_mean 49.7 ns 49.7 ns 4
std::string copy{str_with_len_N};/16_median 47.6 ns 47.6 ns 4
std::string copy{str_with_len_N};/16_stddev 5.03 ns 5.03 ns 4
std::string copy{str_with_len_N};/16_cv 10.11 % 10.11 % 4
std::string copy{str_with_len_N};/23_mean 51.3 ns 51.3 ns 4
std::string copy{str_with_len_N};/23_median 48.6 ns 48.6 ns 4
std::string copy{str_with_len_N};/23_stddev 6.37 ns 6.37 ns 4
std::string copy{str_with_len_N};/23_cv 12.43 % 12.43 % 4
std::string copy{str_with_len_N};/24_mean 48.4 ns 48.5 ns 4
std::string copy{str_with_len_N};/24_median 46.9 ns 46.9 ns 4
std::string copy{str_with_len_N};/24_stddev 3.42 ns 3.42 ns 4
std::string copy{str_with_len_N};/24_cv 7.06 % 7.06 % 4
std::string copy{str_with_len_N};/32_mean 53.5 ns 53.5 ns 4
std::string copy{str_with_len_N};/32_median 52.7 ns 52.7 ns 4
std::string copy{str_with_len_N};/32_stddev 2.83 ns 2.83 ns 4
std::string copy{str_with_len_N};/32_cv 5.30 % 5.30 % 4
std::string copy{str_with_len_N};/64_mean 55.0 ns 55.0 ns 4
std::string copy{str_with_len_N};/64_median 55.3 ns 55.3 ns 4
std::string copy{str_with_len_N};/64_stddev 2.04 ns 2.04 ns 4
std::string copy{str_with_len_N};/64_cv 3.71 % 3.71 % 4
std::string copy{str_with_len_N};/128_mean 52.0 ns 52.0 ns 4
std::string copy{str_with_len_N};/128_median 52.0 ns 52.0 ns 4
std::string copy{str_with_len_N};/128_stddev 1.79 ns 1.79 ns 4
std::string copy{str_with_len_N};/128_cv 3.44 % 3.44 % 4
std::string copy{str_with_len_N};/256_mean 60.1 ns 60.1 ns 4
std::string copy{str_with_len_N};/256_median 53.6 ns 53.6 ns 4
std::string copy{str_with_len_N};/256_stddev 15.6 ns 15.6 ns 4
std::string copy{str_with_len_N};/256_cv 25.93 % 25.93 % 4
std::string copy{str_with_len_N};/512_mean 56.8 ns 56.8 ns 4
std::string copy{str_with_len_N};/512_median 56.7 ns 56.7 ns 4
std::string copy{str_with_len_N};/512_stddev 0.783 ns 0.783 ns 4
std::string copy{str_with_len_N};/512_cv 1.38 % 1.38 % 4
std::string copy{str_with_len_N};/1024_mean 70.0 ns 70.0 ns 4
std::string copy{str_with_len_N};/1024_median 69.8 ns 69.8 ns 4
std::string copy{str_with_len_N};/1024_stddev 5.56 ns 5.56 ns 4
std::string copy{str_with_len_N};/1024_cv 7.95 % 7.95 % 4
std::string copy{str_with_len_N};/2048_mean 93.3 ns 93.3 ns 4
std::string copy{str_with_len_N};/2048_median 92.4 ns 92.4 ns 4
std::string copy{str_with_len_N};/2048_stddev 7.64 ns 7.64 ns 4
std::string copy{str_with_len_N};/2048_cv 8.19 % 8.19 % 4
std::string copy{str_with_len_N};/4096_mean 137 ns 137 ns 4
std::string copy{str_with_len_N};/4096_median 136 ns 136 ns 4
std::string copy{str_with_len_N};/4096_stddev 9.36 ns 9.36 ns 4
std::string copy{str_with_len_N};/4096_cv 6.84 % 6.84 % 4
stringa copy{str_with_len_N};/15_mean 2.39 ns 2.39 ns 4
stringa copy{str_with_len_N};/15_median 2.37 ns 2.37 ns 4
stringa copy{str_with_len_N};/15_stddev 0.061 ns 0.061 ns 4
stringa copy{str_with_len_N};/15_cv 2.53 % 2.53 % 4
stringa copy{str_with_len_N};/16_mean 4.85 ns 4.85 ns 4
stringa copy{str_with_len_N};/16_median 4.80 ns 4.80 ns 4
stringa copy{str_with_len_N};/16_stddev 0.154 ns 0.154 ns 4
stringa copy{str_with_len_N};/16_cv 3.18 % 3.18 % 4
stringa copy{str_with_len_N};/23_mean 4.85 ns 4.85 ns 4
stringa copy{str_with_len_N};/23_median 4.82 ns 4.82 ns 4
stringa copy{str_with_len_N};/23_stddev 0.119 ns 0.119 ns 4
stringa copy{str_with_len_N};/23_cv 2.45 % 2.45 % 4
stringa copy{str_with_len_N};/24_mean 4.87 ns 4.87 ns 4
stringa copy{str_with_len_N};/24_median 4.83 ns 4.83 ns 4
stringa copy{str_with_len_N};/24_stddev 0.098 ns 0.098 ns 4
stringa copy{str_with_len_N};/24_cv 2.01 % 2.01 % 4
stringa copy{str_with_len_N};/32_mean 4.97 ns 4.97 ns 4
stringa copy{str_with_len_N};/32_median 4.97 ns 4.97 ns 4
stringa copy{str_with_len_N};/32_stddev 0.195 ns 0.195 ns 4
stringa copy{str_with_len_N};/32_cv 3.93 % 3.93 % 4
stringa copy{str_with_len_N};/64_mean 4.82 ns 4.82 ns 4
stringa copy{str_with_len_N};/64_median 4.84 ns 4.84 ns 4
stringa copy{str_with_len_N};/64_stddev 0.064 ns 0.064 ns 4
stringa copy{str_with_len_N};/64_cv 1.33 % 1.33 % 4
stringa copy{str_with_len_N};/128_mean 4.83 ns 4.83 ns 4
stringa copy{str_with_len_N};/128_median 4.84 ns 4.84 ns 4
stringa copy{str_with_len_N};/128_stddev 0.108 ns 0.108 ns 4
stringa copy{str_with_len_N};/128_cv 2.24 % 2.24 % 4
stringa copy{str_with_len_N};/256_mean 4.82 ns 4.82 ns 4
stringa copy{str_with_len_N};/256_median 4.77 ns 4.77 ns 4
stringa copy{str_with_len_N};/256_stddev 0.143 ns 0.143 ns 4
stringa copy{str_with_len_N};/256_cv 2.96 % 2.96 % 4
stringa copy{str_with_len_N};/512_mean 4.81 ns 4.81 ns 4
stringa copy{str_with_len_N};/512_median 4.78 ns 4.78 ns 4
stringa copy{str_with_len_N};/512_stddev 0.082 ns 0.082 ns 4
stringa copy{str_with_len_N};/512_cv 1.71 % 1.71 % 4
stringa copy{str_with_len_N};/1024_mean 4.82 ns 4.82 ns 4
stringa copy{str_with_len_N};/1024_median 4.77 ns 4.77 ns 4
stringa copy{str_with_len_N};/1024_stddev 0.129 ns 0.129 ns 4
stringa copy{str_with_len_N};/1024_cv 2.69 % 2.69 % 4
stringa copy{str_with_len_N};/2048_mean 4.79 ns 4.79 ns 4
stringa copy{str_with_len_N};/2048_median 4.80 ns 4.80 ns 4
stringa copy{str_with_len_N};/2048_stddev 0.030 ns 0.030 ns 4
stringa copy{str_with_len_N};/2048_cv 0.63 % 0.63 % 4
stringa copy{str_with_len_N};/4096_mean 4.75 ns 4.75 ns 4
stringa copy{str_with_len_N};/4096_median 4.75 ns 4.75 ns 4
stringa copy{str_with_len_N};/4096_stddev 0.015 ns 0.015 ns 4
stringa copy{str_with_len_N};/4096_cv 0.33 % 0.33 % 4
lstringa<16> copy{str_with_len_N};/15_mean 4.70 ns 4.70 ns 4
lstringa<16> copy{str_with_len_N};/15_median 4.68 ns 4.68 ns 4
lstringa<16> copy{str_with_len_N};/15_stddev 0.161 ns 0.161 ns 4
lstringa<16> copy{str_with_len_N};/15_cv 3.42 % 3.42 % 4
lstringa<16> copy{str_with_len_N};/16_mean 14.9 ns 14.9 ns 4
lstringa<16> copy{str_with_len_N};/16_median 14.9 ns 14.9 ns 4
lstringa<16> copy{str_with_len_N};/16_stddev 0.202 ns 0.202 ns 4
lstringa<16> copy{str_with_len_N};/16_cv 1.36 % 1.36 % 4
lstringa<16> copy{str_with_len_N};/23_mean 38.6 ns 38.6 ns 4
lstringa<16> copy{str_with_len_N};/23_median 38.3 ns 38.3 ns 4
lstringa<16> copy{str_with_len_N};/23_stddev 1.28 ns 1.28 ns 4
lstringa<16> copy{str_with_len_N};/23_cv 3.31 % 3.31 % 4
lstringa<16> copy{str_with_len_N};/24_mean 37.9 ns 37.9 ns 4
lstringa<16> copy{str_with_len_N};/24_median 37.7 ns 37.7 ns 4
lstringa<16> copy{str_with_len_N};/24_stddev 1.61 ns 1.61 ns 4
lstringa<16> copy{str_with_len_N};/24_cv 4.26 % 4.26 % 4
lstringa<16> copy{str_with_len_N};/32_mean 42.5 ns 42.5 ns 4
lstringa<16> copy{str_with_len_N};/32_median 42.4 ns 42.4 ns 4
lstringa<16> copy{str_with_len_N};/32_stddev 3.51 ns 3.51 ns 4
lstringa<16> copy{str_with_len_N};/32_cv 8.24 % 8.24 % 4
lstringa<16> copy{str_with_len_N};/64_mean 39.2 ns 39.2 ns 4
lstringa<16> copy{str_with_len_N};/64_median 37.3 ns 37.3 ns 4
lstringa<16> copy{str_with_len_N};/64_stddev 3.90 ns 3.90 ns 4
lstringa<16> copy{str_with_len_N};/64_cv 9.96 % 9.96 % 4
lstringa<16> copy{str_with_len_N};/128_mean 42.8 ns 42.8 ns 4
lstringa<16> copy{str_with_len_N};/128_median 43.0 ns 43.0 ns 4
lstringa<16> copy{str_with_len_N};/128_stddev 1.29 ns 1.29 ns 4
lstringa<16> copy{str_with_len_N};/128_cv 3.01 % 3.01 % 4
lstringa<16> copy{str_with_len_N};/256_mean 48.1 ns 48.1 ns 4
lstringa<16> copy{str_with_len_N};/256_median 42.8 ns 42.8 ns 4
lstringa<16> copy{str_with_len_N};/256_stddev 13.7 ns 13.7 ns 4
lstringa<16> copy{str_with_len_N};/256_cv 28.49 % 28.49 % 4
lstringa<16> copy{str_with_len_N};/512_mean 48.5 ns 48.5 ns 4
lstringa<16> copy{str_with_len_N};/512_median 49.0 ns 49.0 ns 4
lstringa<16> copy{str_with_len_N};/512_stddev 1.62 ns 1.62 ns 4
lstringa<16> copy{str_with_len_N};/512_cv 3.35 % 3.35 % 4
lstringa<16> copy{str_with_len_N};/1024_mean 59.5 ns 59.5 ns 4
lstringa<16> copy{str_with_len_N};/1024_median 56.0 ns 56.0 ns 4
lstringa<16> copy{str_with_len_N};/1024_stddev 10.1 ns 10.1 ns 4
lstringa<16> copy{str_with_len_N};/1024_cv 16.97 % 16.97 % 4
lstringa<16> copy{str_with_len_N};/2048_mean 82.6 ns 82.6 ns 4
lstringa<16> copy{str_with_len_N};/2048_median 82.9 ns 82.9 ns 4
lstringa<16> copy{str_with_len_N};/2048_stddev 5.29 ns 5.29 ns 4
lstringa<16> copy{str_with_len_N};/2048_cv 6.41 % 6.41 % 4
lstringa<16> copy{str_with_len_N};/4096_mean 124 ns 124 ns 4
lstringa<16> copy{str_with_len_N};/4096_median 124 ns 124 ns 4
lstringa<16> copy{str_with_len_N};/4096_stddev 1.96 ns 1.96 ns 4
lstringa<16> copy{str_with_len_N};/4096_cv 1.58 % 1.58 % 4
lstringa<512> copy{str_with_len_N};/15_mean 4.94 ns 4.94 ns 4
lstringa<512> copy{str_with_len_N};/15_median 4.90 ns 4.90 ns 4
lstringa<512> copy{str_with_len_N};/15_stddev 0.147 ns 0.147 ns 4
lstringa<512> copy{str_with_len_N};/15_cv 2.98 % 2.98 % 4
lstringa<512> copy{str_with_len_N};/16_mean 16.2 ns 16.2 ns 4
lstringa<512> copy{str_with_len_N};/16_median 15.9 ns 15.9 ns 4
lstringa<512> copy{str_with_len_N};/16_stddev 1.39 ns 1.39 ns 4
lstringa<512> copy{str_with_len_N};/16_cv 8.54 % 8.54 % 4
lstringa<512> copy{str_with_len_N};/23_mean 16.3 ns 16.3 ns 4
lstringa<512> copy{str_with_len_N};/23_median 16.1 ns 16.1 ns 4
lstringa<512> copy{str_with_len_N};/23_stddev 0.876 ns 0.875 ns 4
lstringa<512> copy{str_with_len_N};/23_cv 5.36 % 5.36 % 4
lstringa<512> copy{str_with_len_N};/24_mean 16.3 ns 16.3 ns 4
lstringa<512> copy{str_with_len_N};/24_median 16.2 ns 16.2 ns 4
lstringa<512> copy{str_with_len_N};/24_stddev 0.533 ns 0.533 ns 4
lstringa<512> copy{str_with_len_N};/24_cv 3.27 % 3.27 % 4
lstringa<512> copy{str_with_len_N};/32_mean 19.5 ns 19.5 ns 4
lstringa<512> copy{str_with_len_N};/32_median 19.3 ns 19.3 ns 4
lstringa<512> copy{str_with_len_N};/32_stddev 1.21 ns 1.21 ns 4
lstringa<512> copy{str_with_len_N};/32_cv 6.20 % 6.20 % 4
lstringa<512> copy{str_with_len_N};/64_mean 17.9 ns 17.9 ns 4
lstringa<512> copy{str_with_len_N};/64_median 18.0 ns 18.0 ns 4
lstringa<512> copy{str_with_len_N};/64_stddev 0.816 ns 0.815 ns 4
lstringa<512> copy{str_with_len_N};/64_cv 4.55 % 4.55 % 4
lstringa<512> copy{str_with_len_N};/128_mean 19.0 ns 19.0 ns 4
lstringa<512> copy{str_with_len_N};/128_median 19.1 ns 19.1 ns 4
lstringa<512> copy{str_with_len_N};/128_stddev 0.637 ns 0.637 ns 4
lstringa<512> copy{str_with_len_N};/128_cv 3.35 % 3.35 % 4
lstringa<512> copy{str_with_len_N};/256_mean 19.8 ns 19.8 ns 4
lstringa<512> copy{str_with_len_N};/256_median 19.6 ns 19.6 ns 4
lstringa<512> copy{str_with_len_N};/256_stddev 0.908 ns 0.908 ns 4
lstringa<512> copy{str_with_len_N};/256_cv 4.58 % 4.58 % 4
lstringa<512> copy{str_with_len_N};/512_mean 22.9 ns 22.9 ns 4
lstringa<512> copy{str_with_len_N};/512_median 23.0 ns 23.0 ns 4
lstringa<512> copy{str_with_len_N};/512_stddev 0.853 ns 0.853 ns 4
lstringa<512> copy{str_with_len_N};/512_cv 3.72 % 3.72 % 4
lstringa<512> copy{str_with_len_N};/1024_mean 57.7 ns 57.7 ns 4
lstringa<512> copy{str_with_len_N};/1024_median 56.4 ns 56.4 ns 4
lstringa<512> copy{str_with_len_N};/1024_stddev 5.47 ns 5.47 ns 4
lstringa<512> copy{str_with_len_N};/1024_cv 9.49 % 9.49 % 4
lstringa<512> copy{str_with_len_N};/2048_mean 79.9 ns 79.9 ns 4
lstringa<512> copy{str_with_len_N};/2048_median 79.4 ns 79.4 ns 4
lstringa<512> copy{str_with_len_N};/2048_stddev 6.13 ns 6.13 ns 4
lstringa<512> copy{str_with_len_N};/2048_cv 7.67 % 7.67 % 4
lstringa<512> copy{str_with_len_N};/4096_mean 122 ns 122 ns 4
lstringa<512> copy{str_with_len_N};/4096_median 122 ns 122 ns 4
lstringa<512> copy{str_with_len_N};/4096_stddev 1.17 ns 1.17 ns 4
lstringa<512> copy{str_with_len_N};/4096_cv 0.96 % 0.96 % 4
----- Convert to int '1234567' ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_mean 93.0 ns 93.0 ns 4
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_median 93.7 ns 93.7 ns 4
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_stddev 3.21 ns 3.21 ns 4
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_cv 3.45 % 3.45 % 4
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_mean 27.4 ns 27.4 ns 4
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_median 27.3 ns 27.3 ns 4
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_stddev 0.549 ns 0.549 ns 4
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_cv 2.00 % 2.00 % 4
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 18.9 ns 18.9 ns 4
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_median 18.9 ns 18.9 ns 4
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.319 ns 0.319 ns 4
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 1.69 % 1.69 % 4
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 18.9 ns 18.9 ns 4
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_median 18.9 ns 18.9 ns 4
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.637 ns 0.637 ns 4
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 3.37 % 3.37 % 4
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 19.0 ns 19.0 ns 4
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_median 18.9 ns 18.9 ns 4
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.516 ns 0.516 ns 4
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 2.72 % 2.72 % 4
----- Convert to unsigned 'abcDef' ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_mean 69.8 ns 69.8 ns 4
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_median 69.6 ns 69.6 ns 4
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_stddev 1.90 ns 1.90 ns 4
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_cv 2.72 % 2.72 % 4
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_mean 25.8 ns 25.8 ns 4
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_median 25.6 ns 25.6 ns 4
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_stddev 0.524 ns 0.524 ns 4
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_cv 2.03 % 2.03 % 4
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 19.8 ns 19.8 ns 4
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 19.6 ns 19.6 ns 4
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.742 ns 0.742 ns 4
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 3.75 % 3.75 % 4
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 19.8 ns 19.8 ns 4
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 19.5 ns 19.5 ns 4
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.640 ns 0.640 ns 4
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 3.24 % 3.24 % 4
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 19.7 ns 19.7 ns 4
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 19.6 ns 19.6 ns 4
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.276 ns 0.276 ns 4
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 1.40 % 1.40 % 4
----- Convert to int ' 1234567' ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_mean 99.5 ns 99.5 ns 4
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_median 99.0 ns 99.0 ns 4
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_stddev 2.51 ns 2.51 ns 4
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_cv 2.52 % 2.52 % 4
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_mean 24.9 ns 24.9 ns 4
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_median 24.9 ns 24.9 ns 4
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_stddev 0.251 ns 0.251 ns 4
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_cv 1.01 % 1.01 % 4
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_mean 19.3 ns 19.3 ns 4
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_median 19.2 ns 19.2 ns 4
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_stddev 0.224 ns 0.225 ns 4
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_cv 1.16 % 1.16 % 4
----- Convert to double '1234.567e10' ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_mean 305 ns 305 ns 4
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_median 303 ns 303 ns 4
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_stddev 6.79 ns 6.79 ns 4
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_cv 2.23 % 2.23 % 4
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_mean 109 ns 109 ns 4
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_median 109 ns 109 ns 4
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_stddev 0.910 ns 0.909 ns 4
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_cv 0.83 % 0.83 % 4
ssa s = "1234.567e10"; double res = *s.to_double()_mean 42.9 ns 42.9 ns 4
ssa s = "1234.567e10"; double res = *s.to_double()_median 43.0 ns 43.0 ns 4
ssa s = "1234.567e10"; double res = *s.to_double()_stddev 0.436 ns 0.436 ns 4
ssa s = "1234.567e10"; double res = *s.to_double()_cv 1.02 % 1.02 % 4
-- Append const literal of 16 bytes 64 times, 1024 total length --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; ... str << "abbaabbaabbaabba";_mean 6503 ns 6503 ns 4
std::stringstream str; ... str << "abbaabbaabbaabba";_median 6490 ns 6490 ns 4
std::stringstream str; ... str << "abbaabbaabbaabba";_stddev 102 ns 102 ns 4
std::stringstream str; ... str << "abbaabbaabbaabba";_cv 1.57 % 1.57 % 4
std::string str; ... str += "abbaabbaabbaabba";_mean 825 ns 825 ns 4
std::string str; ... str += "abbaabbaabbaabba";_median 817 ns 817 ns 4
std::string str; ... str += "abbaabbaabbaabba";_stddev 54.4 ns 54.4 ns 4
std::string str; ... str += "abbaabbaabbaabba";_cv 6.59 % 6.59 % 4
lstringa<8> str; ... str += "abbaabbaabbaabba";_mean 732 ns 732 ns 4
lstringa<8> str; ... str += "abbaabbaabbaabba";_median 735 ns 735 ns 4
lstringa<8> str; ... str += "abbaabbaabbaabba";_stddev 23.5 ns 23.5 ns 4
lstringa<8> str; ... str += "abbaabbaabbaabba";_cv 3.21 % 3.21 % 4
lstringa<128> str; ... str += "abbaabbaabbaabba";_mean 582 ns 582 ns 4
lstringa<128> str; ... str += "abbaabbaabbaabba";_median 579 ns 579 ns 4
lstringa<128> str; ... str += "abbaabbaabbaabba";_stddev 8.29 ns 8.29 ns 4
lstringa<128> str; ... str += "abbaabbaabbaabba";_cv 1.42 % 1.43 % 4
lstringa<512> str; ... str += "abbaabbaabbaabba";_mean 481 ns 481 ns 4
lstringa<512> str; ... str += "abbaabbaabbaabba";_median 483 ns 483 ns 4
lstringa<512> str; ... str += "abbaabbaabbaabba";_stddev 8.41 ns 8.41 ns 4
lstringa<512> str; ... str += "abbaabbaabbaabba";_cv 1.75 % 1.75 % 4
lstringa<1024> str; ... str += "abbaabbaabbaabba";_mean 416 ns 416 ns 4
lstringa<1024> str; ... str += "abbaabbaabbaabba";_median 418 ns 418 ns 4
lstringa<1024> str; ... str += "abbaabbaabbaabba";_stddev 5.25 ns 5.25 ns 4
lstringa<1024> str; ... str += "abbaabbaabbaabba";_cv 1.26 % 1.26 % 4
-- Append string of 16 bytes and const literal of 16 bytes 32 times, 1024 total length --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_mean 6973 ns 6973 ns 4
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_median 6904 ns 6904 ns 4
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_stddev 167 ns 167 ns 4
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_cv 2.39 % 2.39 % 4
std::string str; ... str += str_var + "abbaabbaabbaabba";_mean 2270 ns 2270 ns 4
std::string str; ... str += str_var + "abbaabbaabbaabba";_median 2208 ns 2208 ns 4
std::string str; ... str += str_var + "abbaabbaabbaabba";_stddev 139 ns 139 ns 4
std::string str; ... str += str_var + "abbaabbaabbaabba";_cv 6.11 % 6.11 % 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_mean 1025 ns 1025 ns 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_median 1030 ns 1030 ns 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_stddev 68.3 ns 68.3 ns 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_cv 6.67 % 6.67 % 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_mean 879 ns 879 ns 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_median 882 ns 882 ns 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_stddev 51.8 ns 51.8 ns 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_cv 5.89 % 5.89 % 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_mean 749 ns 749 ns 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_median 751 ns 751 ns 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_stddev 18.4 ns 18.4 ns 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_cv 2.46 % 2.46 % 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_mean 694 ns 694 ns 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_median 702 ns 702 ns 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_stddev 28.9 ns 28.9 ns 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_cv 4.17 % 4.17 % 4
-- Append string of 16 bytes and const literal of 16 bytes 2048 times, 65536 total length --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_mean 344582 ns 344584 ns 4
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_median 344763 ns 344766 ns 4
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_stddev 6719 ns 6719 ns 4
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_cv 1.95 % 1.95 % 4
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 121536 ns 121536 ns 4
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 120397 ns 120398 ns 4
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 5754 ns 5754 ns 4
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 4.73 % 4.73 % 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 51397 ns 51398 ns 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 51291 ns 51292 ns 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 2397 ns 2397 ns 4
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 4.66 % 4.66 % 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 47195 ns 47195 ns 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 46613 ns 46612 ns 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 1650 ns 1650 ns 4
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 3.50 % 3.50 % 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 48258 ns 48258 ns 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 48646 ns 48646 ns 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 1292 ns 1292 ns 4
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 2.68 % 2.68 % 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 47889 ns 47889 ns 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 47766 ns 47766 ns 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 2121 ns 2121 ns 4
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 4.43 % 4.43 % 4
-- Append 2 string of 16 bytes 32 times, 1024 total length --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; ... str << str_var1 << str_var2;_mean 7153 ns 7153 ns 4
std::stringstream str; ... str << str_var1 << str_var2;_median 7224 ns 7224 ns 4
std::stringstream str; ... str << str_var1 << str_var2;_stddev 326 ns 326 ns 4
std::stringstream str; ... str << str_var1 << str_var2;_cv 4.55 % 4.55 % 4
std::string str; ... str += str_var1 + str_var2;_mean 2679 ns 2679 ns 4
std::string str; ... str += str_var1 + str_var2;_median 2704 ns 2704 ns 4
std::string str; ... str += str_var1 + str_var2;_stddev 151 ns 151 ns 4
std::string str; ... str += str_var1 + str_var2;_cv 5.64 % 5.64 % 4
lstringa<16> str; ... str += str_var1 + str_var2;_mean 1192 ns 1192 ns 4
lstringa<16> str; ... str += str_var1 + str_var2;_median 1195 ns 1195 ns 4
lstringa<16> str; ... str += str_var1 + str_var2;_stddev 60.3 ns 60.3 ns 4
lstringa<16> str; ... str += str_var1 + str_var2;_cv 5.06 % 5.06 % 4
lstringa<128> str; ... str += str_var1 + str_var2;_mean 1072 ns 1072 ns 4
lstringa<128> str; ... str += str_var1 + str_var2;_median 1066 ns 1066 ns 4
lstringa<128> str; ... str += str_var1 + str_var2;_stddev 56.4 ns 56.4 ns 4
lstringa<128> str; ... str += str_var1 + str_var2;_cv 5.26 % 5.26 % 4
lstringa<512> str; ... str += str_var1 + str_var2;_mean 969 ns 969 ns 4
lstringa<512> str; ... str += str_var1 + str_var2;_median 977 ns 977 ns 4
lstringa<512> str; ... str += str_var1 + str_var2;_stddev 42.6 ns 42.6 ns 4
lstringa<512> str; ... str += str_var1 + str_var2;_cv 4.40 % 4.40 % 4
lstringa<1024> str; ... str += str_var1 + str_var2;_mean 961 ns 961 ns 4
lstringa<1024> str; ... str += str_var1 + str_var2;_median 981 ns 981 ns 4
lstringa<1024> str; ... str += str_var1 + str_var2;_stddev 64.8 ns 64.8 ns 4
lstringa<1024> str; ... str += str_var1 + str_var2;_cv 6.74 % 6.74 % 4
-- Append text, number, text --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; str << "test = " << k << " times";_mean 11771 ns 11771 ns 4
std::stringstream str; str << "test = " << k << " times";_median 11782 ns 11782 ns 4
std::stringstream str; str << "test = " << k << " times";_stddev 60.7 ns 60.7 ns 4
std::stringstream str; str << "test = " << k << " times";_cv 0.52 % 0.52 % 4
std::string str = "test = " + std::to_string(k) + " times";_mean 1737 ns 1737 ns 4
std::string str = "test = " + std::to_string(k) + " times";_median 1737 ns 1737 ns 4
std::string str = "test = " + std::to_string(k) + " times";_stddev 30.7 ns 30.7 ns 4
std::string str = "test = " + std::to_string(k) + " times";_cv 1.76 % 1.77 % 4
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_mean 5495 ns 5495 ns 4
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_median 5500 ns 5500 ns 4
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_stddev 78.6 ns 78.6 ns 4
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_cv 1.43 % 1.43 % 4
std::string str = std::format("test = {} times", k);_mean 2890 ns 2890 ns 4
std::string str = std::format("test = {} times", k);_median 2868 ns 2868 ns 4
std::string str = std::format("test = {} times", k);_stddev 77.4 ns 77.4 ns 4
std::string str = std::format("test = {} times", k);_cv 2.68 % 2.68 % 4
lstringa<8> str; str.format("test = {} times", k);_mean 4860 ns 4860 ns 4
lstringa<8> str; str.format("test = {} times", k);_median 4838 ns 4838 ns 4
lstringa<8> str; str.format("test = {} times", k);_stddev 101 ns 101 ns 4
lstringa<8> str; str.format("test = {} times", k);_cv 2.07 % 2.07 % 4
lstringa<32> str; str.format("test = {} times", k);_mean 4213 ns 4213 ns 4
lstringa<32> str; str.format("test = {} times", k);_median 4208 ns 4208 ns 4
lstringa<32> str; str.format("test = {} times", k);_stddev 143 ns 143 ns 4
lstringa<32> str; str.format("test = {} times", k);_cv 3.40 % 3.40 % 4
lstringa<8> str = "test = " + k + " times";_mean 584 ns 584 ns 4
lstringa<8> str = "test = " + k + " times";_median 585 ns 585 ns 4
lstringa<8> str = "test = " + k + " times";_stddev 5.89 ns 5.88 ns 4
lstringa<8> str = "test = " + k + " times";_cv 1.01 % 1.01 % 4
lstringa<32> str = "test = " + k + " times";_mean 332 ns 332 ns 4
lstringa<32> str = "test = " + k + " times";_median 333 ns 333 ns 4
lstringa<32> str = "test = " + k + " times";_stddev 5.81 ns 5.81 ns 4
lstringa<32> str = "test = " + k + " times";_cv 1.75 % 1.75 % 4
stringa str = "test = " + k + " times";_mean 594 ns 594 ns 4
stringa str = "test = " + k + " times";_median 588 ns 588 ns 4
stringa str = "test = " + k + " times";_stddev 19.3 ns 19.3 ns 4
stringa str = "test = " + k + " times";_cv 3.25 % 3.25 % 4
-- Split text and convert to int --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string::find + substr + std::strtol_mean 658 ns 658 ns 4
std::string::find + substr + std::strtol_median 661 ns 661 ns 4
std::string::find + substr + std::strtol_stddev 11.8 ns 11.8 ns 4
std::string::find + substr + std::strtol_cv 1.79 % 1.79 % 4
ssa::splitter + ssa::as_int_mean 243 ns 243 ns 4
ssa::splitter + ssa::as_int_median 243 ns 243 ns 4
ssa::splitter + ssa::as_int_stddev 2.01 ns 2.01 ns 4
ssa::splitter + ssa::as_int_cv 0.83 % 0.83 % 4
ssa::splitf + functor_mean 272 ns 272 ns 4
ssa::splitf + functor_median 270 ns 270 ns 4
ssa::splitf + functor_stddev 4.75 ns 4.75 ns 4
ssa::splitf + functor_cv 1.75 % 1.75 % 4
-- Replace symbols in text ~400 symbols --/repeats:1 0.000 ns 0.000 ns 1000000000000
Naive (and wrong) replace symbols with std::string find + replace_mean 3275 ns 3275 ns 4
Naive (and wrong) replace symbols with std::string find + replace_median 3276 ns 3276 ns 4
Naive (and wrong) replace symbols with std::string find + replace_stddev 208 ns 208 ns 4
Naive (and wrong) replace symbols with std::string find + replace_cv 6.35 % 6.35 % 4
replace symbols with std::string find_first_of + replace_mean 5069 ns 5069 ns 4
replace symbols with std::string find_first_of + replace_median 4983 ns 4983 ns 4
replace symbols with std::string find_first_of + replace_stddev 226 ns 226 ns 4
replace symbols with std::string find_first_of + replace_cv 4.47 % 4.47 % 4
replace symbols with std::string_view find_first_of + copy_mean 3253 ns 3253 ns 4
replace symbols with std::string_view find_first_of + copy_median 3262 ns 3262 ns 4
replace symbols with std::string_view find_first_of + copy_stddev 54.9 ns 54.9 ns 4
replace symbols with std::string_view find_first_of + copy_cv 1.69 % 1.69 % 4
replace runtime symbols with string expressions and without remembering all search results_mean 3098 ns 3098 ns 4
replace runtime symbols with string expressions and without remembering all search results_median 3118 ns 3119 ns 4
replace runtime symbols with string expressions and without remembering all search results_stddev 66.9 ns 66.9 ns 4
replace runtime symbols with string expressions and without remembering all search results_cv 2.16 % 2.16 % 4
replace runtime symbols with simstr and memorization of all search results_mean 2461 ns 2461 ns 4
replace runtime symbols with simstr and memorization of all search results_median 2469 ns 2469 ns 4
replace runtime symbols with simstr and memorization of all search results_stddev 99.1 ns 99.1 ns 4
replace runtime symbols with simstr and memorization of all search results_cv 4.02 % 4.02 % 4
replace const symbols with string expressions and without remembering all search results_mean 2686 ns 2686 ns 4
replace const symbols with string expressions and without remembering all search results_median 2692 ns 2692 ns 4
replace const symbols with string expressions and without remembering all search results_stddev 106 ns 106 ns 4
replace const symbols with string expressions and without remembering all search results_cv 3.96 % 3.96 % 4
replace const symbols with string expressions and memorization of all search results_mean 2207 ns 2207 ns 4
replace const symbols with string expressions and memorization of all search results_median 2173 ns 2173 ns 4
replace const symbols with string expressions and memorization of all search results_stddev 80.4 ns 80.4 ns 4
replace const symbols with string expressions and memorization of all search results_cv 3.64 % 3.64 % 4
-- Replace symbols in text ~40 symbols --/repeats:1 0.000 ns 0.000 ns 1000000000000
Short Naive (and wrong) replace symbols with std::string find + replace_mean 449 ns 449 ns 4
Short Naive (and wrong) replace symbols with std::string find + replace_median 451 ns 451 ns 4
Short Naive (and wrong) replace symbols with std::string find + replace_stddev 10.9 ns 10.9 ns 4
Short Naive (and wrong) replace symbols with std::string find + replace_cv 2.43 % 2.43 % 4
Short replace symbols with std::string find_first_of + replace_mean 662 ns 662 ns 4
Short replace symbols with std::string find_first_of + replace_median 663 ns 663 ns 4
Short replace symbols with std::string find_first_of + replace_stddev 9.62 ns 9.62 ns 4
Short replace symbols with std::string find_first_of + replace_cv 1.45 % 1.45 % 4
Short replace symbols with std::string_view find_first_of + copy_mean 455 ns 455 ns 4
Short replace symbols with std::string_view find_first_of + copy_median 446 ns 446 ns 4
Short replace symbols with std::string_view find_first_of + copy_stddev 27.6 ns 27.6 ns 4
Short replace symbols with std::string_view find_first_of + copy_cv 6.06 % 6.06 % 4
Short replace runtime symbols with string expressions and without remembering all search results_mean 405 ns 405 ns 4
Short replace runtime symbols with string expressions and without remembering all search results_median 405 ns 405 ns 4
Short replace runtime symbols with string expressions and without remembering all search results_stddev 14.1 ns 14.1 ns 4
Short replace runtime symbols with string expressions and without remembering all search results_cv 3.47 % 3.47 % 4
Short replace runtime symbols with simstr and memorization of all search results_mean 445 ns 445 ns 4
Short replace runtime symbols with simstr and memorization of all search results_median 439 ns 439 ns 4
Short replace runtime symbols with simstr and memorization of all search results_stddev 23.1 ns 23.1 ns 4
Short replace runtime symbols with simstr and memorization of all search results_cv 5.19 % 5.19 % 4
Short replace const symbols with string expressions and without remembering all search results_mean 280 ns 280 ns 4
Short replace const symbols with string expressions and without remembering all search results_median 280 ns 280 ns 4
Short replace const symbols with string expressions and without remembering all search results_stddev 4.86 ns 4.86 ns 4
Short replace const symbols with string expressions and without remembering all search results_cv 1.74 % 1.74 % 4
Short replace const symbols with string expressions and memorization of all search results_mean 320 ns 320 ns 4
Short replace const symbols with string expressions and memorization of all search results_median 320 ns 320 ns 4
Short replace const symbols with string expressions and memorization of all search results_stddev 7.92 ns 7.92 ns 4
Short replace const symbols with string expressions and memorization of all search results_cv 2.48 % 2.47 % 4
----- Replace All Str To Longer Size ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
replace bb to ---- in std::string|64_mean 422 ns 422 ns 4
replace bb to ---- in std::string|64_median 424 ns 424 ns 4
replace bb to ---- in std::string|64_stddev 13.9 ns 13.9 ns 4
replace bb to ---- in std::string|64_cv 3.28 % 3.28 % 4
replace bb to ---- in std::string|256_mean 1316 ns 1316 ns 4
replace bb to ---- in std::string|256_median 1275 ns 1275 ns 4
replace bb to ---- in std::string|256_stddev 94.7 ns 94.7 ns 4
replace bb to ---- in std::string|256_cv 7.20 % 7.20 % 4
replace bb to ---- in std::string|512_mean 2446 ns 2446 ns 4
replace bb to ---- in std::string|512_median 2405 ns 2405 ns 4
replace bb to ---- in std::string|512_stddev 155 ns 155 ns 4
replace bb to ---- in std::string|512_cv 6.35 % 6.35 % 4
replace bb to ---- in std::string|1024_mean 5109 ns 5109 ns 4
replace bb to ---- in std::string|1024_median 5069 ns 5069 ns 4
replace bb to ---- in std::string|1024_stddev 264 ns 264 ns 4
replace bb to ---- in std::string|1024_cv 5.18 % 5.18 % 4
replace bb to ---- in std::string|2048_mean 11848 ns 11848 ns 4
replace bb to ---- in std::string|2048_median 11933 ns 11933 ns 4
replace bb to ---- in std::string|2048_stddev 440 ns 440 ns 4
replace bb to ---- in std::string|2048_cv 3.71 % 3.71 % 4
replace bb to ---- in lstringa<8>|64_mean 313 ns 313 ns 4
replace bb to ---- in lstringa<8>|64_median 308 ns 308 ns 4
replace bb to ---- in lstringa<8>|64_stddev 11.4 ns 11.4 ns 4
replace bb to ---- in lstringa<8>|64_cv 3.64 % 3.64 % 4
replace bb to ---- in lstringa<8>|256_mean 997 ns 997 ns 4
replace bb to ---- in lstringa<8>|256_median 998 ns 998 ns 4
replace bb to ---- in lstringa<8>|256_stddev 37.6 ns 37.6 ns 4
replace bb to ---- in lstringa<8>|256_cv 3.77 % 3.77 % 4
replace bb to ---- in lstringa<8>|512_mean 1738 ns 1738 ns 4
replace bb to ---- in lstringa<8>|512_median 1732 ns 1733 ns 4
replace bb to ---- in lstringa<8>|512_stddev 31.5 ns 31.5 ns 4
replace bb to ---- in lstringa<8>|512_cv 1.81 % 1.81 % 4
replace bb to ---- in lstringa<8>|1024_mean 3403 ns 3403 ns 4
replace bb to ---- in lstringa<8>|1024_median 3421 ns 3421 ns 4
replace bb to ---- in lstringa<8>|1024_stddev 178 ns 178 ns 4
replace bb to ---- in lstringa<8>|1024_cv 5.24 % 5.24 % 4
replace bb to ---- in lstringa<8>|2048_mean 6488 ns 6488 ns 4
replace bb to ---- in lstringa<8>|2048_median 6476 ns 6476 ns 4
replace bb to ---- in lstringa<8>|2048_stddev 110 ns 110 ns 4
replace bb to ---- in lstringa<8>|2048_cv 1.70 % 1.70 % 4
replace bb to ---- by init stringa|64_mean 197 ns 197 ns 4
replace bb to ---- by init stringa|64_median 194 ns 194 ns 4
replace bb to ---- by init stringa|64_stddev 5.78 ns 5.78 ns 4
replace bb to ---- by init stringa|64_cv 2.94 % 2.94 % 4
replace bb to ---- by init stringa|256_mean 637 ns 637 ns 4
replace bb to ---- by init stringa|256_median 641 ns 641 ns 4
replace bb to ---- by init stringa|256_stddev 40.8 ns 40.8 ns 4
replace bb to ---- by init stringa|256_cv 6.41 % 6.41 % 4
replace bb to ---- by init stringa|512_mean 1461 ns 1461 ns 4
replace bb to ---- by init stringa|512_median 1454 ns 1454 ns 4
replace bb to ---- by init stringa|512_stddev 54.7 ns 54.7 ns 4
replace bb to ---- by init stringa|512_cv 3.75 % 3.75 % 4
replace bb to ---- by init stringa|1024_mean 3067 ns 3067 ns 4
replace bb to ---- by init stringa|1024_median 3086 ns 3086 ns 4
replace bb to ---- by init stringa|1024_stddev 77.4 ns 77.4 ns 4
replace bb to ---- by init stringa|1024_cv 2.53 % 2.53 % 4
replace bb to ---- by init stringa|2048_mean 5928 ns 5928 ns 4
replace bb to ---- by init stringa|2048_median 5961 ns 5961 ns 4
replace bb to ---- by init stringa|2048_stddev 140 ns 140 ns 4
replace bb to ---- by init stringa|2048_cv 2.36 % 2.36 % 4
----- Replace All Str To Same Size ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
replace bb to -- in std::string|64_mean 274 ns 274 ns 4
replace bb to -- in std::string|64_median 272 ns 272 ns 4
replace bb to -- in std::string|64_stddev 9.57 ns 9.57 ns 4
replace bb to -- in std::string|64_cv 3.50 % 3.50 % 4
replace bb to -- in std::string|256_mean 866 ns 866 ns 4
replace bb to -- in std::string|256_median 871 ns 871 ns 4
replace bb to -- in std::string|256_stddev 21.8 ns 21.8 ns 4
replace bb to -- in std::string|256_cv 2.52 % 2.52 % 4
replace bb to -- in std::string|512_mean 1628 ns 1628 ns 4
replace bb to -- in std::string|512_median 1626 ns 1626 ns 4
replace bb to -- in std::string|512_stddev 15.5 ns 15.5 ns 4
replace bb to -- in std::string|512_cv 0.95 % 0.95 % 4
replace bb to -- in std::string|1024_mean 3142 ns 3142 ns 4
replace bb to -- in std::string|1024_median 3132 ns 3132 ns 4
replace bb to -- in std::string|1024_stddev 41.8 ns 41.8 ns 4
replace bb to -- in std::string|1024_cv 1.33 % 1.33 % 4
replace bb to -- in std::string|2048_mean 6351 ns 6351 ns 4
replace bb to -- in std::string|2048_median 6359 ns 6359 ns 4
replace bb to -- in std::string|2048_stddev 436 ns 436 ns 4
replace bb to -- in std::string|2048_cv 6.87 % 6.87 % 4
replace bb to -- in lstringa<8>|64_mean 216 ns 216 ns 4
replace bb to -- in lstringa<8>|64_median 216 ns 216 ns 4
replace bb to -- in lstringa<8>|64_stddev 9.80 ns 9.80 ns 4
replace bb to -- in lstringa<8>|64_cv 4.54 % 4.54 % 4
replace bb to -- in lstringa<8>|256_mean 672 ns 672 ns 4
replace bb to -- in lstringa<8>|256_median 677 ns 677 ns 4
replace bb to -- in lstringa<8>|256_stddev 22.2 ns 22.2 ns 4
replace bb to -- in lstringa<8>|256_cv 3.30 % 3.30 % 4
replace bb to -- in lstringa<8>|512_mean 1245 ns 1245 ns 4
replace bb to -- in lstringa<8>|512_median 1247 ns 1247 ns 4
replace bb to -- in lstringa<8>|512_stddev 27.6 ns 27.6 ns 4
replace bb to -- in lstringa<8>|512_cv 2.22 % 2.22 % 4
replace bb to -- in lstringa<8>|1024_mean 2359 ns 2359 ns 4
replace bb to -- in lstringa<8>|1024_median 2366 ns 2366 ns 4
replace bb to -- in lstringa<8>|1024_stddev 149 ns 149 ns 4
replace bb to -- in lstringa<8>|1024_cv 6.32 % 6.32 % 4
replace bb to -- in lstringa<8>|2048_mean 4751 ns 4751 ns 4
replace bb to -- in lstringa<8>|2048_median 4714 ns 4714 ns 4
replace bb to -- in lstringa<8>|2048_stddev 104 ns 104 ns 4
replace bb to -- in lstringa<8>|2048_cv 2.19 % 2.19 % 4
replace bb to -- by init stringa|64_mean 161 ns 161 ns 4
replace bb to -- by init stringa|64_median 161 ns 161 ns 4
replace bb to -- by init stringa|64_stddev 1.63 ns 1.63 ns 4
replace bb to -- by init stringa|64_cv 1.01 % 1.01 % 4
replace bb to -- by init stringa|256_mean 539 ns 539 ns 4
replace bb to -- by init stringa|256_median 538 ns 538 ns 4
replace bb to -- by init stringa|256_stddev 13.3 ns 13.3 ns 4
replace bb to -- by init stringa|256_cv 2.46 % 2.46 % 4
replace bb to -- by init stringa|512_mean 828 ns 828 ns 4
replace bb to -- by init stringa|512_median 824 ns 824 ns 4
replace bb to -- by init stringa|512_stddev 41.6 ns 41.6 ns 4
replace bb to -- by init stringa|512_cv 5.03 % 5.03 % 4
replace bb to -- by init stringa|1024_mean 1676 ns 1676 ns 4
replace bb to -- by init stringa|1024_median 1697 ns 1697 ns 4
replace bb to -- by init stringa|1024_stddev 67.3 ns 67.3 ns 4
replace bb to -- by init stringa|1024_cv 4.01 % 4.01 % 4
replace bb to -- by init stringa|2048_mean 3430 ns 3430 ns 4
replace bb to -- by init stringa|2048_median 3492 ns 3492 ns 4
replace bb to -- by init stringa|2048_stddev 136 ns 136 ns 4
replace bb to -- by init stringa|2048_cv 3.96 % 3.96 % 4
----- Hash Map insert and find ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
hashStrMapA<size_t> emplace & find stringa;_mean 3293483 ns 3293489 ns 4
hashStrMapA<size_t> emplace & find stringa;_median 3272002 ns 3272014 ns 4
hashStrMapA<size_t> emplace & find stringa;_stddev 69363 ns 69360 ns 4
hashStrMapA<size_t> emplace & find stringa;_cv 2.11 % 2.11 % 4
std::unordered_map<std::string, size_t> emplace & find std::string;_mean 3533999 ns 3534011 ns 4
std::unordered_map<std::string, size_t> emplace & find std::string;_median 3530174 ns 3530174 ns 4
std::unordered_map<std::string, size_t> emplace & find std::string;_stddev 111689 ns 111670 ns 4
std::unordered_map<std::string, size_t> emplace & find std::string;_cv 3.16 % 3.16 % 4
hashStrMapA<size_t> emplace & find ssa;_mean 3281552 ns 3281581 ns 4
hashStrMapA<size_t> emplace & find ssa;_median 3279023 ns 3279035 ns 4
hashStrMapA<size_t> emplace & find ssa;_stddev 58970 ns 58972 ns 4
hashStrMapA<size_t> emplace & find ssa;_cv 1.80 % 1.80 % 4
std::unordered_map<std::string, size_t> emplace & find std::string_view;_mean 4070724 ns 4070717 ns 4
std::unordered_map<std::string, size_t> emplace & find std::string_view;_median 4052088 ns 4052116 ns 4
std::unordered_map<std::string, size_t> emplace & find std::string_view;_stddev 88422 ns 88402 ns 4
std::unordered_map<std::string, size_t> emplace & find std::string_view;_cv 2.17 % 2.17 % 4
----- Build Full Func Name ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
Build func full name std::string;_mean 3518 ns 3518 ns 4
Build func full name std::string;_median 3517 ns 3517 ns 4
Build func full name std::string;_stddev 64.5 ns 64.5 ns 4
Build func full name std::string;_cv 1.83 % 1.83 % 4
Build func full name std::string 1;_mean 3668 ns 3668 ns 4
Build func full name std::string 1;_median 3644 ns 3644 ns 4
Build func full name std::string 1;_stddev 131 ns 131 ns 4
Build func full name std::string 1;_cv 3.58 % 3.58 % 4
Build func full name std::stream;_mean 12436 ns 12436 ns 4
Build func full name std::stream;_median 12521 ns 12521 ns 4
Build func full name std::stream;_stddev 542 ns 542 ns 4
Build func full name std::stream;_cv 4.36 % 4.36 % 4
Build func full name stringa;_mean 1711 ns 1711 ns 4
Build func full name stringa;_median 1746 ns 1746 ns 4
Build func full name stringa;_stddev 105 ns 105 ns 4
Build func full name stringa;_cv 6.12 % 6.12 % 4
Build func full name stringa 1;_mean 1966 ns 1966 ns 4
Build func full name stringa 1;_median 1953 ns 1953 ns 4
Build func full name stringa 1;_stddev 154 ns 154 ns 4
Build func full name stringa 1;_cv 7.83 % 7.83 % 4