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

792 lines
117 KiB
Plaintext

2025-11-26T18:35:01+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.10, 0.62, 0.73
--------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------------------------------------------------------------------------------------------
----- Create Empty Str ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e;_mean 1.11 ns 1.11 ns 10
std::string e;_median 1.12 ns 1.12 ns 10
std::string e;_stddev 0.017 ns 0.017 ns 10
std::string e;_cv 1.53 % 1.53 % 10
std::string_view e;_mean 0.369 ns 0.369 ns 10
std::string_view e;_median 0.369 ns 0.369 ns 10
std::string_view e;_stddev 0.005 ns 0.005 ns 10
std::string_view e;_cv 1.43 % 1.43 % 10
ssa e;_mean 0.369 ns 0.369 ns 10
ssa e;_median 0.366 ns 0.366 ns 10
ssa e;_stddev 0.011 ns 0.011 ns 10
ssa e;_cv 2.92 % 2.92 % 10
stringa e;_mean 0.742 ns 0.742 ns 10
stringa e;_median 0.744 ns 0.744 ns 10
stringa e;_stddev 0.013 ns 0.013 ns 10
stringa e;_cv 1.75 % 1.75 % 10
lstringa<20> e;_mean 1.13 ns 1.13 ns 10
lstringa<20> e;_median 1.13 ns 1.13 ns 10
lstringa<20> e;_stddev 0.046 ns 0.046 ns 10
lstringa<20> e;_cv 4.10 % 4.10 % 10
lstringa<40> e;_mean 1.13 ns 1.13 ns 10
lstringa<40> e;_median 1.14 ns 1.14 ns 10
lstringa<40> e;_stddev 0.025 ns 0.025 ns 10
lstringa<40> e;_cv 2.23 % 2.23 % 10
----- Create Str from short literal (9 symbols) --------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "Test text";_mean 1.91 ns 1.91 ns 10
std::string e = "Test text";_median 1.90 ns 1.90 ns 10
std::string e = "Test text";_stddev 0.098 ns 0.098 ns 10
std::string e = "Test text";_cv 5.10 % 5.10 % 10
std::string_view e = "Test text";_mean 0.748 ns 0.748 ns 10
std::string_view e = "Test text";_median 0.751 ns 0.751 ns 10
std::string_view e = "Test text";_stddev 0.012 ns 0.012 ns 10
std::string_view e = "Test text";_cv 1.56 % 1.56 % 10
ssa e = "Test text";_mean 0.374 ns 0.374 ns 10
ssa e = "Test text";_median 0.373 ns 0.373 ns 10
ssa e = "Test text";_stddev 0.008 ns 0.008 ns 10
ssa e = "Test text";_cv 2.18 % 2.18 % 10
stringa e = "Test text";_mean 1.11 ns 1.11 ns 10
stringa e = "Test text";_median 1.11 ns 1.11 ns 10
stringa e = "Test text";_stddev 0.045 ns 0.045 ns 10
stringa e = "Test text";_cv 4.03 % 4.03 % 10
lstringa<20> e = "Test text";_mean 1.88 ns 1.88 ns 10
lstringa<20> e = "Test text";_median 1.87 ns 1.87 ns 10
lstringa<20> e = "Test text";_stddev 0.034 ns 0.034 ns 10
lstringa<20> e = "Test text";_cv 1.79 % 1.79 % 10
lstringa<40> e = "Test text";_mean 1.86 ns 1.86 ns 10
lstringa<40> e = "Test text";_median 1.86 ns 1.86 ns 10
lstringa<40> e = "Test text";_stddev 0.045 ns 0.045 ns 10
lstringa<40> e = "Test text";_cv 2.41 % 2.41 % 10
----- Create Str from long literal (30 symbols) ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string e = "123456789012345678901234567890";_mean 18.8 ns 18.8 ns 10
std::string e = "123456789012345678901234567890";_median 18.8 ns 18.8 ns 10
std::string e = "123456789012345678901234567890";_stddev 0.316 ns 0.316 ns 10
std::string e = "123456789012345678901234567890";_cv 1.68 % 1.68 % 10
std::string_view e = "123456789012345678901234567890";_mean 0.747 ns 0.747 ns 10
std::string_view e = "123456789012345678901234567890";_median 0.747 ns 0.747 ns 10
std::string_view e = "123456789012345678901234567890";_stddev 0.009 ns 0.009 ns 10
std::string_view e = "123456789012345678901234567890";_cv 1.14 % 1.14 % 10
ssa e = "123456789012345678901234567890";_mean 0.373 ns 0.373 ns 10
ssa e = "123456789012345678901234567890";_median 0.375 ns 0.375 ns 10
ssa e = "123456789012345678901234567890";_stddev 0.004 ns 0.004 ns 10
ssa e = "123456789012345678901234567890";_cv 1.18 % 1.18 % 10
stringa e = "123456789012345678901234567890";_mean 1.13 ns 1.13 ns 10
stringa e = "123456789012345678901234567890";_median 1.12 ns 1.12 ns 10
stringa e = "123456789012345678901234567890";_stddev 0.024 ns 0.024 ns 10
stringa e = "123456789012345678901234567890";_cv 2.12 % 2.12 % 10
lstringa<20> e = "123456789012345678901234567890";_mean 21.2 ns 21.2 ns 10
lstringa<20> e = "123456789012345678901234567890";_median 21.1 ns 21.1 ns 10
lstringa<20> e = "123456789012345678901234567890";_stddev 0.428 ns 0.418 ns 10
lstringa<20> e = "123456789012345678901234567890";_cv 2.02 % 1.98 % 10
lstringa<40> e = "123456789012345678901234567890";_mean 2.57 ns 2.57 ns 10
lstringa<40> e = "123456789012345678901234567890";_median 2.56 ns 2.56 ns 10
lstringa<40> e = "123456789012345678901234567890";_stddev 0.051 ns 0.051 ns 10
lstringa<40> e = "123456789012345678901234567890";_cv 1.98 % 1.98 % 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.98 ns 4.98 ns 10
std::string e = "Test text"; auto c{e};_median 4.98 ns 4.98 ns 10
std::string e = "Test text"; auto c{e};_stddev 0.126 ns 0.126 ns 10
std::string e = "Test text"; auto c{e};_cv 2.53 % 2.53 % 10
std::string_view e = "Test text"; auto c{e};_mean 0.373 ns 0.373 ns 10
std::string_view e = "Test text"; auto c{e};_median 0.373 ns 0.373 ns 10
std::string_view e = "Test text"; auto c{e};_stddev 0.004 ns 0.004 ns 10
std::string_view e = "Test text"; auto c{e};_cv 1.20 % 1.20 % 10
ssa e = "Test text"; auto c{e};_mean 0.376 ns 0.376 ns 10
ssa e = "Test text"; auto c{e};_median 0.373 ns 0.373 ns 10
ssa e = "Test text"; auto c{e};_stddev 0.017 ns 0.017 ns 10
ssa e = "Test text"; auto c{e};_cv 4.60 % 4.60 % 10
stringa e = "Test text"; auto c{e};_mean 1.13 ns 1.13 ns 10
stringa e = "Test text"; auto c{e};_median 1.13 ns 1.13 ns 10
stringa e = "Test text"; auto c{e};_stddev 0.048 ns 0.048 ns 10
stringa e = "Test text"; auto c{e};_cv 4.29 % 4.29 % 10
lstringa<20> e = "Test text"; auto c{e};_mean 4.84 ns 4.84 ns 10
lstringa<20> e = "Test text"; auto c{e};_median 4.85 ns 4.85 ns 10
lstringa<20> e = "Test text"; auto c{e};_stddev 0.070 ns 0.070 ns 10
lstringa<20> e = "Test text"; auto c{e};_cv 1.44 % 1.44 % 10
lstringa<40> e = "Test text"; auto c{e};_mean 4.53 ns 4.53 ns 10
lstringa<40> e = "Test text"; auto c{e};_median 4.51 ns 4.51 ns 10
lstringa<40> e = "Test text"; auto c{e};_stddev 0.109 ns 0.109 ns 10
lstringa<40> e = "Test text"; auto c{e};_cv 2.41 % 2.41 % 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 19.6 ns 19.6 ns 10
std::string e = "123456789012345678901234567890"; auto c{e};_median 19.7 ns 19.7 ns 10
std::string e = "123456789012345678901234567890"; auto c{e};_stddev 0.423 ns 0.423 ns 10
std::string e = "123456789012345678901234567890"; auto c{e};_cv 2.16 % 2.16 % 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_mean 0.748 ns 0.748 ns 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_median 0.740 ns 0.740 ns 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_stddev 0.022 ns 0.022 ns 10
std::string_view e = "123456789012345678901234567890"; auto c{e};_cv 2.88 % 2.88 % 10
ssa e = "123456789012345678901234567890"; auto c{e};_mean 0.373 ns 0.373 ns 10
ssa e = "123456789012345678901234567890"; auto c{e};_median 0.371 ns 0.371 ns 10
ssa e = "123456789012345678901234567890"; auto c{e};_stddev 0.007 ns 0.007 ns 10
ssa e = "123456789012345678901234567890"; auto c{e};_cv 2.00 % 2.00 % 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.024 ns 0.024 ns 10
stringa e = "123456789012345678901234567890"; auto c{e};_cv 2.10 % 2.10 % 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_mean 20.0 ns 20.0 ns 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_median 20.1 ns 20.1 ns 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_stddev 0.383 ns 0.383 ns 10
lstringa<20> e = "123456789012345678901234567890"; auto c{e};_cv 1.91 % 1.91 % 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_mean 5.40 ns 5.40 ns 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_median 5.43 ns 5.43 ns 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_stddev 0.065 ns 0.065 ns 10
lstringa<40> e = "123456789012345678901234567890"; auto c{e};_cv 1.20 % 1.20 % 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.86 ns 10
std::string::find;_median 6.86 ns 6.85 ns 10
std::string::find;_stddev 0.076 ns 0.077 ns 10
std::string::find;_cv 1.11 % 1.12 % 10
std::string_view::find;_mean 7.75 ns 7.75 ns 10
std::string_view::find;_median 7.71 ns 7.71 ns 10
std::string_view::find;_stddev 0.370 ns 0.370 ns 10
std::string_view::find;_cv 4.77 % 4.77 % 10
ssa::find;_mean 6.96 ns 6.96 ns 10
ssa::find;_median 6.82 ns 6.82 ns 10
ssa::find;_stddev 0.484 ns 0.484 ns 10
ssa::find;_cv 6.96 % 6.96 % 10
stringa::find;_mean 7.38 ns 7.38 ns 10
stringa::find;_median 7.33 ns 7.33 ns 10
stringa::find;_stddev 0.301 ns 0.301 ns 10
stringa::find;_cv 4.08 % 4.08 % 10
lstringa<20>::find;_mean 6.90 ns 6.90 ns 10
lstringa<20>::find;_median 6.84 ns 6.84 ns 10
lstringa<20>::find;_stddev 0.269 ns 0.269 ns 10
lstringa<20>::find;_cv 3.90 % 3.90 % 10
lstringa<40>::find;_mean 6.83 ns 6.83 ns 10
lstringa<40>::find;_median 6.84 ns 6.84 ns 10
lstringa<40>::find;_stddev 0.127 ns 0.127 ns 10
lstringa<40>::find;_cv 1.86 % 1.86 % 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 4.90 ns 4.90 ns 10
std::string copy{str_with_len_N};/15_median 4.90 ns 4.90 ns 10
std::string copy{str_with_len_N};/15_stddev 0.110 ns 0.110 ns 10
std::string copy{str_with_len_N};/15_cv 2.23 % 2.23 % 10
std::string copy{str_with_len_N};/16_mean 23.1 ns 23.1 ns 10
std::string copy{str_with_len_N};/16_median 22.8 ns 22.8 ns 10
std::string copy{str_with_len_N};/16_stddev 2.01 ns 2.01 ns 10
std::string copy{str_with_len_N};/16_cv 8.69 % 8.69 % 10
std::string copy{str_with_len_N};/23_mean 23.2 ns 23.2 ns 10
std::string copy{str_with_len_N};/23_median 22.9 ns 22.9 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.94 % 4.94 % 10
std::string copy{str_with_len_N};/24_mean 22.3 ns 22.3 ns 10
std::string copy{str_with_len_N};/24_median 22.2 ns 22.2 ns 10
std::string copy{str_with_len_N};/24_stddev 0.521 ns 0.521 ns 10
std::string copy{str_with_len_N};/24_cv 2.33 % 2.33 % 10
std::string copy{str_with_len_N};/32_mean 22.2 ns 22.2 ns 10
std::string copy{str_with_len_N};/32_median 22.0 ns 22.0 ns 10
std::string copy{str_with_len_N};/32_stddev 0.529 ns 0.529 ns 10
std::string copy{str_with_len_N};/32_cv 2.39 % 2.39 % 10
std::string copy{str_with_len_N};/64_mean 22.6 ns 22.6 ns 10
std::string copy{str_with_len_N};/64_median 22.4 ns 22.4 ns 10
std::string copy{str_with_len_N};/64_stddev 0.917 ns 0.917 ns 10
std::string copy{str_with_len_N};/64_cv 4.05 % 4.05 % 10
std::string copy{str_with_len_N};/128_mean 26.2 ns 26.2 ns 10
std::string copy{str_with_len_N};/128_median 26.1 ns 26.1 ns 10
std::string copy{str_with_len_N};/128_stddev 0.553 ns 0.553 ns 10
std::string copy{str_with_len_N};/128_cv 2.11 % 2.11 % 10
std::string copy{str_with_len_N};/256_mean 27.3 ns 27.3 ns 10
std::string copy{str_with_len_N};/256_median 27.3 ns 27.3 ns 10
std::string copy{str_with_len_N};/256_stddev 0.472 ns 0.471 ns 10
std::string copy{str_with_len_N};/256_cv 1.73 % 1.73 % 10
std::string copy{str_with_len_N};/512_mean 28.3 ns 28.3 ns 10
std::string copy{str_with_len_N};/512_median 28.1 ns 28.1 ns 10
std::string copy{str_with_len_N};/512_stddev 0.553 ns 0.553 ns 10
std::string copy{str_with_len_N};/512_cv 1.95 % 1.95 % 10
std::string copy{str_with_len_N};/1024_mean 39.6 ns 39.6 ns 10
std::string copy{str_with_len_N};/1024_median 39.6 ns 39.6 ns 10
std::string copy{str_with_len_N};/1024_stddev 0.393 ns 0.393 ns 10
std::string copy{str_with_len_N};/1024_cv 0.99 % 0.99 % 10
std::string copy{str_with_len_N};/2048_mean 81.3 ns 81.3 ns 10
std::string copy{str_with_len_N};/2048_median 79.9 ns 79.9 ns 10
std::string copy{str_with_len_N};/2048_stddev 7.71 ns 7.71 ns 10
std::string copy{str_with_len_N};/2048_cv 9.48 % 9.48 % 10
std::string copy{str_with_len_N};/4096_mean 117 ns 117 ns 10
std::string copy{str_with_len_N};/4096_median 117 ns 117 ns 10
std::string copy{str_with_len_N};/4096_stddev 4.59 ns 4.59 ns 10
std::string copy{str_with_len_N};/4096_cv 3.91 % 3.91 % 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.12 ns 1.12 ns 10
stringa copy{str_with_len_N};/15_stddev 0.027 ns 0.027 ns 10
stringa copy{str_with_len_N};/15_cv 2.39 % 2.39 % 10
stringa copy{str_with_len_N};/16_mean 1.12 ns 1.12 ns 10
stringa copy{str_with_len_N};/16_median 1.12 ns 1.12 ns 10
stringa copy{str_with_len_N};/16_stddev 0.011 ns 0.011 ns 10
stringa copy{str_with_len_N};/16_cv 1.01 % 1.01 % 10
stringa copy{str_with_len_N};/23_mean 1.11 ns 1.11 ns 10
stringa copy{str_with_len_N};/23_median 1.11 ns 1.11 ns 10
stringa copy{str_with_len_N};/23_stddev 0.023 ns 0.023 ns 10
stringa copy{str_with_len_N};/23_cv 2.08 % 2.08 % 10
stringa copy{str_with_len_N};/24_mean 16.6 ns 16.6 ns 10
stringa copy{str_with_len_N};/24_median 16.3 ns 16.3 ns 10
stringa copy{str_with_len_N};/24_stddev 1.15 ns 1.15 ns 10
stringa copy{str_with_len_N};/24_cv 6.92 % 6.92 % 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.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/32_stddev 0.182 ns 0.184 ns 10
stringa copy{str_with_len_N};/32_cv 1.12 % 1.13 % 10
stringa copy{str_with_len_N};/64_mean 16.0 ns 16.0 ns 10
stringa copy{str_with_len_N};/64_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/64_stddev 0.133 ns 0.133 ns 10
stringa copy{str_with_len_N};/64_cv 0.83 % 0.83 % 10
stringa copy{str_with_len_N};/128_mean 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/128_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/128_stddev 0.420 ns 0.420 ns 10
stringa copy{str_with_len_N};/128_cv 2.60 % 2.60 % 10
stringa copy{str_with_len_N};/256_mean 16.0 ns 16.0 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.093 ns 0.093 ns 10
stringa copy{str_with_len_N};/256_cv 0.58 % 0.58 % 10
stringa copy{str_with_len_N};/512_mean 16.0 ns 16.0 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.158 ns 0.158 ns 10
stringa copy{str_with_len_N};/512_cv 0.98 % 0.98 % 10
stringa copy{str_with_len_N};/1024_mean 16.4 ns 16.4 ns 10
stringa copy{str_with_len_N};/1024_median 16.2 ns 16.2 ns 10
stringa copy{str_with_len_N};/1024_stddev 0.353 ns 0.353 ns 10
stringa copy{str_with_len_N};/1024_cv 2.16 % 2.16 % 10
stringa copy{str_with_len_N};/2048_mean 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/2048_median 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/2048_stddev 0.089 ns 0.089 ns 10
stringa copy{str_with_len_N};/2048_cv 0.55 % 0.55 % 10
stringa copy{str_with_len_N};/4096_mean 16.1 ns 16.1 ns 10
stringa copy{str_with_len_N};/4096_median 16.0 ns 16.0 ns 10
stringa copy{str_with_len_N};/4096_stddev 0.117 ns 0.117 ns 10
stringa copy{str_with_len_N};/4096_cv 0.73 % 0.73 % 10
lstringa<16> copy{str_with_len_N};/15_mean 5.08 ns 5.08 ns 10
lstringa<16> copy{str_with_len_N};/15_median 5.03 ns 5.03 ns 10
lstringa<16> copy{str_with_len_N};/15_stddev 0.271 ns 0.271 ns 10
lstringa<16> copy{str_with_len_N};/15_cv 5.33 % 5.33 % 10
lstringa<16> copy{str_with_len_N};/16_mean 4.97 ns 4.97 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.234 ns 0.234 ns 10
lstringa<16> copy{str_with_len_N};/16_cv 4.72 % 4.72 % 10
lstringa<16> copy{str_with_len_N};/23_mean 4.90 ns 4.90 ns 10
lstringa<16> copy{str_with_len_N};/23_median 4.89 ns 4.89 ns 10
lstringa<16> copy{str_with_len_N};/23_stddev 0.093 ns 0.093 ns 10
lstringa<16> copy{str_with_len_N};/23_cv 1.89 % 1.89 % 10
lstringa<16> copy{str_with_len_N};/24_mean 24.2 ns 24.2 ns 10
lstringa<16> copy{str_with_len_N};/24_median 24.3 ns 24.3 ns 10
lstringa<16> copy{str_with_len_N};/24_stddev 0.377 ns 0.377 ns 10
lstringa<16> copy{str_with_len_N};/24_cv 1.56 % 1.56 % 10
lstringa<16> copy{str_with_len_N};/32_mean 24.1 ns 24.1 ns 10
lstringa<16> copy{str_with_len_N};/32_median 24.2 ns 24.2 ns 10
lstringa<16> copy{str_with_len_N};/32_stddev 0.406 ns 0.406 ns 10
lstringa<16> copy{str_with_len_N};/32_cv 1.69 % 1.69 % 10
lstringa<16> copy{str_with_len_N};/64_mean 25.6 ns 25.6 ns 10
lstringa<16> copy{str_with_len_N};/64_median 25.7 ns 25.7 ns 10
lstringa<16> copy{str_with_len_N};/64_stddev 0.473 ns 0.473 ns 10
lstringa<16> copy{str_with_len_N};/64_cv 1.85 % 1.85 % 10
lstringa<16> copy{str_with_len_N};/128_mean 27.3 ns 27.3 ns 10
lstringa<16> copy{str_with_len_N};/128_median 27.3 ns 27.3 ns 10
lstringa<16> copy{str_with_len_N};/128_stddev 0.298 ns 0.298 ns 10
lstringa<16> copy{str_with_len_N};/128_cv 1.09 % 1.09 % 10
lstringa<16> copy{str_with_len_N};/256_mean 27.6 ns 27.6 ns 10
lstringa<16> copy{str_with_len_N};/256_median 27.5 ns 27.5 ns 10
lstringa<16> copy{str_with_len_N};/256_stddev 1.23 ns 1.23 ns 10
lstringa<16> copy{str_with_len_N};/256_cv 4.45 % 4.45 % 10
lstringa<16> copy{str_with_len_N};/512_mean 30.4 ns 30.4 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.54 ns 1.54 ns 10
lstringa<16> copy{str_with_len_N};/512_cv 5.07 % 5.07 % 10
lstringa<16> copy{str_with_len_N};/1024_mean 70.0 ns 70.0 ns 10
lstringa<16> copy{str_with_len_N};/1024_median 67.8 ns 67.8 ns 10
lstringa<16> copy{str_with_len_N};/1024_stddev 18.1 ns 18.1 ns 10
lstringa<16> copy{str_with_len_N};/1024_cv 25.80 % 25.80 % 10
lstringa<16> copy{str_with_len_N};/2048_mean 74.5 ns 74.5 ns 10
lstringa<16> copy{str_with_len_N};/2048_median 74.1 ns 74.1 ns 10
lstringa<16> copy{str_with_len_N};/2048_stddev 11.7 ns 11.7 ns 10
lstringa<16> copy{str_with_len_N};/2048_cv 15.66 % 15.66 % 10
lstringa<16> copy{str_with_len_N};/4096_mean 90.9 ns 90.9 ns 10
lstringa<16> copy{str_with_len_N};/4096_median 88.7 ns 88.7 ns 10
lstringa<16> copy{str_with_len_N};/4096_stddev 5.55 ns 5.55 ns 10
lstringa<16> copy{str_with_len_N};/4096_cv 6.11 % 6.11 % 10
lstringa<512> copy{str_with_len_N};/15_mean 5.14 ns 5.14 ns 10
lstringa<512> copy{str_with_len_N};/15_median 5.06 ns 5.06 ns 10
lstringa<512> copy{str_with_len_N};/15_stddev 0.297 ns 0.297 ns 10
lstringa<512> copy{str_with_len_N};/15_cv 5.77 % 5.77 % 10
lstringa<512> copy{str_with_len_N};/16_mean 4.86 ns 4.86 ns 10
lstringa<512> copy{str_with_len_N};/16_median 4.85 ns 4.85 ns 10
lstringa<512> copy{str_with_len_N};/16_stddev 0.077 ns 0.077 ns 10
lstringa<512> copy{str_with_len_N};/16_cv 1.58 % 1.58 % 10
lstringa<512> copy{str_with_len_N};/23_mean 4.91 ns 4.91 ns 10
lstringa<512> copy{str_with_len_N};/23_median 4.91 ns 4.91 ns 10
lstringa<512> copy{str_with_len_N};/23_stddev 0.088 ns 0.088 ns 10
lstringa<512> copy{str_with_len_N};/23_cv 1.79 % 1.79 % 10
lstringa<512> copy{str_with_len_N};/24_mean 4.99 ns 4.99 ns 10
lstringa<512> copy{str_with_len_N};/24_median 4.96 ns 4.96 ns 10
lstringa<512> copy{str_with_len_N};/24_stddev 0.209 ns 0.209 ns 10
lstringa<512> copy{str_with_len_N};/24_cv 4.18 % 4.18 % 10
lstringa<512> copy{str_with_len_N};/32_mean 4.58 ns 4.58 ns 10
lstringa<512> copy{str_with_len_N};/32_median 4.54 ns 4.54 ns 10
lstringa<512> copy{str_with_len_N};/32_stddev 0.159 ns 0.159 ns 10
lstringa<512> copy{str_with_len_N};/32_cv 3.48 % 3.48 % 10
lstringa<512> copy{str_with_len_N};/64_mean 6.06 ns 6.06 ns 10
lstringa<512> copy{str_with_len_N};/64_median 6.04 ns 6.04 ns 10
lstringa<512> copy{str_with_len_N};/64_stddev 0.100 ns 0.100 ns 10
lstringa<512> copy{str_with_len_N};/64_cv 1.65 % 1.65 % 10
lstringa<512> copy{str_with_len_N};/128_mean 6.44 ns 6.45 ns 10
lstringa<512> copy{str_with_len_N};/128_median 6.47 ns 6.47 ns 10
lstringa<512> copy{str_with_len_N};/128_stddev 0.092 ns 0.092 ns 10
lstringa<512> copy{str_with_len_N};/128_cv 1.42 % 1.42 % 10
lstringa<512> copy{str_with_len_N};/256_mean 8.00 ns 8.00 ns 10
lstringa<512> copy{str_with_len_N};/256_median 7.96 ns 7.96 ns 10
lstringa<512> copy{str_with_len_N};/256_stddev 0.177 ns 0.177 ns 10
lstringa<512> copy{str_with_len_N};/256_cv 2.22 % 2.22 % 10
lstringa<512> copy{str_with_len_N};/512_mean 10.7 ns 10.7 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.188 ns 0.188 ns 10
lstringa<512> copy{str_with_len_N};/512_cv 1.76 % 1.76 % 10
lstringa<512> copy{str_with_len_N};/1024_mean 69.8 ns 69.8 ns 10
lstringa<512> copy{str_with_len_N};/1024_median 65.9 ns 65.9 ns 10
lstringa<512> copy{str_with_len_N};/1024_stddev 17.9 ns 17.9 ns 10
lstringa<512> copy{str_with_len_N};/1024_cv 25.67 % 25.67 % 10
lstringa<512> copy{str_with_len_N};/2048_mean 73.4 ns 73.4 ns 10
lstringa<512> copy{str_with_len_N};/2048_median 72.8 ns 72.8 ns 10
lstringa<512> copy{str_with_len_N};/2048_stddev 11.2 ns 11.2 ns 10
lstringa<512> copy{str_with_len_N};/2048_cv 15.26 % 15.26 % 10
lstringa<512> copy{str_with_len_N};/4096_mean 90.8 ns 90.8 ns 10
lstringa<512> copy{str_with_len_N};/4096_median 88.1 ns 88.1 ns 10
lstringa<512> copy{str_with_len_N};/4096_stddev 5.69 ns 5.69 ns 10
lstringa<512> copy{str_with_len_N};/4096_cv 6.27 % 6.27 % 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.5 ns 27.5 ns 10
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_median 27.4 ns 27.4 ns 10
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_stddev 0.887 ns 0.887 ns 10
std::string s = "123456789"; int res = std::strtol(s.c_str(), 0, 10);_cv 3.23 % 3.23 % 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_mean 15.8 ns 15.8 ns 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_median 15.7 ns 15.7 ns 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_stddev 0.845 ns 0.845 ns 10
std::string_view s = "123456789"; std::from_chars(s.data(), s.data() + s.size(), res, 10);_cv 5.35 % 5.35 % 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 12.8 ns 12.8 ns 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_median 12.7 ns 12.7 ns 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.243 ns 0.243 ns 10
stringa s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 1.90 % 1.90 % 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 12.5 ns 12.5 ns 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_median 12.5 ns 12.5 ns 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.210 ns 0.210 ns 10
ssa s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 1.68 % 1.68 % 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_mean 12.5 ns 12.5 ns 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_median 12.5 ns 12.5 ns 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_stddev 0.262 ns 0.262 ns 10
lstringa<20> s = "123456789"; int res = s.to_int<int, true, 10, false>_cv 2.09 % 2.09 % 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 23.9 ns 23.9 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 0.615 ns 0.615 ns 10
std::string s = "abcDef"; int res = std::strtol(s.c_str(), 0, 16);_cv 2.57 % 2.57 % 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_mean 10.0 ns 10.0 ns 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_median 9.83 ns 9.83 ns 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_stddev 0.588 ns 0.588 ns 10
std::string_view s = "abcDef"; std::from_chars(s.data(), s.data() + s.size(), res, 16);_cv 5.87 % 5.87 % 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 12.9 ns 12.9 ns 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 12.8 ns 12.8 ns 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.387 ns 0.387 ns 10
stringa s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 3.00 % 3.00 % 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 12.5 ns 12.5 ns 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 12.5 ns 12.5 ns 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.272 ns 0.272 ns 10
ssa s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 2.17 % 2.17 % 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_mean 12.7 ns 12.7 ns 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_median 12.4 ns 12.4 ns 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_stddev 0.542 ns 0.542 ns 10
lstringa<20> s = "abcDef"; int res = s.to_int<int, true, 16, false>_cv 4.28 % 4.28 % 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.9 ns 28.9 ns 10
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_median 29.0 ns 29.0 ns 10
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_stddev 0.673 ns 0.673 ns 10
std::string s = " 123456789"; int res = std::strtol(s.c_str(), 0, 0);_cv 2.32 % 2.32 % 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_mean 18.8 ns 18.8 ns 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_median 18.8 ns 18.8 ns 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_stddev 0.285 ns 0.285 ns 10
stringa s = " 123456789"; int res = s.to_int<int>; // Check overflow_cv 1.52 % 1.52 % 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_mean 16.1 ns 16.1 ns 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_median 16.1 ns 16.1 ns 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_stddev 0.269 ns 0.269 ns 10
ssa s = " 123456789"; int res = s.to_int<int, false>; // No check overflow_cv 1.67 % 1.67 % 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 65.2 ns 65.2 ns 10
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_stddev 1.50 ns 1.50 ns 10
std::string s = "1234.567e10"; double res = std::strtod(s.c_str(), nullptr);_cv 2.30 % 2.30 % 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_mean 24.2 ns 24.2 ns 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_median 24.2 ns 24.2 ns 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_stddev 0.504 ns 0.504 ns 10
std::string_view s = "1234.567e10"; std::from_chars(s.data(), s.data() + s.size(), res);_cv 2.08 % 2.08 % 10
ssa s = "1234.567e10"; double res = *s.to_double()_mean 26.1 ns 26.1 ns 10
ssa s = "1234.567e10"; double res = *s.to_double()_median 26.0 ns 26.0 ns 10
ssa s = "1234.567e10"; double res = *s.to_double()_stddev 0.459 ns 0.459 ns 10
ssa s = "1234.567e10"; double res = *s.to_double()_cv 1.76 % 1.76 % 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 1403 ns 1403 ns 10
std::stringstream str; ... str << "abbaabbaabbaabba";_median 1392 ns 1392 ns 10
std::stringstream str; ... str << "abbaabbaabbaabba";_stddev 56.2 ns 56.2 ns 10
std::stringstream str; ... str << "abbaabbaabbaabba";_cv 4.01 % 4.01 % 10
std::string str; ... str += "abbaabbaabbaabba";_mean 359 ns 359 ns 10
std::string str; ... str += "abbaabbaabbaabba";_median 363 ns 363 ns 10
std::string str; ... str += "abbaabbaabbaabba";_stddev 22.7 ns 22.7 ns 10
std::string str; ... str += "abbaabbaabbaabba";_cv 6.33 % 6.33 % 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_mean 337 ns 337 ns 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_median 332 ns 332 ns 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_stddev 15.8 ns 15.8 ns 10
lstringa<8> str; ... str += "abbaabbaabbaabba";_cv 4.69 % 4.69 % 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_mean 242 ns 242 ns 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_median 245 ns 245 ns 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_stddev 10.9 ns 10.9 ns 10
lstringa<128> str; ... str += "abbaabbaabbaabba";_cv 4.51 % 4.51 % 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_mean 227 ns 227 ns 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_median 226 ns 226 ns 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_stddev 10.2 ns 10.2 ns 10
lstringa<512> str; ... str += "abbaabbaabbaabba";_cv 4.48 % 4.48 % 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_mean 138 ns 138 ns 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_median 138 ns 138 ns 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_stddev 2.87 ns 2.87 ns 10
lstringa<1024> str; ... str += "abbaabbaabbaabba";_cv 2.07 % 2.07 % 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 1403 ns 1403 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_median 1376 ns 1376 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_stddev 95.9 ns 95.9 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba";_cv 6.84 % 6.84 % 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_mean 1296 ns 1296 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_median 1297 ns 1297 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_stddev 14.4 ns 14.4 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba";_cv 1.11 % 1.11 % 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_mean 431 ns 431 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_median 435 ns 435 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_stddev 22.8 ns 22.8 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba";_cv 5.28 % 5.28 % 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_mean 326 ns 326 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_median 330 ns 330 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_stddev 18.3 ns 18.3 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba";_cv 5.61 % 5.61 % 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_mean 312 ns 312 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_median 316 ns 316 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_stddev 11.6 ns 11.6 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba";_cv 3.70 % 3.70 % 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_mean 253 ns 253 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_median 243 ns 243 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_stddev 20.5 ns 20.5 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba";_cv 8.10 % 8.10 % 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 125727 ns 125726 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_median 125997 ns 125994 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_stddev 2545 ns 2545 ns 10
std::stringstream str; ... str << str_var << "abbaabbaabbaabba"; 2048 times_cv 2.02 % 2.02 % 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 77160 ns 77160 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 76892 ns 76892 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 1509 ns 1509 ns 10
std::string str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 1.96 % 1.96 % 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 52479 ns 52479 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 52594 ns 52594 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 2170 ns 2170 ns 10
lstringa<8> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 4.14 % 4.14 % 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 28389 ns 28389 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 29270 ns 29270 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 3975 ns 3975 ns 10
lstringa<128> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 14.00 % 14.00 % 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 18137 ns 18137 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 15931 ns 15931 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 4628 ns 4628 ns 10
lstringa<512> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 25.52 % 25.52 % 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_mean 15503 ns 15503 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_median 15576 ns 15576 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_stddev 298 ns 298 ns 10
lstringa<1024> str; ... str += str_var + "abbaabbaabbaabba"; 2048 times_cv 1.92 % 1.92 % 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 1369 ns 1369 ns 10
std::stringstream str; ... str << str_var1 << str_var2;_median 1355 ns 1355 ns 10
std::stringstream str; ... str << str_var1 << str_var2;_stddev 50.3 ns 50.3 ns 10
std::stringstream str; ... str << str_var1 << str_var2;_cv 3.68 % 3.68 % 10
std::string str; ... str += str_var1 + str_var2;_mean 1396 ns 1396 ns 10
std::string str; ... str += str_var1 + str_var2;_median 1376 ns 1376 ns 10
std::string str; ... str += str_var1 + str_var2;_stddev 67.2 ns 67.2 ns 10
std::string str; ... str += str_var1 + str_var2;_cv 4.81 % 4.81 % 10
lstringa<16> str; ... str += str_var1 + str_var2;_mean 523 ns 523 ns 10
lstringa<16> str; ... str += str_var1 + str_var2;_median 492 ns 492 ns 10
lstringa<16> str; ... str += str_var1 + str_var2;_stddev 62.1 ns 62.1 ns 10
lstringa<16> str; ... str += str_var1 + str_var2;_cv 11.86 % 11.86 % 10
lstringa<128> str; ... str += str_var1 + str_var2;_mean 419 ns 419 ns 10
lstringa<128> str; ... str += str_var1 + str_var2;_median 418 ns 418 ns 10
lstringa<128> str; ... str += str_var1 + str_var2;_stddev 11.5 ns 11.5 ns 10
lstringa<128> str; ... str += str_var1 + str_var2;_cv 2.74 % 2.74 % 10
lstringa<512> str; ... str += str_var1 + str_var2;_mean 395 ns 395 ns 10
lstringa<512> str; ... str += str_var1 + str_var2;_median 379 ns 379 ns 10
lstringa<512> str; ... str += str_var1 + str_var2;_stddev 32.8 ns 32.8 ns 10
lstringa<512> str; ... str += str_var1 + str_var2;_cv 8.30 % 8.30 % 10
lstringa<1024> str; ... str += str_var1 + str_var2;_mean 311 ns 311 ns 10
lstringa<1024> str; ... str += str_var1 + str_var2;_median 307 ns 307 ns 10
lstringa<1024> str; ... str += str_var1 + str_var2;_stddev 20.7 ns 20.7 ns 10
lstringa<1024> str; ... str += str_var1 + str_var2;_cv 6.68 % 6.68 % 10
-- Append text, number, text --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::stringstream str; str << "test = " << k << " times";_mean 3149 ns 3149 ns 10
std::stringstream str; str << "test = " << k << " times";_median 3141 ns 3141 ns 10
std::stringstream str; str << "test = " << k << " times";_stddev 163 ns 163 ns 10
std::stringstream str; str << "test = " << k << " times";_cv 5.18 % 5.18 % 10
std::string str = "test = " + std::to_string(k) + " times";_mean 482 ns 482 ns 10
std::string str = "test = " + std::to_string(k) + " times";_median 479 ns 479 ns 10
std::string str = "test = " + std::to_string(k) + " times";_stddev 10.3 ns 10.3 ns 10
std::string str = "test = " + std::to_string(k) + " times";_cv 2.14 % 2.14 % 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_mean 1416 ns 1416 ns 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_median 1403 ns 1403 ns 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_stddev 56.8 ns 56.8 ns 10
char buf[100]; sprintf(buf, "test = %u times", k); std::string str = buf;_cv 4.01 % 4.01 % 10
std::string str = std::format("test = {} times", k);_mean 1134 ns 1134 ns 10
std::string str = std::format("test = {} times", k);_median 1131 ns 1131 ns 10
std::string str = std::format("test = {} times", k);_stddev 22.6 ns 22.6 ns 10
std::string str = std::format("test = {} times", k);_cv 1.99 % 1.99 % 10
lstringa<8> str; str.format("test = {} times", k);_mean 1390 ns 1390 ns 10
lstringa<8> str; str.format("test = {} times", k);_median 1382 ns 1382 ns 10
lstringa<8> str; str.format("test = {} times", k);_stddev 31.5 ns 31.5 ns 10
lstringa<8> str; str.format("test = {} times", k);_cv 2.27 % 2.27 % 10
lstringa<32> str; str.format("test = {} times", k);_mean 963 ns 963 ns 10
lstringa<32> str; str.format("test = {} times", k);_median 968 ns 968 ns 10
lstringa<32> str; str.format("test = {} times", k);_stddev 25.6 ns 25.6 ns 10
lstringa<32> str; str.format("test = {} times", k);_cv 2.66 % 2.66 % 10
lstringa<8> str = "test = " + k + " times";_mean 290 ns 290 ns 10
lstringa<8> str = "test = " + k + " times";_median 288 ns 288 ns 10
lstringa<8> str = "test = " + k + " times";_stddev 7.48 ns 7.49 ns 10
lstringa<8> str = "test = " + k + " times";_cv 2.58 % 2.58 % 10
lstringa<32> str = "test = " + k + " times";_mean 157 ns 157 ns 10
lstringa<32> str = "test = " + k + " times";_median 156 ns 156 ns 10
lstringa<32> str = "test = " + k + " times";_stddev 10.2 ns 10.2 ns 10
lstringa<32> str = "test = " + k + " times";_cv 6.49 % 6.49 % 10
stringa str = "test = " + k + " times";_mean 149 ns 149 ns 10
stringa str = "test = " + k + " times";_median 149 ns 149 ns 10
stringa str = "test = " + k + " times";_stddev 2.52 ns 2.52 ns 10
stringa str = "test = " + k + " times";_cv 1.69 % 1.69 % 10
-- Split text and convert to int --/repeats:1 0.000 ns 0.000 ns 1000000000000
std::string::find + substr + std::strtol_mean 276 ns 276 ns 10
std::string::find + substr + std::strtol_median 279 ns 279 ns 10
std::string::find + substr + std::strtol_stddev 9.35 ns 9.35 ns 10
std::string::find + substr + std::strtol_cv 3.39 % 3.39 % 10
ssa::splitter + ssa::as_int_mean 154 ns 154 ns 10
ssa::splitter + ssa::as_int_median 153 ns 153 ns 10
ssa::splitter + ssa::as_int_stddev 4.66 ns 4.66 ns 10
ssa::splitter + ssa::as_int_cv 3.03 % 3.03 % 10
ssa::splitf + functor_mean 214 ns 214 ns 10
ssa::splitf + functor_median 215 ns 215 ns 10
ssa::splitf + functor_stddev 3.91 ns 3.91 ns 10
ssa::splitf + functor_cv 1.83 % 1.83 % 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 852 ns 852 ns 10
Naive (and wrong) replace symbols with std::string find + replace_median 849 ns 849 ns 10
Naive (and wrong) replace symbols with std::string find + replace_stddev 13.8 ns 13.8 ns 10
Naive (and wrong) replace symbols with std::string find + replace_cv 1.62 % 1.62 % 10
replace symbols with std::string find_first_of + replace_mean 2510 ns 2510 ns 10
replace symbols with std::string find_first_of + replace_median 2491 ns 2491 ns 10
replace symbols with std::string find_first_of + replace_stddev 65.3 ns 65.3 ns 10
replace symbols with std::string find_first_of + replace_cv 2.60 % 2.60 % 10
replace symbols with std::string_view find_first_of + copy_mean 1110 ns 1110 ns 10
replace symbols with std::string_view find_first_of + copy_median 1106 ns 1106 ns 10
replace symbols with std::string_view find_first_of + copy_stddev 36.3 ns 36.3 ns 10
replace symbols with std::string_view find_first_of + copy_cv 3.27 % 3.27 % 10
replace runtime symbols with string expressions and without remembering all search results_mean 1235 ns 1235 ns 10
replace runtime symbols with string expressions and without remembering all search results_median 1213 ns 1213 ns 10
replace runtime symbols with string expressions and without remembering all search results_stddev 58.0 ns 58.0 ns 10
replace runtime symbols with string expressions and without remembering all search results_cv 4.69 % 4.69 % 10
replace runtime symbols with simstr and memorization of all search results_mean 1069 ns 1069 ns 10
replace runtime symbols with simstr and memorization of all search results_median 1025 ns 1025 ns 10
replace runtime symbols with simstr and memorization of all search results_stddev 100 ns 100 ns 10
replace runtime symbols with simstr and memorization of all search results_cv 9.38 % 9.38 % 10
replace const symbols with string expressions and without remembering all search results_mean 1084 ns 1084 ns 10
replace const symbols with string expressions and without remembering all search results_median 1053 ns 1053 ns 10
replace const symbols with string expressions and without remembering all search results_stddev 91.1 ns 91.1 ns 10
replace const symbols with string expressions and without remembering all search results_cv 8.40 % 8.40 % 10
replace const symbols with string expressions and memorization of all search results_mean 862 ns 862 ns 10
replace const symbols with string expressions and memorization of all search results_median 865 ns 865 ns 10
replace const symbols with string expressions and memorization of all search results_stddev 22.9 ns 22.9 ns 10
replace const symbols with string expressions and memorization of all search results_cv 2.66 % 2.66 % 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 170 ns 170 ns 10
Short Naive (and wrong) replace symbols with std::string find + replace_median 169 ns 169 ns 10
Short Naive (and wrong) replace symbols with std::string find + replace_stddev 2.55 ns 2.55 ns 10
Short Naive (and wrong) replace symbols with std::string find + replace_cv 1.50 % 1.50 % 10
Short replace symbols with std::string find_first_of + replace_mean 310 ns 310 ns 10
Short replace symbols with std::string find_first_of + replace_median 309 ns 309 ns 10
Short replace symbols with std::string find_first_of + replace_stddev 8.39 ns 8.39 ns 10
Short replace symbols with std::string find_first_of + replace_cv 2.71 % 2.71 % 10
Short replace symbols with std::string_view find_first_of + copy_mean 165 ns 165 ns 10
Short replace symbols with std::string_view find_first_of + copy_median 164 ns 164 ns 10
Short replace symbols with std::string_view find_first_of + copy_stddev 3.77 ns 3.77 ns 10
Short replace symbols with std::string_view find_first_of + copy_cv 2.29 % 2.29 % 10
Short replace runtime symbols with string expressions and without remembering all search results_mean 167 ns 167 ns 10
Short replace runtime symbols with string expressions and without remembering all search results_median 167 ns 167 ns 10
Short replace runtime symbols with string expressions and without remembering all search results_stddev 2.92 ns 2.92 ns 10
Short replace runtime symbols with string expressions and without remembering all search results_cv 1.75 % 1.75 % 10
Short replace runtime symbols with simstr and memorization of all search results_mean 176 ns 176 ns 10
Short replace runtime symbols with simstr and memorization of all search results_median 175 ns 175 ns 10
Short replace runtime symbols with simstr and memorization of all search results_stddev 6.46 ns 6.46 ns 10
Short replace runtime symbols with simstr and memorization of all search results_cv 3.66 % 3.66 % 10
Short replace const symbols with string expressions and without remembering all search results_mean 142 ns 142 ns 10
Short replace const symbols with string expressions and without remembering all search results_median 138 ns 138 ns 10
Short replace const symbols with string expressions and without remembering all search results_stddev 9.85 ns 9.85 ns 10
Short replace const symbols with string expressions and without remembering all search results_cv 6.94 % 6.94 % 10
Short replace const symbols with string expressions and memorization of all search results_mean 157 ns 157 ns 10
Short replace const symbols with string expressions and memorization of all search results_median 154 ns 154 ns 10
Short replace const symbols with string expressions and memorization of all search results_stddev 9.03 ns 9.03 ns 10
Short replace const symbols with string expressions and memorization of all search results_cv 5.77 % 5.77 % 10
----- Replace All Str To Longer Size ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
replace bb to ---- in std::string|64_mean 164 ns 164 ns 10
replace bb to ---- in std::string|64_median 163 ns 163 ns 10
replace bb to ---- in std::string|64_stddev 5.14 ns 5.14 ns 10
replace bb to ---- in std::string|64_cv 3.14 % 3.14 % 10
replace bb to ---- in std::string|256_mean 531 ns 531 ns 10
replace bb to ---- in std::string|256_median 523 ns 523 ns 10
replace bb to ---- in std::string|256_stddev 22.7 ns 22.7 ns 10
replace bb to ---- in std::string|256_cv 4.28 % 4.28 % 10
replace bb to ---- in std::string|512_mean 1217 ns 1217 ns 10
replace bb to ---- in std::string|512_median 1212 ns 1212 ns 10
replace bb to ---- in std::string|512_stddev 24.5 ns 24.5 ns 10
replace bb to ---- in std::string|512_cv 2.01 % 2.01 % 10
replace bb to ---- in std::string|1024_mean 2374 ns 2374 ns 10
replace bb to ---- in std::string|1024_median 2360 ns 2360 ns 10
replace bb to ---- in std::string|1024_stddev 144 ns 144 ns 10
replace bb to ---- in std::string|1024_cv 6.06 % 6.06 % 10
replace bb to ---- in std::string|2048_mean 5735 ns 5735 ns 10
replace bb to ---- in std::string|2048_median 5662 ns 5662 ns 10
replace bb to ---- in std::string|2048_stddev 211 ns 211 ns 10
replace bb to ---- in std::string|2048_cv 3.67 % 3.67 % 10
replace bb to ---- in lstringa<8>|64_mean 145 ns 145 ns 10
replace bb to ---- in lstringa<8>|64_median 145 ns 145 ns 10
replace bb to ---- in lstringa<8>|64_stddev 3.55 ns 3.55 ns 10
replace bb to ---- in lstringa<8>|64_cv 2.44 % 2.44 % 10
replace bb to ---- in lstringa<8>|256_mean 435 ns 435 ns 10
replace bb to ---- in lstringa<8>|256_median 435 ns 435 ns 10
replace bb to ---- in lstringa<8>|256_stddev 8.39 ns 8.39 ns 10
replace bb to ---- in lstringa<8>|256_cv 1.93 % 1.93 % 10
replace bb to ---- in lstringa<8>|512_mean 825 ns 825 ns 10
replace bb to ---- in lstringa<8>|512_median 800 ns 800 ns 10
replace bb to ---- in lstringa<8>|512_stddev 67.4 ns 67.4 ns 10
replace bb to ---- in lstringa<8>|512_cv 8.17 % 8.17 % 10
replace bb to ---- in lstringa<8>|1024_mean 1713 ns 1713 ns 10
replace bb to ---- in lstringa<8>|1024_median 1679 ns 1679 ns 10
replace bb to ---- in lstringa<8>|1024_stddev 76.5 ns 76.5 ns 10
replace bb to ---- in lstringa<8>|1024_cv 4.47 % 4.47 % 10
replace bb to ---- in lstringa<8>|2048_mean 3055 ns 3055 ns 10
replace bb to ---- in lstringa<8>|2048_median 3001 ns 3001 ns 10
replace bb to ---- in lstringa<8>|2048_stddev 214 ns 214 ns 10
replace bb to ---- in lstringa<8>|2048_cv 7.00 % 7.00 % 10
replace bb to ---- by init stringa|64_mean 117 ns 117 ns 10
replace bb to ---- by init stringa|64_median 116 ns 116 ns 10
replace bb to ---- by init stringa|64_stddev 1.72 ns 1.72 ns 10
replace bb to ---- by init stringa|64_cv 1.47 % 1.47 % 10
replace bb to ---- by init stringa|256_mean 398 ns 398 ns 10
replace bb to ---- by init stringa|256_median 398 ns 398 ns 10
replace bb to ---- by init stringa|256_stddev 7.04 ns 7.04 ns 10
replace bb to ---- by init stringa|256_cv 1.77 % 1.77 % 10
replace bb to ---- by init stringa|512_mean 803 ns 803 ns 10
replace bb to ---- by init stringa|512_median 802 ns 802 ns 10
replace bb to ---- by init stringa|512_stddev 9.50 ns 9.50 ns 10
replace bb to ---- by init stringa|512_cv 1.18 % 1.18 % 10
replace bb to ---- by init stringa|1024_mean 1624 ns 1624 ns 10
replace bb to ---- by init stringa|1024_median 1636 ns 1636 ns 10
replace bb to ---- by init stringa|1024_stddev 31.9 ns 31.9 ns 10
replace bb to ---- by init stringa|1024_cv 1.96 % 1.96 % 10
replace bb to ---- by init stringa|2048_mean 3156 ns 3156 ns 10
replace bb to ---- by init stringa|2048_median 3138 ns 3138 ns 10
replace bb to ---- by init stringa|2048_stddev 89.9 ns 89.9 ns 10
replace bb to ---- by init stringa|2048_cv 2.85 % 2.85 % 10
----- Replace All Str To Same Size ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
replace bb to -- in std::string|64_mean 119 ns 119 ns 10
replace bb to -- in std::string|64_median 118 ns 118 ns 10
replace bb to -- in std::string|64_stddev 2.56 ns 2.56 ns 10
replace bb to -- in std::string|64_cv 2.16 % 2.16 % 10
replace bb to -- in std::string|256_mean 415 ns 415 ns 10
replace bb to -- in std::string|256_median 413 ns 413 ns 10
replace bb to -- in std::string|256_stddev 9.74 ns 9.74 ns 10
replace bb to -- in std::string|256_cv 2.35 % 2.35 % 10
replace bb to -- in std::string|512_mean 783 ns 783 ns 10
replace bb to -- in std::string|512_median 782 ns 782 ns 10
replace bb to -- in std::string|512_stddev 20.7 ns 20.7 ns 10
replace bb to -- in std::string|512_cv 2.65 % 2.65 % 10
replace bb to -- in std::string|1024_mean 1499 ns 1499 ns 10
replace bb to -- in std::string|1024_median 1501 ns 1501 ns 10
replace bb to -- in std::string|1024_stddev 35.8 ns 35.8 ns 10
replace bb to -- in std::string|1024_cv 2.39 % 2.39 % 10
replace bb to -- in std::string|2048_mean 2960 ns 2960 ns 10
replace bb to -- in std::string|2048_median 2974 ns 2974 ns 10
replace bb to -- in std::string|2048_stddev 58.4 ns 58.4 ns 10
replace bb to -- in std::string|2048_cv 1.97 % 1.97 % 10
replace bb to -- in lstringa<8>|64_mean 101 ns 101 ns 10
replace bb to -- in lstringa<8>|64_median 101 ns 101 ns 10
replace bb to -- in lstringa<8>|64_stddev 2.76 ns 2.76 ns 10
replace bb to -- in lstringa<8>|64_cv 2.73 % 2.73 % 10
replace bb to -- in lstringa<8>|256_mean 326 ns 326 ns 10
replace bb to -- in lstringa<8>|256_median 306 ns 306 ns 10
replace bb to -- in lstringa<8>|256_stddev 41.2 ns 41.2 ns 10
replace bb to -- in lstringa<8>|256_cv 12.61 % 12.61 % 10
replace bb to -- in lstringa<8>|512_mean 569 ns 569 ns 10
replace bb to -- in lstringa<8>|512_median 566 ns 566 ns 10
replace bb to -- in lstringa<8>|512_stddev 18.1 ns 18.1 ns 10
replace bb to -- in lstringa<8>|512_cv 3.17 % 3.18 % 10
replace bb to -- in lstringa<8>|1024_mean 1128 ns 1128 ns 10
replace bb to -- in lstringa<8>|1024_median 1132 ns 1132 ns 10
replace bb to -- in lstringa<8>|1024_stddev 30.4 ns 30.4 ns 10
replace bb to -- in lstringa<8>|1024_cv 2.70 % 2.70 % 10
replace bb to -- in lstringa<8>|2048_mean 2155 ns 2155 ns 10
replace bb to -- in lstringa<8>|2048_median 2125 ns 2125 ns 10
replace bb to -- in lstringa<8>|2048_stddev 101 ns 101 ns 10
replace bb to -- in lstringa<8>|2048_cv 4.68 % 4.68 % 10
replace bb to -- by init stringa|64_mean 86.9 ns 86.9 ns 10
replace bb to -- by init stringa|64_median 85.6 ns 85.6 ns 10
replace bb to -- by init stringa|64_stddev 4.43 ns 4.43 ns 10
replace bb to -- by init stringa|64_cv 5.10 % 5.10 % 10
replace bb to -- by init stringa|256_mean 232 ns 232 ns 10
replace bb to -- by init stringa|256_median 231 ns 231 ns 10
replace bb to -- by init stringa|256_stddev 5.61 ns 5.61 ns 10
replace bb to -- by init stringa|256_cv 2.42 % 2.42 % 10
replace bb to -- by init stringa|512_mean 441 ns 441 ns 10
replace bb to -- by init stringa|512_median 441 ns 441 ns 10
replace bb to -- by init stringa|512_stddev 6.71 ns 6.71 ns 10
replace bb to -- by init stringa|512_cv 1.52 % 1.52 % 10
replace bb to -- by init stringa|1024_mean 883 ns 883 ns 10
replace bb to -- by init stringa|1024_median 877 ns 877 ns 10
replace bb to -- by init stringa|1024_stddev 19.7 ns 19.7 ns 10
replace bb to -- by init stringa|1024_cv 2.23 % 2.23 % 10
replace bb to -- by init stringa|2048_mean 1670 ns 1670 ns 10
replace bb to -- by init stringa|2048_median 1659 ns 1659 ns 10
replace bb to -- by init stringa|2048_stddev 34.1 ns 34.1 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 3565051 ns 3565054 ns 10
hashStrMapA<size_t> emplace & find stringa;_median 3563645 ns 3563657 ns 10
hashStrMapA<size_t> emplace & find stringa;_stddev 60616 ns 60600 ns 10
hashStrMapA<size_t> emplace & find stringa;_cv 1.70 % 1.70 % 10
std::unordered_map<std::string, size_t> emplace & find std::string;_mean 3504581 ns 3504582 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string;_median 3492374 ns 3492358 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string;_stddev 67478 ns 67484 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string;_cv 1.93 % 1.93 % 10
hashStrMapA<size_t> emplace & find ssa;_mean 3648733 ns 3648738 ns 10
hashStrMapA<size_t> emplace & find ssa;_median 3643789 ns 3643806 ns 10
hashStrMapA<size_t> emplace & find ssa;_stddev 46557 ns 46567 ns 10
hashStrMapA<size_t> emplace & find ssa;_cv 1.28 % 1.28 % 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_mean 4252438 ns 4252417 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_median 4162735 ns 4162699 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_stddev 274815 ns 274779 ns 10
std::unordered_map<std::string, size_t> emplace & find std::string_view;_cv 6.46 % 6.46 % 10
----- Build Full Func Name ---------/repeats:1 0.000 ns 0.000 ns 1000000000000
Build func full name std::string;_mean 733 ns 733 ns 10
Build func full name std::string;_median 737 ns 737 ns 10
Build func full name std::string;_stddev 22.0 ns 22.0 ns 10
Build func full name std::string;_cv 3.01 % 3.01 % 10
Build func full name std::string 1;_mean 829 ns 829 ns 10
Build func full name std::string 1;_median 823 ns 823 ns 10
Build func full name std::string 1;_stddev 16.9 ns 16.9 ns 10
Build func full name std::string 1;_cv 2.04 % 2.03 % 10
Build func full name std::stream;_mean 2554 ns 2554 ns 10
Build func full name std::stream;_median 2564 ns 2564 ns 10
Build func full name std::stream;_stddev 25.0 ns 25.0 ns 10
Build func full name std::stream;_cv 0.98 % 0.98 % 10
Build func full name stringa;_mean 525 ns 525 ns 10
Build func full name stringa;_median 525 ns 525 ns 10
Build func full name stringa;_stddev 12.0 ns 12.0 ns 10
Build func full name stringa;_cv 2.28 % 2.28 % 10
Build func full name stringa 1;_mean 672 ns 672 ns 10
Build func full name stringa 1;_median 664 ns 664 ns 10
Build func full name stringa 1;_stddev 20.5 ns 20.5 ns 10
Build func full name stringa 1;_cv 3.06 % 3.06 % 10