simstr/bench/results/001-Xeon E5-2682 v4, Ubuntu...

792 lines
117 KiB
Plaintext

2025-11-26T18:09:34+03:00
Running ./benchStr
Run on (32 X 2494.22 MHz CPU s)
CPU Caches:
L1 Data 32 KiB (x16)
L1 Instruction 32 KiB (x16)
L2 Unified 256 KiB (x16)
L3 Unified 40960 KiB (x1)
Load Average: 0.02, 0.05, 0.12
--------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------------------------------------------------------------------------------------------
----- Create Empty Str ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e;_mean 1.15 ns 1.15 ns 10
std::string e;_median 1.14 ns 1.14 ns 10
std::string e;_stddev 0.057 ns 0.057 ns 10
std::string e;_cv 4.91 % 4.91 % 10
std::string_view e;_mean 0.743 ns 0.743 ns 10
std::string_view e;_median 0.743 ns 0.743 ns 10
std::string_view e;_stddev 0.009 ns 0.009 ns 10
std::string_view e;_cv 1.16 % 1.16 % 10
ssa e;_mean 0.185 ns 0.185 ns 10
ssa e;_median 0.182 ns 0.182 ns 10
ssa e;_stddev 0.005 ns 0.005 ns 10
ssa e;_cv 2.95 % 2.95 % 10
stringa e;_mean 0.759 ns 0.759 ns 10
stringa e;_median 0.753 ns 0.753 ns 10
stringa e;_stddev 0.020 ns 0.020 ns 10
stringa e;_cv 2.63 % 2.63 % 10
lstringa<20> e;_mean 1.13 ns 1.13 ns 10
lstringa<20> e;_median 1.12 ns 1.12 ns 10
lstringa<20> e;_stddev 0.032 ns 0.032 ns 10
lstringa<20> e;_cv 2.83 % 2.83 % 10
lstringa<40> e;_mean 1.13 ns 1.13 ns 10
lstringa<40> e;_median 1.12 ns 1.12 ns 10
lstringa<40> e;_stddev 0.024 ns 0.024 ns 10
lstringa<40> e;_cv 2.17 % 2.17 % 10
----- Create Str from short literal (9 symbols) --------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "Test text";_mean 1.85 ns 1.85 ns 10
std::string e = "Test text";_median 1.84 ns 1.84 ns 10
std::string e = "Test text";_stddev 0.026 ns 0.026 ns 10
std::string e = "Test text";_cv 1.43 % 1.43 % 10
std::string_view e = "Test text";_mean 0.751 ns 0.751 ns 10
std::string_view e = "Test text";_median 0.748 ns 0.748 ns 10
std::string_view e = "Test text";_stddev 0.011 ns 0.011 ns 10
std::string_view e = "Test text";_cv 1.48 % 1.48 % 10
ssa e = "Test text";_mean 0.781 ns 0.781 ns 10
ssa e = "Test text";_median 0.753 ns 0.753 ns 10
ssa e = "Test text";_stddev 0.062 ns 0.062 ns 10
ssa e = "Test text";_cv 7.88 % 7.88 % 10
stringa e = "Test text";_mean 1.13 ns 1.13 ns 10
stringa e = "Test text";_median 1.12 ns 1.12 ns 10
stringa e = "Test text";_stddev 0.030 ns 0.030 ns 10
stringa e = "Test text";_cv 2.62 % 2.62 % 10
lstringa<20> e = "Test text";_mean 1.86 ns 1.86 ns 10
lstringa<20> e = "Test text";_median 1.87 ns 1.87 ns 10
lstringa<20> e = "Test text";_stddev 0.030 ns 0.030 ns 10
lstringa<20> e = "Test text";_cv 1.62 % 1.62 % 10
lstringa<40> e = "Test text";_mean 1.88 ns 1.88 ns 10
lstringa<40> e = "Test text";_median 1.86 ns 1.86 ns 10
lstringa<40> e = "Test text";_stddev 0.052 ns 0.052 ns 10
lstringa<40> e = "Test text";_cv 2.78 % 2.78 % 10
----- Create Str from long literal (30 symbols) ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "123456789012345678901234567890";_mean 19.9 ns 19.9 ns 10
std::string e = "123456789012345678901234567890";_median 19.6 ns 19.6 ns 10
std::string e = "123456789012345678901234567890";_stddev 0.953 ns 0.953 ns 10
std::string e = "123456789012345678901234567890";_cv 4.79 % 4.79 % 10
std::string_view e = "123456789012345678901234567890";_mean 0.808 ns 0.808 ns 10
std::string_view e = "123456789012345678901234567890";_median 0.833 ns 0.833 ns 10
std::string_view e = "123456789012345678901234567890";_stddev 0.047 ns 0.047 ns 10
std::string_view e = "123456789012345678901234567890";_cv 5.78 % 5.78 % 10
ssa e = "123456789012345678901234567890";_mean 0.754 ns 0.754 ns 10
ssa e = "123456789012345678901234567890";_median 0.753 ns 0.753 ns 10
ssa e = "123456789012345678901234567890";_stddev 0.013 ns 0.013 ns 10
ssa e = "123456789012345678901234567890";_cv 1.68 % 1.68 % 10
stringa e = "123456789012345678901234567890";_mean 1.12 ns 1.12 ns 10
stringa e = "123456789012345678901234567890";_median 1.13 ns 1.13 ns 10
stringa e = "123456789012345678901234567890";_stddev 0.020 ns 0.020 ns 10
stringa e = "123456789012345678901234567890";_cv 1.77 % 1.77 % 10
lstringa<20> e = "123456789012345678901234567890";_mean 19.6 ns 19.6 ns 10
lstringa<20> e = "123456789012345678901234567890";_median 19.6 ns 19.6 ns 10
lstringa<20> e = "123456789012345678901234567890";_stddev 0.348 ns 0.348 ns 10
lstringa<20> e = "123456789012345678901234567890";_cv 1.77 % 1.77 % 10
lstringa<40> e = "123456789012345678901234567890";_mean 1.86 ns 1.86 ns 10
lstringa<40> e = "123456789012345678901234567890";_median 1.86 ns 1.86 ns 10
lstringa<40> e = "123456789012345678901234567890";_stddev 0.027 ns 0.027 ns 10
lstringa<40> e = "123456789012345678901234567890";_cv 1.46 % 1.46 % 10
----- 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 4.95 ns 4.95 ns 10
std::string e = "Test text"; auto c{e};_median 4.95 ns 4.95 ns 10
std::string e = "Test text"; auto c{e};_stddev 0.102 ns 0.102 ns 10
std::string e = "Test text"; auto c{e};_cv 2.06 % 2.06 % 10
std::string_view e = "Test text"; auto c{e};_mean 0.381 ns 0.381 ns 10
std::string_view e = "Test text"; auto c{e};_median 0.381 ns 0.381 ns 10
std::string_view e = "Test text"; auto c{e};_stddev 0.005 ns 0.005 ns 10
std::string_view e = "Test text"; auto c{e};_cv 1.28 % 1.28 % 10
ssa e = "Test text"; auto c{e};_mean 0.377 ns 0.377 ns 10
ssa e = "Test text"; auto c{e};_median 0.376 ns 0.376 ns 10
ssa e = "Test text"; auto c{e};_stddev 0.009 ns 0.009 ns 10
ssa e = "Test text"; auto c{e};_cv 2.46 % 2.46 % 10
stringa e = "Test text"; auto c{e};_mean 1.35 ns 1.35 ns 10
stringa e = "Test text"; auto c{e};_median 1.34 ns 1.34 ns 10
stringa e = "Test text"; auto c{e};_stddev 0.055 ns 0.055 ns 10
stringa e = "Test text"; auto c{e};_cv 4.07 % 4.07 % 10
lstringa<20> e = "Test text"; auto c{e};_mean 4.49 ns 4.49 ns 10
lstringa<20> e = "Test text"; auto c{e};_median 4.49 ns 4.49 ns 10
lstringa<20> e = "Test text"; auto c{e};_stddev 0.043 ns 0.043 ns 10
lstringa<20> e = "Test text"; auto c{e};_cv 0.95 % 0.95 % 10
lstringa<40> e = "Test text"; auto c{e};_mean 4.93 ns 4.93 ns 10
lstringa<40> e = "Test text"; auto c{e};_median 4.92 ns 4.92 ns 10
lstringa<40> e = "Test text"; auto c{e};_stddev 0.083 ns 0.083 ns 10
lstringa<40> e = "Test text"; auto c{e};_cv 1.68 % 1.68 % 10
----- Create copy of Str with 30 symbols ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "123456789012345678901234567890"; auto c{e};_mean 24.2 ns 24.2 ns 10
std::string e = "123456789012345678901234567890"; auto c{e};_median 24.1 ns 24.1 ns 10
std::string e = "123456789012345678901234567890"; auto c{e};_stddev 0.503 ns 0.503 ns 10
std::string e = "123456789012345678901234567890"; auto c{e};_cv 2.08 % 2.08 % 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_mean 0.747 ns 0.747 ns 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_median 0.748 ns 0.748 ns 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_stddev 0.006 ns 0.006 ns 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_cv 0.77 % 0.77 % 10
ssa e = "123456789012345678901234567890"; auto c{e};_mean 0.746 ns 0.746 ns 10
ssa e = "123456789012345678901234567890"; auto c{e};_median 0.744 ns 0.744 ns 10
ssa e = "123456789012345678901234567890"; auto c{e};_stddev 0.012 ns 0.012 ns 10
ssa e = "123456789012345678901234567890"; auto c{e};_cv 1.68 % 1.68 % 10
stringa e = "123456789012345678901234567890"; auto c{e};_mean 1.13 ns 1.13 ns 10
stringa e = "123456789012345678901234567890"; auto c{e};_median 1.13 ns 1.13 ns 10
stringa e = "123456789012345678901234567890"; auto c{e};_stddev 0.013 ns 0.013 ns 10
stringa e = "123456789012345678901234567890"; auto c{e};_cv 1.18 % 1.18 % 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_mean 24.4 ns 24.4 ns 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_median 24.0 ns 24.0 ns 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_stddev 1.02 ns 1.02 ns 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_cv 4.17 % 4.17 % 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_mean 4.61 ns 4.61 ns 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_median 4.56 ns 4.56 ns 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_stddev 0.154 ns 0.154 ns 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_cv 3.35 % 3.35 % 10
----- Find 9 symbols text in end of 99 symbols text ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string::find;_mean 6.87 ns 6.87 ns 10
std::string::find;_median 6.78 ns 6.78 ns 10
std::string::find;_stddev 0.324 ns 0.324 ns 10
std::string::find;_cv 4.71 % 4.71 % 10
std::string_view::find;_mean 7.39 ns 7.39 ns 10
std::string_view::find;_median 7.29 ns 7.29 ns 10
std::string_view::find;_stddev 0.225 ns 0.225 ns 10
std::string_view::find;_cv 3.05 % 3.05 % 10
ssa::find;_mean 6.93 ns 6.93 ns 10
ssa::find;_median 6.85 ns 6.85 ns 10
ssa::find;_stddev 0.311 ns 0.311 ns 10
ssa::find;_cv 4.49 % 4.49 % 10
stringa::find;_mean 8.00 ns 8.00 ns 10
stringa::find;_median 7.71 ns 7.71 ns 10
stringa::find;_stddev 0.857 ns 0.857 ns 10
stringa::find;_cv 10.72 % 10.72 % 10
lstringa<20>::find;_mean 6.92 ns 6.93 ns 10
lstringa<20>::find;_median 6.91 ns 6.91 ns 10
lstringa<20>::find;_stddev 0.187 ns 0.187 ns 10
lstringa<20>::find;_cv 2.71 % 2.71 % 10
lstringa<40>::find;_mean 6.87 ns 6.87 ns 10
lstringa<40>::find;_median 6.84 ns 6.84 ns 10
lstringa<40>::find;_stddev 0.208 ns 0.208 ns 10
lstringa<40>::find;_cv 3.03 % 3.03 % 10
------- 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 5.07 ns 5.07 ns 10
std::string copy{str_with_len_N};/15_median 4.96 ns 4.96 ns 10
std::string copy{str_with_len_N};/15_stddev 0.277 ns 0.277 ns 10
std::string copy{str_with_len_N};/15_cv 5.46 % 5.46 % 10
std::string copy{str_with_len_N};/16_mean 23.7 ns 23.7 ns 10
std::string copy{str_with_len_N};/16_median 23.5 ns 23.5 ns 10
std::string copy{str_with_len_N};/16_stddev 0.591 ns 0.591 ns 10
std::string copy{str_with_len_N};/16_cv 2.50 % 2.50 % 10
std::string copy{str_with_len_N};/23_mean 23.9 ns 23.9 ns 10
std::string copy{str_with_len_N};/23_median 23.7 ns 23.7 ns 10
std::string copy{str_with_len_N};/23_stddev 1.15 ns 1.15 ns 10
std::string copy{str_with_len_N};/23_cv 4.82 % 4.82 % 10
std::string copy{str_with_len_N};/24_mean 24.9 ns 24.9 ns 10
std::string copy{str_with_len_N};/24_median 25.0 ns 25.0 ns 10
std::string copy{str_with_len_N};/24_stddev 1.92 ns 1.92 ns 10
std::string copy{str_with_len_N};/24_cv 7.72 % 7.72 % 10
std::string copy{str_with_len_N};/32_mean 22.6 ns 22.6 ns 10
std::string copy{str_with_len_N};/32_median 22.6 ns 22.6 ns 10
std::string copy{str_with_len_N};/32_stddev 0.319 ns 0.319 ns 10
std::string copy{str_with_len_N};/32_cv 1.41 % 1.41 % 10
std::string copy{str_with_len_N};/64_mean 22.9 ns 22.9 ns 10
std::string copy{str_with_len_N};/64_median 22.8 ns 22.8 ns 10
std::string copy{str_with_len_N};/64_stddev 0.582 ns 0.582 ns 10
std::string copy{str_with_len_N};/64_cv 2.54 % 2.54 % 10
std::string copy{str_with_len_N};/128_mean 24.2 ns 24.2 ns 10
std::string copy{str_with_len_N};/128_median 24.2 ns 24.2 ns 10
std::string copy{str_with_len_N};/128_stddev 0.560 ns 0.560 ns 10
std::string copy{str_with_len_N};/128_cv 2.31 % 2.31 % 10
std::string copy{str_with_len_N};/256_mean 25.5 ns 25.5 ns 10
std::string copy{str_with_len_N};/256_median 25.2 ns 25.2 ns 10
std::string copy{str_with_len_N};/256_stddev 0.554 ns 0.554 ns 10
std::string copy{str_with_len_N};/256_cv 2.18 % 2.18 % 10
std::string copy{str_with_len_N};/512_mean 29.2 ns 29.2 ns 10
std::string copy{str_with_len_N};/512_median 29.3 ns 29.3 ns 10
std::string copy{str_with_len_N};/512_stddev 0.352 ns 0.352 ns 10
std::string copy{str_with_len_N};/512_cv 1.21 % 1.21 % 10
std::string copy{str_with_len_N};/1024_mean 37.2 ns 37.2 ns 10
std::string copy{str_with_len_N};/1024_median 36.8 ns 36.8 ns 10
std::string copy{str_with_len_N};/1024_stddev 1.63 ns 1.63 ns 10
std::string copy{str_with_len_N};/1024_cv 4.38 % 4.38 % 10
std::string copy{str_with_len_N};/2048_mean 81.5 ns 81.5 ns 10
std::string copy{str_with_len_N};/2048_median 78.4 ns 78.4 ns 10
std::string copy{str_with_len_N};/2048_stddev 8.26 ns 8.26 ns 10
std::string copy{str_with_len_N};/2048_cv 10.14 % 10.14 % 10
std::string copy{str_with_len_N};/4096_mean 118 ns 118 ns 10
std::string copy{str_with_len_N};/4096_median 116 ns 116 ns 10
std::string copy{str_with_len_N};/4096_stddev 7.18 ns 7.18 ns 10
std::string copy{str_with_len_N};/4096_cv 6.11 % 6.11 % 10
stringa copy{str_with_len_N};/15_mean 1.13 ns 1.13 ns 10
stringa copy{str_with_len_N};/15_median 1.14 ns 1.14 ns 10
stringa copy{str_with_len_N};/15_stddev 0.026 ns 0.026 ns 10
stringa copy{str_with_len_N};/15_cv 2.33 % 2.33 % 10
stringa copy{str_with_len_N};/16_mean 1.14 ns 1.14 ns 10
stringa copy{str_with_len_N};/16_median 1.13 ns 1.13 ns 10
stringa copy{str_with_len_N};/16_stddev 0.039 ns 0.039 ns 10
stringa copy{str_with_len_N};/16_cv 3.39 % 3.39 % 10
stringa copy{str_with_len_N};/23_mean 1.20 ns 1.20 ns 10
stringa copy{str_with_len_N};/23_median 1.18 ns 1.18 ns 10
stringa copy{str_with_len_N};/23_stddev 0.088 ns 0.088 ns 10
stringa copy{str_with_len_N};/23_cv 7.37 % 7.37 % 10
stringa copy{str_with_len_N};/24_mean 16.3 ns 16.3 ns 10
stringa copy{str_with_len_N};/24_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/24_stddev 0.461 ns 0.461 ns 10
stringa copy{str_with_len_N};/24_cv 2.83 % 2.83 % 10
stringa copy{str_with_len_N};/32_mean 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/32_median 16.0 ns 16.0 ns 10
stringa copy{str_with_len_N};/32_stddev 0.434 ns 0.434 ns 10
stringa copy{str_with_len_N};/32_cv 2.68 % 2.68 % 10
stringa copy{str_with_len_N};/64_mean 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/64_median 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/64_stddev 0.167 ns 0.167 ns 10
stringa copy{str_with_len_N};/64_cv 1.03 % 1.03 % 10
stringa copy{str_with_len_N};/128_mean 16.3 ns 16.3 ns 10
stringa copy{str_with_len_N};/128_median 16.3 ns 16.3 ns 10
stringa copy{str_with_len_N};/128_stddev 0.223 ns 0.223 ns 10
stringa copy{str_with_len_N};/128_cv 1.37 % 1.37 % 10
stringa copy{str_with_len_N};/256_mean 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/256_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/256_stddev 0.245 ns 0.245 ns 10
stringa copy{str_with_len_N};/256_cv 1.52 % 1.52 % 10
stringa copy{str_with_len_N};/512_mean 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/512_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/512_stddev 0.071 ns 0.071 ns 10
stringa copy{str_with_len_N};/512_cv 0.44 % 0.44 % 10
stringa copy{str_with_len_N};/1024_mean 16.5 ns 16.5 ns 10
stringa copy{str_with_len_N};/1024_median 16.5 ns 16.5 ns 10
stringa copy{str_with_len_N};/1024_stddev 0.232 ns 0.232 ns 10
stringa copy{str_with_len_N};/1024_cv 1.41 % 1.41 % 10
stringa copy{str_with_len_N};/2048_mean 16.3 ns 16.3 ns 10
stringa copy{str_with_len_N};/2048_median 16.5 ns 16.5 ns 10
stringa copy{str_with_len_N};/2048_stddev 0.290 ns 0.290 ns 10
stringa copy{str_with_len_N};/2048_cv 1.78 % 1.78 % 10
stringa copy{str_with_len_N};/4096_mean 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/4096_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/4096_stddev 0.246 ns 0.246 ns 10
stringa copy{str_with_len_N};/4096_cv 1.52 % 1.52 % 10
lstringa<16> copy{str_with_len_N};/15_mean 4.88 ns 4.88 ns 10
lstringa<16> copy{str_with_len_N};/15_median 4.88 ns 4.88 ns 10
lstringa<16> copy{str_with_len_N};/15_stddev 0.134 ns 0.134 ns 10
lstringa<16> copy{str_with_len_N};/15_cv 2.76 % 2.76 % 10
lstringa<16> copy{str_with_len_N};/16_mean 4.89 ns 4.89 ns 10
lstringa<16> copy{str_with_len_N};/16_median 4.89 ns 4.89 ns 10
lstringa<16> copy{str_with_len_N};/16_stddev 0.071 ns 0.071 ns 10
lstringa<16> copy{str_with_len_N};/16_cv 1.44 % 1.44 % 10
lstringa<16> copy{str_with_len_N};/23_mean 5.01 ns 5.01 ns 10
lstringa<16> copy{str_with_len_N};/23_median 4.95 ns 4.95 ns 10
lstringa<16> copy{str_with_len_N};/23_stddev 0.265 ns 0.265 ns 10
lstringa<16> copy{str_with_len_N};/23_cv 5.30 % 5.30 % 10
lstringa<16> copy{str_with_len_N};/24_mean 25.0 ns 25.0 ns 10
lstringa<16> copy{str_with_len_N};/24_median 24.9 ns 24.9 ns 10
lstringa<16> copy{str_with_len_N};/24_stddev 0.874 ns 0.874 ns 10
lstringa<16> copy{str_with_len_N};/24_cv 3.49 % 3.49 % 10
lstringa<16> copy{str_with_len_N};/32_mean 24.5 ns 24.5 ns 10
lstringa<16> copy{str_with_len_N};/32_median 24.6 ns 24.6 ns 10
lstringa<16> copy{str_with_len_N};/32_stddev 0.286 ns 0.286 ns 10
lstringa<16> copy{str_with_len_N};/32_cv 1.17 % 1.17 % 10
lstringa<16> copy{str_with_len_N};/64_mean 25.9 ns 25.9 ns 10
lstringa<16> copy{str_with_len_N};/64_median 25.6 ns 25.6 ns 10
lstringa<16> copy{str_with_len_N};/64_stddev 0.706 ns 0.706 ns 10
lstringa<16> copy{str_with_len_N};/64_cv 2.73 % 2.73 % 10
lstringa<16> copy{str_with_len_N};/128_mean 26.5 ns 26.5 ns 10
lstringa<16> copy{str_with_len_N};/128_median 26.2 ns 26.2 ns 10
lstringa<16> copy{str_with_len_N};/128_stddev 1.21 ns 1.21 ns 10
lstringa<16> copy{str_with_len_N};/128_cv 4.56 % 4.56 % 10
lstringa<16> copy{str_with_len_N};/256_mean 29.6 ns 29.6 ns 10
lstringa<16> copy{str_with_len_N};/256_median 28.5 ns 28.5 ns 10
lstringa<16> copy{str_with_len_N};/256_stddev 2.76 ns 2.76 ns 10
lstringa<16> copy{str_with_len_N};/256_cv 9.32 % 9.32 % 10
lstringa<16> copy{str_with_len_N};/512_mean 30.9 ns 30.9 ns 10
lstringa<16> copy{str_with_len_N};/512_median 30.5 ns 30.5 ns 10
lstringa<16> copy{str_with_len_N};/512_stddev 1.06 ns 1.06 ns 10
lstringa<16> copy{str_with_len_N};/512_cv 3.42 % 3.42 % 10
lstringa<16> copy{str_with_len_N};/1024_mean 71.7 ns 71.7 ns 10
lstringa<16> copy{str_with_len_N};/1024_median 69.8 ns 69.8 ns 10
lstringa<16> copy{str_with_len_N};/1024_stddev 16.9 ns 16.9 ns 10
lstringa<16> copy{str_with_len_N};/1024_cv 23.58 % 23.58 % 10
lstringa<16> copy{str_with_len_N};/2048_mean 74.3 ns 74.3 ns 10
lstringa<16> copy{str_with_len_N};/2048_median 76.4 ns 76.4 ns 10
lstringa<16> copy{str_with_len_N};/2048_stddev 9.26 ns 9.26 ns 10
lstringa<16> copy{str_with_len_N};/2048_cv 12.45 % 12.45 % 10
lstringa<16> copy{str_with_len_N};/4096_mean 93.3 ns 93.3 ns 10
lstringa<16> copy{str_with_len_N};/4096_median 91.2 ns 91.2 ns 10
lstringa<16> copy{str_with_len_N};/4096_stddev 6.20 ns 6.20 ns 10
lstringa<16> copy{str_with_len_N};/4096_cv 6.65 % 6.65 % 10
lstringa<512> copy{str_with_len_N};/15_mean 4.93 ns 4.93 ns 10
lstringa<512> copy{str_with_len_N};/15_median 4.96 ns 4.96 ns 10
lstringa<512> copy{str_with_len_N};/15_stddev 0.123 ns 0.123 ns 10
lstringa<512> copy{str_with_len_N};/15_cv 2.50 % 2.50 % 10
lstringa<512> copy{str_with_len_N};/16_mean 4.97 ns 4.97 ns 10
lstringa<512> copy{str_with_len_N};/16_median 4.93 ns 4.93 ns 10
lstringa<512> copy{str_with_len_N};/16_stddev 0.183 ns 0.183 ns 10
lstringa<512> copy{str_with_len_N};/16_cv 3.68 % 3.68 % 10
lstringa<512> copy{str_with_len_N};/23_mean 4.94 ns 4.94 ns 10
lstringa<512> copy{str_with_len_N};/23_median 4.90 ns 4.90 ns 10
lstringa<512> copy{str_with_len_N};/23_stddev 0.160 ns 0.160 ns 10
lstringa<512> copy{str_with_len_N};/23_cv 3.23 % 3.23 % 10
lstringa<512> copy{str_with_len_N};/24_mean 4.90 ns 4.90 ns 10
lstringa<512> copy{str_with_len_N};/24_median 4.89 ns 4.89 ns 10
lstringa<512> copy{str_with_len_N};/24_stddev 0.069 ns 0.069 ns 10
lstringa<512> copy{str_with_len_N};/24_cv 1.40 % 1.40 % 10
lstringa<512> copy{str_with_len_N};/32_mean 5.03 ns 5.03 ns 10
lstringa<512> copy{str_with_len_N};/32_median 4.97 ns 4.97 ns 10
lstringa<512> copy{str_with_len_N};/32_stddev 0.452 ns 0.452 ns 10
lstringa<512> copy{str_with_len_N};/32_cv 8.99 % 8.99 % 10
lstringa<512> copy{str_with_len_N};/64_mean 6.12 ns 6.12 ns 10
lstringa<512> copy{str_with_len_N};/64_median 6.06 ns 6.06 ns 10
lstringa<512> copy{str_with_len_N};/64_stddev 0.221 ns 0.221 ns 10
lstringa<512> copy{str_with_len_N};/64_cv 3.61 % 3.61 % 10
lstringa<512> copy{str_with_len_N};/128_mean 7.87 ns 7.87 ns 10
lstringa<512> copy{str_with_len_N};/128_median 7.80 ns 7.80 ns 10
lstringa<512> copy{str_with_len_N};/128_stddev 0.269 ns 0.269 ns 10
lstringa<512> copy{str_with_len_N};/128_cv 3.42 % 3.42 % 10
lstringa<512> copy{str_with_len_N};/256_mean 8.70 ns 8.70 ns 10
lstringa<512> copy{str_with_len_N};/256_median 8.80 ns 8.80 ns 10
lstringa<512> copy{str_with_len_N};/256_stddev 0.343 ns 0.343 ns 10
lstringa<512> copy{str_with_len_N};/256_cv 3.94 % 3.94 % 10
lstringa<512> copy{str_with_len_N};/512_mean 10.6 ns 10.6 ns 10
lstringa<512> copy{str_with_len_N};/512_median 10.6 ns 10.6 ns 10
lstringa<512> copy{str_with_len_N};/512_stddev 0.291 ns 0.291 ns 10
lstringa<512> copy{str_with_len_N};/512_cv 2.75 % 2.75 % 10
lstringa<512> copy{str_with_len_N};/1024_mean 71.4 ns 71.4 ns 10
lstringa<512> copy{str_with_len_N};/1024_median 71.5 ns 71.5 ns 10
lstringa<512> copy{str_with_len_N};/1024_stddev 17.3 ns 17.3 ns 10
lstringa<512> copy{str_with_len_N};/1024_cv 24.23 % 24.23 % 10
lstringa<512> copy{str_with_len_N};/2048_mean 77.5 ns 77.5 ns 10
lstringa<512> copy{str_with_len_N};/2048_median 75.1 ns 75.1 ns 10
lstringa<512> copy{str_with_len_N};/2048_stddev 10.9 ns 10.9 ns 10
lstringa<512> copy{str_with_len_N};/2048_cv 14.01 % 14.01 % 10
lstringa<512> copy{str_with_len_N};/4096_mean 93.4 ns 93.4 ns 10
lstringa<512> copy{str_with_len_N};/4096_median 90.8 ns 90.8 ns 10
lstringa<512> copy{str_with_len_N};/4096_stddev 11.0 ns 11.0 ns 10
lstringa<512> copy{str_with_len_N};/4096_cv 11.77 % 11.77 % 10
----- 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 27.0 ns 27.0 ns 10
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_median 26.8 ns 26.8 ns 10
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_stddev 0.637 ns 0.637 ns 10
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_cv 2.36 % 2.36 % 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_mean 12.3 ns 12.3 ns 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_median 12.3 ns 12.3 ns 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_stddev 0.086 ns 0.086 ns 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_cv 0.70 % 0.70 % 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 8.38 ns 8.38 ns 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_median 8.33 ns 8.33 ns 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.220 ns 0.220 ns 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 2.62 % 2.62 % 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 8.48 ns 8.48 ns 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_median 8.36 ns 8.36 ns 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.427 ns 0.427 ns 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 5.03 % 5.03 % 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 8.36 ns 8.36 ns 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_median 8.29 ns 8.29 ns 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.338 ns 0.338 ns 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 4.04 % 4.04 % 10
----- 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 24.3 ns 24.3 ns 10
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_median 23.7 ns 23.7 ns 10
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_stddev 1.18 ns 1.18 ns 10
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_cv 4.86 % 4.86 % 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_mean 15.0 ns 15.0 ns 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_median 15.0 ns 15.0 ns 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_stddev 0.265 ns 0.265 ns 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_cv 1.77 % 1.77 % 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 8.57 ns 8.57 ns 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 8.53 ns 8.53 ns 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.154 ns 0.154 ns 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 1.80 % 1.80 % 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 7.90 ns 7.90 ns 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 7.88 ns 7.88 ns 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.135 ns 0.135 ns 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 1.71 % 1.71 % 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 7.94 ns 7.94 ns 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 7.94 ns 7.94 ns 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.121 ns 0.121 ns 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 1.52 % 1.52 % 10
----- 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 28.7 ns 28.7 ns 10
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_median 28.5 ns 28.5 ns 10
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_stddev 1.26 ns 1.26 ns 10
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_cv 4.39 % 4.39 % 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_mean 15.7 ns 15.7 ns 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_median 15.4 ns 15.4 ns 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_stddev 1.09 ns 1.09 ns 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_cv 6.91 % 6.91 % 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_mean 10.9 ns 10.9 ns 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_median 10.9 ns 10.9 ns 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_stddev 0.309 ns 0.309 ns 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_cv 2.83 % 2.83 % 10
----- 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 65.0 ns 65.0 ns 10
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_median 64.8 ns 64.8 ns 10
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_stddev 2.42 ns 2.42 ns 10
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_cv 3.72 % 3.72 % 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_mean 23.9 ns 23.9 ns 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_median 24.0 ns 24.0 ns 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_stddev 0.476 ns 0.476 ns 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_cv 1.99 % 1.99 % 10
ssa s = "1234.567e10"; double res = *s.to_double()_mean 24.3 ns 24.3 ns 10
ssa s = "1234.567e10"; double res = *s.to_double()_median 24.4 ns 24.4 ns 10
ssa s = "1234.567e10"; double res = *s.to_double()_stddev 0.473 ns 0.458 ns 10
ssa s = "1234.567e10"; double res = *s.to_double()_cv 1.94 % 1.88 % 10
-- 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 1513 ns 1513 ns 10
std::stringstream str; ... str << "abbaabbaabbaabba";_median 1490 ns 1490 ns 10
std::stringstream str; ... str << "abbaabbaabbaabba";_stddev 105 ns 105 ns 10
std::stringstream str; ... str << "abbaabbaabbaabba";_cv 6.95 % 6.95 % 10
std::string str; ... str += "abbaabbaabbaabba";_mean 346 ns 346 ns 10
std::string str; ... str += "abbaabbaabbaabba";_median 343 ns 343 ns 10
std::string str; ... str += "abbaabbaabbaabba";_stddev 20.3 ns 20.3 ns 10
std::string str; ... str += "abbaabbaabbaabba";_cv 5.86 % 5.86 % 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_mean 371 ns 371 ns 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_median 367 ns 367 ns 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_stddev 25.3 ns 25.3 ns 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_cv 6.82 % 6.82 % 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_mean 264 ns 264 ns 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_median 261 ns 261 ns 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_stddev 17.6 ns 17.6 ns 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_cv 6.67 % 6.67 % 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_mean 239 ns 239 ns 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_median 239 ns 239 ns 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_stddev 14.3 ns 14.3 ns 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_cv 5.96 % 5.96 % 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_mean 141 ns 141 ns 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_median 140 ns 140 ns 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_stddev 2.88 ns 2.88 ns 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_cv 2.04 % 2.04 % 10
-- 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 1456 ns 1456 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_median 1460 ns 1460 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_stddev 25.6 ns 25.6 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_cv 1.76 % 1.76 % 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_mean 1276 ns 1276 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_median 1277 ns 1277 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_stddev 23.7 ns 23.7 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_cv 1.86 % 1.86 % 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_mean 420 ns 420 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_median 417 ns 417 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_stddev 18.9 ns 18.9 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_cv 4.50 % 4.50 % 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_mean 355 ns 355 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_median 354 ns 354 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_stddev 14.0 ns 14.0 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_cv 3.94 % 3.94 % 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_mean 310 ns 310 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_median 313 ns 313 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_stddev 12.0 ns 12.0 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_cv 3.86 % 3.86 % 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_mean 253 ns 253 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_median 249 ns 249 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_stddev 13.3 ns 13.3 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_cv 5.27 % 5.27 % 10
-- 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 132670 ns 132669 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_median 132572 ns 132570 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_stddev 3449 ns 3449 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_cv 2.60 % 2.60 % 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 74369 ns 74369 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 74079 ns 74079 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 1365 ns 1365 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 1.84 % 1.84 % 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 55191 ns 55191 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 55808 ns 55808 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 2053 ns 2053 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 3.72 % 3.72 % 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 28835 ns 28835 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 29915 ns 29915 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 4393 ns 4393 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 15.23 % 15.23 % 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 19500 ns 19500 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 17304 ns 17304 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 4582 ns 4582 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 23.50 % 23.50 % 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 18108 ns 18108 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 17806 ns 17806 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 1267 ns 1267 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 7.00 % 7.00 % 10
-- 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 1425 ns 1425 ns 10
std::stringstream str; ... str << str_var1 << str_var2;_median 1418 ns 1418 ns 10
std::stringstream str; ... str << str_var1 << str_var2;_stddev 26.1 ns 26.1 ns 10
std::stringstream str; ... str << str_var1 << str_var2;_cv 1.83 % 1.83 % 10
std::string str; ... str += str_var1 + str_var2;_mean 1392 ns 1392 ns 10
std::string str; ... str += str_var1 + str_var2;_median 1359 ns 1359 ns 10
std::string str; ... str += str_var1 + str_var2;_stddev 80.1 ns 80.1 ns 10
std::string str; ... str += str_var1 + str_var2;_cv 5.76 % 5.76 % 10
lstringa<16> str; ... str += str_var1 + str_var2;_mean 630 ns 630 ns 10
lstringa<16> str; ... str += str_var1 + str_var2;_median 609 ns 609 ns 10
lstringa<16> str; ... str += str_var1 + str_var2;_stddev 57.4 ns 57.4 ns 10
lstringa<16> str; ... str += str_var1 + str_var2;_cv 9.11 % 9.11 % 10
lstringa<128> str; ... str += str_var1 + str_var2;_mean 534 ns 534 ns 10
lstringa<128> str; ... str += str_var1 + str_var2;_median 534 ns 534 ns 10
lstringa<128> str; ... str += str_var1 + str_var2;_stddev 13.8 ns 13.8 ns 10
lstringa<128> str; ... str += str_var1 + str_var2;_cv 2.59 % 2.59 % 10
lstringa<512> str; ... str += str_var1 + str_var2;_mean 470 ns 470 ns 10
lstringa<512> str; ... str += str_var1 + str_var2;_median 470 ns 470 ns 10
lstringa<512> str; ... str += str_var1 + str_var2;_stddev 8.82 ns 8.82 ns 10
lstringa<512> str; ... str += str_var1 + str_var2;_cv 1.88 % 1.88 % 10
lstringa<1024> str; ... str += str_var1 + str_var2;_mean 434 ns 434 ns 10
lstringa<1024> str; ... str += str_var1 + str_var2;_median 434 ns 434 ns 10
lstringa<1024> str; ... str += str_var1 + str_var2;_stddev 5.85 ns 5.85 ns 10
lstringa<1024> str; ... str += str_var1 + str_var2;_cv 1.35 % 1.35 % 10
-- Append text, number, text --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; str << "test = " << k << " times";_mean 3106 ns 3106 ns 10
std::stringstream str; str << "test = " << k << " times";_median 3081 ns 3081 ns 10
std::stringstream str; str << "test = " << k << " times";_stddev 58.7 ns 58.7 ns 10
std::stringstream str; str << "test = " << k << " times";_cv 1.89 % 1.89 % 10
std::string str = "test = " + std::to_string(k) + " times";_mean 448 ns 448 ns 10
std::string str = "test = " + std::to_string(k) + " times";_median 447 ns 447 ns 10
std::string str = "test = " + std::to_string(k) + " times";_stddev 8.40 ns 8.40 ns 10
std::string str = "test = " + std::to_string(k) + " times";_cv 1.87 % 1.87 % 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_mean 1526 ns 1526 ns 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_median 1523 ns 1523 ns 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_stddev 37.9 ns 37.9 ns 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_cv 2.48 % 2.48 % 10
std::string str = std::format("test = {} times", k);_mean 1271 ns 1271 ns 10
std::string str = std::format("test = {} times", k);_median 1268 ns 1268 ns 10
std::string str = std::format("test = {} times", k);_stddev 36.9 ns 36.9 ns 10
std::string str = std::format("test = {} times", k);_cv 2.90 % 2.90 % 10
lstringa<8> str; str.format("test = {} times", k);_mean 1674 ns 1674 ns 10
lstringa<8> str; str.format("test = {} times", k);_median 1655 ns 1655 ns 10
lstringa<8> str; str.format("test = {} times", k);_stddev 54.6 ns 54.6 ns 10
lstringa<8> str; str.format("test = {} times", k);_cv 3.26 % 3.26 % 10
lstringa<32> str; str.format("test = {} times", k);_mean 1138 ns 1138 ns 10
lstringa<32> str; str.format("test = {} times", k);_median 1122 ns 1122 ns 10
lstringa<32> str; str.format("test = {} times", k);_stddev 51.3 ns 51.3 ns 10
lstringa<32> str; str.format("test = {} times", k);_cv 4.51 % 4.51 % 10
lstringa<8> str = "test = " + k + " times";_mean 317 ns 317 ns 10
lstringa<8> str = "test = " + k + " times";_median 315 ns 315 ns 10
lstringa<8> str = "test = " + k + " times";_stddev 9.00 ns 9.00 ns 10
lstringa<8> str = "test = " + k + " times";_cv 2.84 % 2.84 % 10
lstringa<32> str = "test = " + k + " times";_mean 154 ns 154 ns 10
lstringa<32> str = "test = " + k + " times";_median 154 ns 154 ns 10
lstringa<32> str = "test = " + k + " times";_stddev 3.15 ns 3.15 ns 10
lstringa<32> str = "test = " + k + " times";_cv 2.04 % 2.04 % 10
stringa str = "test = " + k + " times";_mean 170 ns 170 ns 10
stringa str = "test = " + k + " times";_median 168 ns 168 ns 10
stringa str = "test = " + k + " times";_stddev 5.97 ns 5.97 ns 10
stringa str = "test = " + k + " times";_cv 3.52 % 3.52 % 10
-- Split text and convert to int --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string::find + substr + std::strtol_mean 273 ns 273 ns 10
std::string::find + substr + std::strtol_median 271 ns 271 ns 10
std::string::find + substr + std::strtol_stddev 5.77 ns 5.77 ns 10
std::string::find + substr + std::strtol_cv 2.12 % 2.12 % 10
ssa::splitter + ssa::as_int_mean 137 ns 137 ns 10
ssa::splitter + ssa::as_int_median 136 ns 136 ns 10
ssa::splitter + ssa::as_int_stddev 3.41 ns 3.41 ns 10
ssa::splitter + ssa::as_int_cv 2.49 % 2.49 % 10
ssa::splitf + functor_mean 130 ns 130 ns 10
ssa::splitf + functor_median 130 ns 130 ns 10
ssa::splitf + functor_stddev 1.63 ns 1.63 ns 10
ssa::splitf + functor_cv 1.26 % 1.26 % 10
-- 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 851 ns 851 ns 10
Naive (and wrong) replace symbols with std::string find + replace_median 856 ns 856 ns 10
Naive (and wrong) replace symbols with std::string find + replace_stddev 18.6 ns 18.6 ns 10
Naive (and wrong) replace symbols with std::string find + replace_cv 2.19 % 2.19 % 10
replace symbols with std::string find_first_of + replace_mean 2496 ns 2496 ns 10
replace symbols with std::string find_first_of + replace_median 2428 ns 2428 ns 10
replace symbols with std::string find_first_of + replace_stddev 225 ns 225 ns 10
replace symbols with std::string find_first_of + replace_cv 9.03 % 9.03 % 10
replace symbols with std::string_view find_first_of + copy_mean 973 ns 973 ns 10
replace symbols with std::string_view find_first_of + copy_median 971 ns 971 ns 10
replace symbols with std::string_view find_first_of + copy_stddev 18.8 ns 18.8 ns 10
replace symbols with std::string_view find_first_of + copy_cv 1.93 % 1.93 % 10
replace runtime symbols with string expressions and without remembering all search results_mean 1508 ns 1508 ns 10
replace runtime symbols with string expressions and without remembering all search results_median 1511 ns 1511 ns 10
replace runtime symbols with string expressions and without remembering all search results_stddev 24.9 ns 24.9 ns 10
replace runtime symbols with string expressions and without remembering all search results_cv 1.65 % 1.65 % 10
replace runtime symbols with simstr and memorization of all search results_mean 1172 ns 1172 ns 10
replace runtime symbols with simstr and memorization of all search results_median 1177 ns 1177 ns 10
replace runtime symbols with simstr and memorization of all search results_stddev 13.5 ns 13.5 ns 10
replace runtime symbols with simstr and memorization of all search results_cv 1.15 % 1.15 % 10
replace const symbols with string expressions and without remembering all search results_mean 1253 ns 1253 ns 10
replace const symbols with string expressions and without remembering all search results_median 1254 ns 1254 ns 10
replace const symbols with string expressions and without remembering all search results_stddev 19.3 ns 19.3 ns 10
replace const symbols with string expressions and without remembering all search results_cv 1.54 % 1.54 % 10
replace const symbols with string expressions and memorization of all search results_mean 874 ns 874 ns 10
replace const symbols with string expressions and memorization of all search results_median 875 ns 875 ns 10
replace const symbols with string expressions and memorization of all search results_stddev 23.8 ns 23.8 ns 10
replace const symbols with string expressions and memorization of all search results_cv 2.73 % 2.73 % 10
-- 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 161 ns 161 ns 10
Short Naive (and wrong) replace symbols with std::string find + replace_median 161 ns 161 ns 10
Short Naive (and wrong) replace symbols with std::string find + replace_stddev 3.28 ns 3.28 ns 10
Short Naive (and wrong) replace symbols with std::string find + replace_cv 2.04 % 2.04 % 10
Short replace symbols with std::string find_first_of + replace_mean 321 ns 321 ns 10
Short replace symbols with std::string find_first_of + replace_median 315 ns 315 ns 10
Short replace symbols with std::string find_first_of + replace_stddev 12.9 ns 12.9 ns 10
Short replace symbols with std::string find_first_of + replace_cv 4.02 % 4.02 % 10
Short replace symbols with std::string_view find_first_of + copy_mean 155 ns 155 ns 10
Short replace symbols with std::string_view find_first_of + copy_median 154 ns 154 ns 10
Short replace symbols with std::string_view find_first_of + copy_stddev 4.84 ns 4.84 ns 10
Short replace symbols with std::string_view find_first_of + copy_cv 3.13 % 3.13 % 10
Short replace runtime symbols with string expressions and without remembering all search results_mean 192 ns 192 ns 10
Short replace runtime symbols with string expressions and without remembering all search results_median 190 ns 190 ns 10
Short replace runtime symbols with string expressions and without remembering all search results_stddev 7.47 ns 7.47 ns 10
Short replace runtime symbols with string expressions and without remembering all search results_cv 3.89 % 3.89 % 10
Short replace runtime symbols with simstr and memorization of all search results_mean 190 ns 190 ns 10
Short replace runtime symbols with simstr and memorization of all search results_median 189 ns 189 ns 10
Short replace runtime symbols with simstr and memorization of all search results_stddev 2.96 ns 2.96 ns 10
Short replace runtime symbols with simstr and memorization of all search results_cv 1.56 % 1.56 % 10
Short replace const symbols with string expressions and without remembering all search results_mean 159 ns 159 ns 10
Short replace const symbols with string expressions and without remembering all search results_median 159 ns 159 ns 10
Short replace const symbols with string expressions and without remembering all search results_stddev 3.16 ns 3.16 ns 10
Short replace const symbols with string expressions and without remembering all search results_cv 1.99 % 1.99 % 10
Short replace const symbols with string expressions and memorization of all search results_mean 149 ns 149 ns 10
Short replace const symbols with string expressions and memorization of all search results_median 149 ns 149 ns 10
Short replace const symbols with string expressions and memorization of all search results_stddev 3.86 ns 3.86 ns 10
Short replace const symbols with string expressions and memorization of all search results_cv 2.59 % 2.59 % 10
----- Replace All Str To Longer Size ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
replace bb to ---- in std::string|64_mean 174 ns 174 ns 10
replace bb to ---- in std::string|64_median 166 ns 166 ns 10
replace bb to ---- in std::string|64_stddev 16.4 ns 16.4 ns 10
replace bb to ---- in std::string|64_cv 9.46 % 9.46 % 10
replace bb to ---- in std::string|256_mean 511 ns 511 ns 10
replace bb to ---- in std::string|256_median 498 ns 498 ns 10
replace bb to ---- in std::string|256_stddev 28.1 ns 28.1 ns 10
replace bb to ---- in std::string|256_cv 5.50 % 5.50 % 10
replace bb to ---- in std::string|512_mean 1180 ns 1180 ns 10
replace bb to ---- in std::string|512_median 1173 ns 1173 ns 10
replace bb to ---- in std::string|512_stddev 20.5 ns 20.5 ns 10
replace bb to ---- in std::string|512_cv 1.74 % 1.74 % 10
replace bb to ---- in std::string|1024_mean 2244 ns 2244 ns 10
replace bb to ---- in std::string|1024_median 2253 ns 2253 ns 10
replace bb to ---- in std::string|1024_stddev 92.2 ns 92.2 ns 10
replace bb to ---- in std::string|1024_cv 4.11 % 4.11 % 10
replace bb to ---- in std::string|2048_mean 6009 ns 6009 ns 10
replace bb to ---- in std::string|2048_median 5918 ns 5918 ns 10
replace bb to ---- in std::string|2048_stddev 398 ns 398 ns 10
replace bb to ---- in std::string|2048_cv 6.62 % 6.62 % 10
replace bb to ---- in lstringa<8>|64_mean 154 ns 154 ns 10
replace bb to ---- in lstringa<8>|64_median 154 ns 154 ns 10
replace bb to ---- in lstringa<8>|64_stddev 3.85 ns 3.85 ns 10
replace bb to ---- in lstringa<8>|64_cv 2.50 % 2.50 % 10
replace bb to ---- in lstringa<8>|256_mean 459 ns 459 ns 10
replace bb to ---- in lstringa<8>|256_median 461 ns 461 ns 10
replace bb to ---- in lstringa<8>|256_stddev 9.64 ns 9.64 ns 10
replace bb to ---- in lstringa<8>|256_cv 2.10 % 2.10 % 10
replace bb to ---- in lstringa<8>|512_mean 850 ns 850 ns 10
replace bb to ---- in lstringa<8>|512_median 855 ns 855 ns 10
replace bb to ---- in lstringa<8>|512_stddev 16.0 ns 16.0 ns 10
replace bb to ---- in lstringa<8>|512_cv 1.88 % 1.88 % 10
replace bb to ---- in lstringa<8>|1024_mean 1775 ns 1775 ns 10
replace bb to ---- in lstringa<8>|1024_median 1779 ns 1779 ns 10
replace bb to ---- in lstringa<8>|1024_stddev 74.7 ns 74.7 ns 10
replace bb to ---- in lstringa<8>|1024_cv 4.21 % 4.21 % 10
replace bb to ---- in lstringa<8>|2048_mean 3322 ns 3322 ns 10
replace bb to ---- in lstringa<8>|2048_median 3322 ns 3322 ns 10
replace bb to ---- in lstringa<8>|2048_stddev 95.3 ns 95.4 ns 10
replace bb to ---- in lstringa<8>|2048_cv 2.87 % 2.87 % 10
replace bb to ---- by init stringa|64_mean 124 ns 124 ns 10
replace bb to ---- by init stringa|64_median 124 ns 124 ns 10
replace bb to ---- by init stringa|64_stddev 2.40 ns 2.40 ns 10
replace bb to ---- by init stringa|64_cv 1.93 % 1.93 % 10
replace bb to ---- by init stringa|256_mean 483 ns 483 ns 10
replace bb to ---- by init stringa|256_median 481 ns 481 ns 10
replace bb to ---- by init stringa|256_stddev 21.5 ns 21.5 ns 10
replace bb to ---- by init stringa|256_cv 4.44 % 4.44 % 10
replace bb to ---- by init stringa|512_mean 888 ns 888 ns 10
replace bb to ---- by init stringa|512_median 884 ns 884 ns 10
replace bb to ---- by init stringa|512_stddev 16.3 ns 16.3 ns 10
replace bb to ---- by init stringa|512_cv 1.83 % 1.83 % 10
replace bb to ---- by init stringa|1024_mean 1787 ns 1787 ns 10
replace bb to ---- by init stringa|1024_median 1788 ns 1788 ns 10
replace bb to ---- by init stringa|1024_stddev 35.7 ns 35.7 ns 10
replace bb to ---- by init stringa|1024_cv 2.00 % 2.00 % 10
replace bb to ---- by init stringa|2048_mean 3741 ns 3741 ns 10
replace bb to ---- by init stringa|2048_median 3653 ns 3653 ns 10
replace bb to ---- by init stringa|2048_stddev 217 ns 217 ns 10
replace bb to ---- by init stringa|2048_cv 5.80 % 5.80 % 10
----- Replace All Str To Same Size ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
replace bb to -- in std::string|64_mean 118 ns 118 ns 10
replace bb to -- in std::string|64_median 117 ns 117 ns 10
replace bb to -- in std::string|64_stddev 4.91 ns 4.91 ns 10
replace bb to -- in std::string|64_cv 4.16 % 4.16 % 10
replace bb to -- in std::string|256_mean 370 ns 370 ns 10
replace bb to -- in std::string|256_median 370 ns 370 ns 10
replace bb to -- in std::string|256_stddev 10.4 ns 10.4 ns 10
replace bb to -- in std::string|256_cv 2.81 % 2.81 % 10
replace bb to -- in std::string|512_mean 739 ns 739 ns 10
replace bb to -- in std::string|512_median 737 ns 737 ns 10
replace bb to -- in std::string|512_stddev 11.5 ns 11.5 ns 10
replace bb to -- in std::string|512_cv 1.56 % 1.56 % 10
replace bb to -- in std::string|1024_mean 1423 ns 1423 ns 10
replace bb to -- in std::string|1024_median 1416 ns 1416 ns 10
replace bb to -- in std::string|1024_stddev 42.4 ns 42.4 ns 10
replace bb to -- in std::string|1024_cv 2.98 % 2.98 % 10
replace bb to -- in std::string|2048_mean 2898 ns 2898 ns 10
replace bb to -- in std::string|2048_median 2873 ns 2873 ns 10
replace bb to -- in std::string|2048_stddev 126 ns 126 ns 10
replace bb to -- in std::string|2048_cv 4.36 % 4.36 % 10
replace bb to -- in lstringa<8>|64_mean 99.1 ns 99.1 ns 10
replace bb to -- in lstringa<8>|64_median 98.8 ns 98.8 ns 10
replace bb to -- in lstringa<8>|64_stddev 1.97 ns 1.97 ns 10
replace bb to -- in lstringa<8>|64_cv 1.99 % 1.99 % 10
replace bb to -- in lstringa<8>|256_mean 301 ns 301 ns 10
replace bb to -- in lstringa<8>|256_median 296 ns 296 ns 10
replace bb to -- in lstringa<8>|256_stddev 11.4 ns 11.4 ns 10
replace bb to -- in lstringa<8>|256_cv 3.78 % 3.78 % 10
replace bb to -- in lstringa<8>|512_mean 566 ns 566 ns 10
replace bb to -- in lstringa<8>|512_median 563 ns 563 ns 10
replace bb to -- in lstringa<8>|512_stddev 8.23 ns 8.23 ns 10
replace bb to -- in lstringa<8>|512_cv 1.45 % 1.45 % 10
replace bb to -- in lstringa<8>|1024_mean 1104 ns 1104 ns 10
replace bb to -- in lstringa<8>|1024_median 1112 ns 1112 ns 10
replace bb to -- in lstringa<8>|1024_stddev 26.7 ns 26.7 ns 10
replace bb to -- in lstringa<8>|1024_cv 2.42 % 2.42 % 10
replace bb to -- in lstringa<8>|2048_mean 2088 ns 2088 ns 10
replace bb to -- in lstringa<8>|2048_median 2078 ns 2078 ns 10
replace bb to -- in lstringa<8>|2048_stddev 49.4 ns 49.4 ns 10
replace bb to -- in lstringa<8>|2048_cv 2.37 % 2.37 % 10
replace bb to -- by init stringa|64_mean 99.6 ns 99.6 ns 10
replace bb to -- by init stringa|64_median 98.7 ns 98.7 ns 10
replace bb to -- by init stringa|64_stddev 5.18 ns 5.18 ns 10
replace bb to -- by init stringa|64_cv 5.20 % 5.20 % 10
replace bb to -- by init stringa|256_mean 274 ns 274 ns 10
replace bb to -- by init stringa|256_median 275 ns 275 ns 10
replace bb to -- by init stringa|256_stddev 6.18 ns 6.18 ns 10
replace bb to -- by init stringa|256_cv 2.26 % 2.26 % 10
replace bb to -- by init stringa|512_mean 527 ns 527 ns 10
replace bb to -- by init stringa|512_median 516 ns 516 ns 10
replace bb to -- by init stringa|512_stddev 29.0 ns 29.0 ns 10
replace bb to -- by init stringa|512_cv 5.50 % 5.50 % 10
replace bb to -- by init stringa|1024_mean 1029 ns 1029 ns 10
replace bb to -- by init stringa|1024_median 1029 ns 1029 ns 10
replace bb to -- by init stringa|1024_stddev 14.0 ns 14.0 ns 10
replace bb to -- by init stringa|1024_cv 1.36 % 1.36 % 10
replace bb to -- by init stringa|2048_mean 2041 ns 2041 ns 10
replace bb to -- by init stringa|2048_median 2041 ns 2041 ns 10
replace bb to -- by init stringa|2048_stddev 41.6 ns 41.6 ns 10
replace bb to -- by init stringa|2048_cv 2.04 % 2.04 % 10
----- Hash Map insert and find ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
hashStrMapA<size_t> emplace & find stringa;_mean 3720924 ns 3720931 ns 10
hashStrMapA<size_t> emplace & find stringa;_median 3710051 ns 3710034 ns 10
hashStrMapA<size_t> emplace & find stringa;_stddev 41589 ns 41593 ns 10
hashStrMapA<size_t> emplace & find stringa;_cv 1.12 % 1.12 % 10
std::unordered_map<std::string, size_t> emplace & find std::string;_mean 3624563 ns 3624558 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string;_median 3613358 ns 3613332 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string;_stddev 57870 ns 57855 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string;_cv 1.60 % 1.60 % 10
hashStrMapA<size_t> emplace & find ssa;_mean 3730268 ns 3730281 ns 10
hashStrMapA<size_t> emplace & find ssa;_median 3700358 ns 3700373 ns 10
hashStrMapA<size_t> emplace & find ssa;_stddev 105448 ns 105449 ns 10
hashStrMapA<size_t> emplace & find ssa;_cv 2.83 % 2.83 % 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_mean 4036697 ns 4036676 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_median 4029808 ns 4029818 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_stddev 57315 ns 57303 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_cv 1.42 % 1.42 % 10
----- Build Full Func Name ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
Build func full name std::string;_mean 1031 ns 1031 ns 10
Build func full name std::string;_median 951 ns 951 ns 10
Build func full name std::string;_stddev 117 ns 117 ns 10
Build func full name std::string;_cv 11.31 % 11.31 % 10
Build func full name std::string 1;_mean 999 ns 999 ns 10
Build func full name std::string 1;_median 1003 ns 1003 ns 10
Build func full name std::string 1;_stddev 17.0 ns 17.0 ns 10
Build func full name std::string 1;_cv 1.70 % 1.70 % 10
Build func full name std::stream;_mean 2626 ns 2626 ns 10
Build func full name std::stream;_median 2620 ns 2620 ns 10
Build func full name std::stream;_stddev 58.5 ns 58.5 ns 10
Build func full name std::stream;_cv 2.23 % 2.23 % 10
Build func full name stringa;_mean 602 ns 602 ns 10
Build func full name stringa;_median 588 ns 588 ns 10
Build func full name stringa;_stddev 33.5 ns 33.5 ns 10
Build func full name stringa;_cv 5.57 % 5.57 % 10
Build func full name stringa 1;_mean 674 ns 674 ns 10
Build func full name stringa 1;_median 667 ns 667 ns 10
Build func full name stringa 1;_stddev 29.9 ns 29.9 ns 10
Build func full name stringa 1;_cv 4.43 % 4.43 % 10