[all-commits] [llvm/llvm-project] 90f1b4: [libc++][format][5/7] Improve std::format_to_n
Mark de Wever via All-commits
all-commits at lists.llvm.org
Sat Aug 3 08:16:26 PDT 2024
Branch: refs/heads/users/mordante/format_performance__format_to_n
Home: https://github.com/llvm/llvm-project
Commit: 90f1b4fb22a5bbcfec95eb770b346b79f24079a7
https://github.com/llvm/llvm-project/commit/90f1b4fb22a5bbcfec95eb770b346b79f24079a7
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-08-03 (Sat, 03 Aug 2024)
Changed paths:
M libcxx/include/__format/buffer.h
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
Log Message:
-----------
[libc++][format][5/7] Improve std::format_to_n
__format_to_n_buffer is not used in the public library interface so the
changes are not an ABI break.
Before
----------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations UserCounters...
----------------------------------------------------------------------------------------------------------------------------
BM_format_to_n_string_back_inserter<std::string>/1 59.2 ns 59.1 ns 11797400 bytes_per_second=16.146Mi/s
BM_format_to_n_string_back_inserter<std::string>/2 58.5 ns 58.3 ns 12042693 bytes_per_second=32.69Mi/s
BM_format_to_n_string_back_inserter<std::string>/4 58.2 ns 58.0 ns 12053679 bytes_per_second=65.7375Mi/s
BM_format_to_n_string_back_inserter<std::string>/8 58.6 ns 58.4 ns 12000831 bytes_per_second=130.542Mi/s
BM_format_to_n_string_back_inserter<std::string>/16 58.7 ns 58.6 ns 11948692 bytes_per_second=260.493Mi/s
BM_format_to_n_string_back_inserter<std::string>/32 77.8 ns 77.6 ns 8957906 bytes_per_second=393.212Mi/s
BM_format_to_n_string_back_inserter<std::string>/64 77.5 ns 77.3 ns 9015286 bytes_per_second=789.397Mi/s
BM_format_to_n_string_back_inserter<std::string>/128 90.9 ns 90.7 ns 7712930 bytes_per_second=1.31409Gi/s
BM_format_to_n_string_back_inserter<std::string>/256 102 ns 102 ns 6865771 bytes_per_second=2.33399Gi/s
BM_format_to_n_string_back_inserter<std::string>/512 158 ns 158 ns 4449684 bytes_per_second=3.02418Gi/s
BM_format_to_n_string_back_inserter<std::string>/1024 290 ns 289 ns 2415073 bytes_per_second=3.29623Gi/s
BM_format_to_n_string_back_inserter<std::string>/2048 489 ns 488 ns 1435682 bytes_per_second=3.90789Gi/s
BM_format_to_n_string_back_inserter<std::string>/4096 801 ns 799 ns 875722 bytes_per_second=4.77568Gi/s
BM_format_to_n_string_back_inserter<std::string>/8192 1449 ns 1445 ns 485062 bytes_per_second=5.27805Gi/s
BM_format_to_n_string_back_inserter<std::string>/16384 2942 ns 2933 ns 238811 bytes_per_second=5.20206Gi/s
BM_format_to_n_string_back_inserter<std::string>/32768 5676 ns 5661 ns 123699 bytes_per_second=5.39051Gi/s
BM_format_to_n_string_back_inserter<std::string>/65536 12437 ns 12404 ns 56488 bytes_per_second=4.92062Gi/s
BM_format_to_n_string_back_inserter<std::string>/131072 25855 ns 25787 ns 27203 bytes_per_second=4.73377Gi/s
BM_format_to_n_string_back_inserter<std::string>/262144 52880 ns 52739 ns 13234 bytes_per_second=4.62925Gi/s
BM_format_to_n_string_back_inserter<std::string>/524288 107703 ns 107410 ns 6509 bytes_per_second=4.54594Gi/s
BM_format_to_n_string_back_inserter<std::string>/1048576 231479 ns 230781 ns 3041 bytes_per_second=4.23155Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/1 72.2 ns 72.0 ns 9743767 bytes_per_second=13.2436Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/2 72.5 ns 72.3 ns 9678565 bytes_per_second=26.3647Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/4 74.1 ns 73.9 ns 9474498 bytes_per_second=51.6367Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/8 75.0 ns 74.8 ns 9343663 bytes_per_second=101.929Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/16 79.4 ns 79.2 ns 8837997 bytes_per_second=192.732Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/32 88.6 ns 88.3 ns 7935214 bytes_per_second=345.479Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/64 90.6 ns 90.3 ns 7741976 bytes_per_second=675.639Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/128 109 ns 109 ns 6438809 bytes_per_second=1.0968Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/256 120 ns 119 ns 5857845 bytes_per_second=1.99756Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/512 186 ns 186 ns 3765552 bytes_per_second=2.56813Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/1024 284 ns 283 ns 2474412 bytes_per_second=3.37194Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/2048 484 ns 483 ns 1450834 bytes_per_second=3.94717Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/4096 802 ns 800 ns 869473 bytes_per_second=4.76587Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/8192 1469 ns 1466 ns 477127 bytes_per_second=5.20439Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/16384 2700 ns 2693 ns 259821 bytes_per_second=5.66613Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/32768 4979 ns 4967 ns 140926 bytes_per_second=6.14388Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/65536 10431 ns 10405 ns 67137 bytes_per_second=5.86603Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/131072 22646 ns 22591 ns 30999 bytes_per_second=5.40348Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/262144 46278 ns 46148 ns 15156 bytes_per_second=5.29038Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/524288 91695 ns 91511 ns 7657 bytes_per_second=5.33577Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/1048576 195458 ns 194988 ns 3567 bytes_per_second=5.00831Gi/s
BM_format_to_n_string_back_inserter<std::list<char>>/1 65.5 ns 65.4 ns 10691963 bytes_per_second=14.5921Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/2 78.9 ns 78.7 ns 8920318 bytes_per_second=24.2294Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/4 107 ns 107 ns 6540004 bytes_per_second=35.6329Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/8 171 ns 171 ns 4108360 bytes_per_second=44.6311Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/16 331 ns 330 ns 2121251 bytes_per_second=46.2379Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/32 641 ns 640 ns 1097213 bytes_per_second=47.6889Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/64 1237 ns 1233 ns 565941 bytes_per_second=49.4821Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/128 2474 ns 2469 ns 284645 bytes_per_second=49.4484Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/256 4984 ns 4972 ns 142037 bytes_per_second=49.0997Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/512 9740 ns 9716 ns 71542 bytes_per_second=50.2565Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/1024 19503 ns 19451 ns 35970 bytes_per_second=50.2075Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/2048 39078 ns 38981 ns 17962 bytes_per_second=50.1052Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/4096 78329 ns 78132 ns 8963 bytes_per_second=49.9954Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/8192 156689 ns 156291 ns 4467 bytes_per_second=49.9869Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/16384 313624 ns 312732 ns 2235 bytes_per_second=49.9629Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/32768 630336 ns 628711 ns 1108 bytes_per_second=49.7048Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/65536 1261542 ns 1258055 ns 555 bytes_per_second=49.6799Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/131072 2543001 ns 2535000 ns 275 bytes_per_second=49.3097Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/262144 5214390 ns 5191608 ns 125 bytes_per_second=48.1546Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/524288 10650366 ns 10609616 ns 62 bytes_per_second=47.1271Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/1048576 21677130 ns 21550764 ns 31 bytes_per_second=46.4021Mi/s
BM_format_to_n_string_begin<std::string>/1 53.7 ns 53.5 ns 13041641 bytes_per_second=17.8119Mi/s
BM_format_to_n_string_begin<std::string>/2 53.0 ns 52.9 ns 13243962 bytes_per_second=36.0447Mi/s
BM_format_to_n_string_begin<std::string>/4 53.1 ns 53.0 ns 13167006 bytes_per_second=71.98Mi/s
BM_format_to_n_string_begin<std::string>/8 53.6 ns 53.5 ns 13093098 bytes_per_second=142.591Mi/s
BM_format_to_n_string_begin<std::string>/16 53.7 ns 53.5 ns 13020678 bytes_per_second=285.038Mi/s
BM_format_to_n_string_begin<std::string>/32 53.9 ns 53.8 ns 13034246 bytes_per_second=567.706Mi/s
BM_format_to_n_string_begin<std::string>/64 54.3 ns 54.2 ns 12901135 bytes_per_second=1.10027Gi/s
BM_format_to_n_string_begin<std::string>/128 60.7 ns 60.5 ns 11605050 bytes_per_second=1.97014Gi/s
BM_format_to_n_string_begin<std::string>/256 69.1 ns 68.9 ns 10172526 bytes_per_second=3.4582Gi/s
BM_format_to_n_string_begin<std::string>/512 89.5 ns 89.3 ns 7814551 bytes_per_second=5.33874Gi/s
BM_format_to_n_string_begin<std::string>/1024 132 ns 132 ns 5302589 bytes_per_second=7.23812Gi/s
BM_format_to_n_string_begin<std::string>/2048 229 ns 228 ns 3070816 bytes_per_second=8.3559Gi/s
BM_format_to_n_string_begin<std::string>/4096 425 ns 424 ns 1649496 bytes_per_second=8.98833Gi/s
BM_format_to_n_string_begin<std::string>/8192 812 ns 810 ns 866484 bytes_per_second=9.42053Gi/s
BM_format_to_n_string_begin<std::string>/16384 1656 ns 1652 ns 423179 bytes_per_second=9.23521Gi/s
BM_format_to_n_string_begin<std::string>/32768 3179 ns 3171 ns 220456 bytes_per_second=9.62316Gi/s
BM_format_to_n_string_begin<std::string>/65536 6818 ns 6802 ns 103122 bytes_per_second=8.97315Gi/s
BM_format_to_n_string_begin<std::string>/131072 14829 ns 14788 ns 47434 bytes_per_second=8.25491Gi/s
BM_format_to_n_string_begin<std::string>/262144 29547 ns 29471 ns 23756 bytes_per_second=8.28414Gi/s
BM_format_to_n_string_begin<std::string>/524288 59436 ns 59284 ns 11787 bytes_per_second=8.2363Gi/s
BM_format_to_n_string_begin<std::string>/1048576 120292 ns 119974 ns 5842 bytes_per_second=8.13979Gi/s
BM_format_to_n_string_begin<std::vector<char>>/1 53.0 ns 52.9 ns 13395096 bytes_per_second=18.0263Mi/s
BM_format_to_n_string_begin<std::vector<char>>/2 53.0 ns 52.9 ns 13255941 bytes_per_second=36.0868Mi/s
BM_format_to_n_string_begin<std::vector<char>>/4 52.9 ns 52.8 ns 13208574 bytes_per_second=72.2285Mi/s
BM_format_to_n_string_begin<std::vector<char>>/8 52.5 ns 52.4 ns 13349218 bytes_per_second=145.688Mi/s
BM_format_to_n_string_begin<std::vector<char>>/16 52.7 ns 52.6 ns 13239180 bytes_per_second=290.223Mi/s
BM_format_to_n_string_begin<std::vector<char>>/32 52.9 ns 52.8 ns 12857843 bytes_per_second=577.776Mi/s
BM_format_to_n_string_begin<std::vector<char>>/64 53.3 ns 53.2 ns 13165818 bytes_per_second=1.12004Gi/s
BM_format_to_n_string_begin<std::vector<char>>/128 58.8 ns 58.7 ns 11955351 bytes_per_second=2.03242Gi/s
BM_format_to_n_string_begin<std::vector<char>>/256 72.7 ns 72.5 ns 9567121 bytes_per_second=3.28642Gi/s
BM_format_to_n_string_begin<std::vector<char>>/512 96.6 ns 96.3 ns 7270746 bytes_per_second=4.9504Gi/s
BM_format_to_n_string_begin<std::vector<char>>/1024 138 ns 138 ns 5074395 bytes_per_second=6.91338Gi/s
BM_format_to_n_string_begin<std::vector<char>>/2048 235 ns 235 ns 2985729 bytes_per_second=8.13348Gi/s
BM_format_to_n_string_begin<std::vector<char>>/4096 439 ns 438 ns 1597496 bytes_per_second=8.70102Gi/s
BM_format_to_n_string_begin<std::vector<char>>/8192 853 ns 851 ns 823405 bytes_per_second=8.96488Gi/s
BM_format_to_n_string_begin<std::vector<char>>/16384 1627 ns 1623 ns 429274 bytes_per_second=9.40197Gi/s
BM_format_to_n_string_begin<std::vector<char>>/32768 3221 ns 3212 ns 218030 bytes_per_second=9.50016Gi/s
BM_format_to_n_string_begin<std::vector<char>>/65536 7089 ns 7072 ns 98823 bytes_per_second=8.63113Gi/s
BM_format_to_n_string_begin<std::vector<char>>/131072 15268 ns 15229 ns 46052 bytes_per_second=8.01568Gi/s
BM_format_to_n_string_begin<std::vector<char>>/262144 30296 ns 30219 ns 23098 bytes_per_second=8.07902Gi/s
BM_format_to_n_string_begin<std::vector<char>>/524288 61230 ns 61074 ns 11421 bytes_per_second=7.99487Gi/s
BM_format_to_n_string_begin<std::vector<char>>/1048576 124101 ns 123704 ns 5671 bytes_per_second=7.89434Gi/s
BM_format_to_n_string_begin<std::list<char>>/1 49.0 ns 48.9 ns 14339585 bytes_per_second=19.5125Mi/s
BM_format_to_n_string_begin<std::list<char>>/2 49.8 ns 49.6 ns 14059613 bytes_per_second=38.4293Mi/s
BM_format_to_n_string_begin<std::list<char>>/4 50.9 ns 50.8 ns 13803755 bytes_per_second=75.0895Mi/s
BM_format_to_n_string_begin<std::list<char>>/8 64.0 ns 63.8 ns 10943929 bytes_per_second=119.516Mi/s
BM_format_to_n_string_begin<std::list<char>>/16 84.8 ns 84.6 ns 8276210 bytes_per_second=180.468Mi/s
BM_format_to_n_string_begin<std::list<char>>/32 127 ns 127 ns 5517041 bytes_per_second=240.407Mi/s
BM_format_to_n_string_begin<std::list<char>>/64 214 ns 213 ns 3276668 bytes_per_second=286.073Mi/s
BM_format_to_n_string_begin<std::list<char>>/128 389 ns 388 ns 1795410 bytes_per_second=314.419Mi/s
BM_format_to_n_string_begin<std::list<char>>/256 749 ns 747 ns 938533 bytes_per_second=326.8Mi/s
BM_format_to_n_string_begin<std::list<char>>/512 1453 ns 1449 ns 483905 bytes_per_second=336.9Mi/s
BM_format_to_n_string_begin<std::list<char>>/1024 2852 ns 2845 ns 245676 bytes_per_second=343.269Mi/s
BM_format_to_n_string_begin<std::list<char>>/2048 5685 ns 5671 ns 122982 bytes_per_second=344.409Mi/s
BM_format_to_n_string_begin<std::list<char>>/4096 11312 ns 11283 ns 61990 bytes_per_second=346.216Mi/s
BM_format_to_n_string_begin<std::list<char>>/8192 22644 ns 22586 ns 31006 bytes_per_second=345.9Mi/s
BM_format_to_n_string_begin<std::list<char>>/16384 45298 ns 45180 ns 15512 bytes_per_second=345.836Mi/s
BM_format_to_n_string_begin<std::list<char>>/32768 90351 ns 90110 ns 7777 bytes_per_second=346.8Mi/s
BM_format_to_n_string_begin<std::list<char>>/65536 180594 ns 180048 ns 3892 bytes_per_second=347.13Mi/s
BM_format_to_n_string_begin<std::list<char>>/131072 373023 ns 371863 ns 1882 bytes_per_second=336.145Mi/s
BM_format_to_n_string_begin<std::list<char>>/262144 895166 ns 891717 ns 713 bytes_per_second=280.358Mi/s
BM_format_to_n_string_begin<std::list<char>>/524288 2209006 ns 2201104 ns 318 bytes_per_second=227.159Mi/s
BM_format_to_n_string_begin<std::list<char>>/1048576 4421130 ns 4404315 ns 159 bytes_per_second=227.05Mi/s
BM_format_to_n_string_span<char>/1 53.3 ns 53.2 ns 13152297 bytes_per_second=17.9301Mi/s
BM_format_to_n_string_span<char>/2 52.5 ns 52.4 ns 13372731 bytes_per_second=36.4069Mi/s
BM_format_to_n_string_span<char>/4 52.8 ns 52.7 ns 13249176 bytes_per_second=72.3966Mi/s
BM_format_to_n_string_span<char>/8 52.9 ns 52.8 ns 13256871 bytes_per_second=144.603Mi/s
BM_format_to_n_string_span<char>/16 53.7 ns 53.5 ns 13086124 bytes_per_second=285.171Mi/s
BM_format_to_n_string_span<char>/32 53.4 ns 53.3 ns 13156961 bytes_per_second=572.554Mi/s
BM_format_to_n_string_span<char>/64 53.4 ns 53.1 ns 13208519 bytes_per_second=1.12209Gi/s
BM_format_to_n_string_span<char>/128 60.8 ns 60.7 ns 11537915 bytes_per_second=1.96458Gi/s
BM_format_to_n_string_span<char>/256 69.1 ns 69.0 ns 10221573 bytes_per_second=3.45715Gi/s
BM_format_to_n_string_span<char>/512 89.5 ns 89.3 ns 7857679 bytes_per_second=5.34184Gi/s
BM_format_to_n_string_span<char>/1024 134 ns 134 ns 5229017 bytes_per_second=7.12054Gi/s
BM_format_to_n_string_span<char>/2048 223 ns 222 ns 3148532 bytes_per_second=8.58077Gi/s
BM_format_to_n_string_span<char>/4096 427 ns 426 ns 1640906 bytes_per_second=8.9548Gi/s
BM_format_to_n_string_span<char>/8192 818 ns 816 ns 862045 bytes_per_second=9.35247Gi/s
BM_format_to_n_string_span<char>/16384 1622 ns 1617 ns 432033 bytes_per_second=9.43376Gi/s
BM_format_to_n_string_span<char>/32768 3137 ns 3129 ns 223336 bytes_per_second=9.75164Gi/s
BM_format_to_n_string_span<char>/65536 6698 ns 6682 ns 104597 bytes_per_second=9.13435Gi/s
BM_format_to_n_string_span<char>/131072 14925 ns 14888 ns 46957 bytes_per_second=8.19897Gi/s
BM_format_to_n_string_span<char>/262144 29688 ns 29603 ns 23654 bytes_per_second=8.24706Gi/s
BM_format_to_n_string_span<char>/524288 59308 ns 59180 ns 11818 bytes_per_second=8.25073Gi/s
BM_format_to_n_string_span<char>/1048576 118765 ns 118433 ns 5890 bytes_per_second=8.24568Gi/s
BM_format_to_n_string_pointer<char>/1 52.3 ns 52.2 ns 13388309 bytes_per_second=18.2682Mi/s
BM_format_to_n_string_pointer<char>/2 52.9 ns 52.8 ns 13272848 bytes_per_second=36.1233Mi/s
BM_format_to_n_string_pointer<char>/4 53.1 ns 52.9 ns 13228995 bytes_per_second=72.0969Mi/s
BM_format_to_n_string_pointer<char>/8 52.9 ns 52.8 ns 13249394 bytes_per_second=144.527Mi/s
BM_format_to_n_string_pointer<char>/16 52.6 ns 52.5 ns 13336233 bytes_per_second=290.602Mi/s
BM_format_to_n_string_pointer<char>/32 52.5 ns 52.4 ns 13331942 bytes_per_second=582.748Mi/s
BM_format_to_n_string_pointer<char>/64 53.5 ns 53.4 ns 13126493 bytes_per_second=1.11708Gi/s
BM_format_to_n_string_pointer<char>/128 62.4 ns 62.3 ns 11222983 bytes_per_second=1.9146Gi/s
BM_format_to_n_string_pointer<char>/256 69.5 ns 69.4 ns 10086274 bytes_per_second=3.43692Gi/s
BM_format_to_n_string_pointer<char>/512 88.3 ns 88.1 ns 7929196 bytes_per_second=5.41346Gi/s
BM_format_to_n_string_pointer<char>/1024 131 ns 131 ns 5357630 bytes_per_second=7.29499Gi/s
BM_format_to_n_string_pointer<char>/2048 226 ns 225 ns 3099073 bytes_per_second=8.46339Gi/s
BM_format_to_n_string_pointer<char>/4096 426 ns 425 ns 1646323 bytes_per_second=8.97431Gi/s
BM_format_to_n_string_pointer<char>/8192 815 ns 813 ns 859395 bytes_per_second=9.38067Gi/s
BM_format_to_n_string_pointer<char>/16384 1618 ns 1614 ns 432959 bytes_per_second=9.45405Gi/s
BM_format_to_n_string_pointer<char>/32768 3137 ns 3129 ns 223694 bytes_per_second=9.75173Gi/s
BM_format_to_n_string_pointer<char>/65536 6693 ns 6675 ns 104933 bytes_per_second=9.14424Gi/s
BM_format_to_n_string_pointer<char>/131072 14912 ns 14876 ns 47053 bytes_per_second=8.20589Gi/s
BM_format_to_n_string_pointer<char>/262144 29685 ns 29609 ns 23651 bytes_per_second=8.24549Gi/s
BM_format_to_n_string_pointer<char>/524288 59254 ns 59133 ns 11837 bytes_per_second=8.25738Gi/s
BM_format_to_n_string_pointer<char>/1048576 118746 ns 118523 ns 5911 bytes_per_second=8.2394Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/1 57.5 ns 57.3 ns 12220461 bytes_per_second=66.5332Mi/s
BM_format_to_n_string_back_inserter<std::wstring>/2 57.4 ns 57.2 ns 12204054 bytes_per_second=133.333Mi/s
BM_format_to_n_string_back_inserter<std::wstring>/4 57.3 ns 57.2 ns 12223980 bytes_per_second=266.784Mi/s
BM_format_to_n_string_back_inserter<std::wstring>/8 77.0 ns 76.8 ns 9139240 bytes_per_second=397.372Mi/s
BM_format_to_n_string_back_inserter<std::wstring>/16 78.2 ns 78.0 ns 8964082 bytes_per_second=782.577Mi/s
BM_format_to_n_string_back_inserter<std::wstring>/32 92.9 ns 92.6 ns 7565173 bytes_per_second=1.28711Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/64 103 ns 103 ns 6811965 bytes_per_second=2.3225Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/128 159 ns 159 ns 4405973 bytes_per_second=3.00338Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/256 288 ns 287 ns 2435586 bytes_per_second=3.31766Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/512 484 ns 483 ns 1449916 bytes_per_second=3.94838Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/1024 817 ns 815 ns 856668 bytes_per_second=4.68114Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/2048 1553 ns 1549 ns 451120 bytes_per_second=4.92413Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/4096 2984 ns 2977 ns 235097 bytes_per_second=5.12583Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/8192 5893 ns 5878 ns 119106 bytes_per_second=5.19202Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/16384 12448 ns 12412 ns 56460 bytes_per_second=4.91758Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/32768 25981 ns 25918 ns 27056 bytes_per_second=4.7099Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/65536 52551 ns 52422 ns 13313 bytes_per_second=4.65723Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/131072 107130 ns 106904 ns 6544 bytes_per_second=4.56746Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/262144 229385 ns 228860 ns 3050 bytes_per_second=4.26707Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/524288 635498 ns 633625 ns 1077 bytes_per_second=3.08246Gi/s
BM_format_to_n_string_back_inserter<std::wstring>/1048576 1433803 ns 1428452 ns 484 bytes_per_second=2.7346Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/1 70.5 ns 70.3 ns 9940095 bytes_per_second=54.2572Mi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/2 70.7 ns 70.6 ns 9934856 bytes_per_second=108.129Mi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/4 73.2 ns 73.0 ns 9588422 bytes_per_second=209.069Mi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/8 75.6 ns 75.4 ns 9285318 bytes_per_second=404.488Mi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/16 79.9 ns 79.7 ns 8792551 bytes_per_second=766.115Mi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/32 104 ns 104 ns 6731654 bytes_per_second=1.14643Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/64 137 ns 137 ns 5110206 bytes_per_second=1.739Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/128 225 ns 225 ns 3119091 bytes_per_second=2.12152Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/256 338 ns 337 ns 2076273 bytes_per_second=2.82731Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/512 546 ns 544 ns 1266193 bytes_per_second=3.50459Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/1024 872 ns 870 ns 803018 bytes_per_second=4.3864Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/2048 1553 ns 1551 ns 448165 bytes_per_second=4.91783Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/4096 2719 ns 2719 ns 257081 bytes_per_second=5.61113Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/8192 5032 ns 5033 ns 139480 bytes_per_second=6.06401Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/16384 10447 ns 10447 ns 67169 bytes_per_second=5.84251Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/32768 22749 ns 22749 ns 30716 bytes_per_second=5.36591Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/65536 46382 ns 46383 ns 15107 bytes_per_second=5.26353Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/131072 91122 ns 91123 ns 7643 bytes_per_second=5.35849Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/262144 189609 ns 189589 ns 3730 bytes_per_second=5.15094Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/524288 604574 ns 604526 ns 1153 bytes_per_second=3.23084Gi/s
BM_format_to_n_string_back_inserter<std::vector<wchar_t>>/1048576 1419322 ns 1419261 ns 489 bytes_per_second=2.75231Gi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/1 63.6 ns 63.6 ns 11046791 bytes_per_second=59.9824Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/2 77.7 ns 77.7 ns 9013447 bytes_per_second=98.1427Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/4 106 ns 106 ns 6608662 bytes_per_second=144.104Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/8 171 ns 171 ns 4100338 bytes_per_second=177.949Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/16 333 ns 333 ns 2090106 bytes_per_second=183.038Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/32 665 ns 665 ns 1051827 bytes_per_second=183.55Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/64 1277 ns 1277 ns 547868 bytes_per_second=191.143Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/128 2531 ns 2531 ns 275172 bytes_per_second=192.953Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/256 5071 ns 5070 ns 138777 bytes_per_second=192.603Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/512 9998 ns 9998 ns 69940 bytes_per_second=195.344Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/1024 20060 ns 20060 ns 34925 bytes_per_second=194.725Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/2048 40194 ns 40195 ns 17413 bytes_per_second=194.365Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/4096 80358 ns 80359 ns 8721 bytes_per_second=194.439Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/8192 161371 ns 161364 ns 4334 bytes_per_second=193.662Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/16384 323119 ns 323121 ns 2166 bytes_per_second=193.426Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/32768 646629 ns 646587 ns 1075 bytes_per_second=193.323Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/65536 1292611 ns 1292597 ns 541 bytes_per_second=193.409Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/131072 2616640 ns 2616409 ns 267 bytes_per_second=191.102Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/262144 5414119 ns 5414122 ns 124 bytes_per_second=184.702Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/524288 10974467 ns 10974049 ns 59 bytes_per_second=182.248Mi/s
BM_format_to_n_string_back_inserter<std::list<wchar_t>>/1048576 22293729 ns 22293492 ns 30 bytes_per_second=179.425Mi/s
BM_format_to_n_string_begin<std::wstring>/1 52.0 ns 52.0 ns 13513725 bytes_per_second=73.3442Mi/s
BM_format_to_n_string_begin<std::wstring>/2 51.7 ns 51.7 ns 13424668 bytes_per_second=147.671Mi/s
BM_format_to_n_string_begin<std::wstring>/4 51.9 ns 51.9 ns 13509922 bytes_per_second=294.176Mi/s
BM_format_to_n_string_begin<std::wstring>/8 52.0 ns 52.0 ns 13465404 bytes_per_second=587.05Mi/s
BM_format_to_n_string_begin<std::wstring>/16 52.5 ns 52.5 ns 13500423 bytes_per_second=1.13543Gi/s
BM_format_to_n_string_begin<std::wstring>/32 56.4 ns 56.4 ns 12405180 bytes_per_second=2.11547Gi/s
BM_format_to_n_string_begin<std::wstring>/64 67.6 ns 67.6 ns 10352129 bytes_per_second=3.52698Gi/s
BM_format_to_n_string_begin<std::wstring>/128 93.9 ns 93.9 ns 7522376 bytes_per_second=5.07921Gi/s
BM_format_to_n_string_begin<std::wstring>/256 133 ns 133 ns 5247826 bytes_per_second=7.16001Gi/s
BM_format_to_n_string_begin<std::wstring>/512 231 ns 231 ns 3023825 bytes_per_second=8.24208Gi/s
BM_format_to_n_string_begin<std::wstring>/1024 424 ns 424 ns 1649402 bytes_per_second=8.99487Gi/s
BM_format_to_n_string_begin<std::wstring>/2048 830 ns 830 ns 848532 bytes_per_second=9.19095Gi/s
BM_format_to_n_string_begin<std::wstring>/4096 1679 ns 1679 ns 416070 bytes_per_second=9.09029Gi/s
BM_format_to_n_string_begin<std::wstring>/8192 3213 ns 3213 ns 218136 bytes_per_second=9.49747Gi/s
BM_format_to_n_string_begin<std::wstring>/16384 6838 ns 6838 ns 102068 bytes_per_second=8.92627Gi/s
BM_format_to_n_string_begin<std::wstring>/32768 14764 ns 14764 ns 47436 bytes_per_second=8.26818Gi/s
BM_format_to_n_string_begin<std::wstring>/65536 29714 ns 29714 ns 23491 bytes_per_second=8.21633Gi/s
BM_format_to_n_string_begin<std::wstring>/131072 59647 ns 59644 ns 11780 bytes_per_second=8.18662Gi/s
BM_format_to_n_string_begin<std::wstring>/262144 119454 ns 119456 ns 5863 bytes_per_second=8.17507Gi/s
BM_format_to_n_string_begin<std::wstring>/524288 286293 ns 286295 ns 2442 bytes_per_second=6.82206Gi/s
BM_format_to_n_string_begin<std::wstring>/1048576 911579 ns 911595 ns 766 bytes_per_second=4.28507Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/1 51.3 ns 51.3 ns 13635395 bytes_per_second=74.3867Mi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/2 51.0 ns 51.0 ns 13736606 bytes_per_second=149.493Mi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/4 51.3 ns 51.3 ns 13656750 bytes_per_second=297.64Mi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/8 51.1 ns 51.1 ns 12622517 bytes_per_second=597.171Mi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/16 51.5 ns 51.5 ns 13233009 bytes_per_second=1.15659Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/32 55.9 ns 55.9 ns 12520247 bytes_per_second=2.13093Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/64 68.3 ns 68.3 ns 10250969 bytes_per_second=3.49104Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/128 94.1 ns 94.1 ns 7450735 bytes_per_second=5.06522Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/256 135 ns 135 ns 5189630 bytes_per_second=7.07126Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/512 236 ns 236 ns 2969116 bytes_per_second=8.08995Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/1024 440 ns 440 ns 1591408 bytes_per_second=8.678Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/2048 853 ns 853 ns 814193 bytes_per_second=8.94736Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/4096 1634 ns 1634 ns 427050 bytes_per_second=9.33682Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/8192 3209 ns 3209 ns 217702 bytes_per_second=9.50934Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/16384 7058 ns 7058 ns 99366 bytes_per_second=8.64797Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/32768 15116 ns 15115 ns 46380 bytes_per_second=8.07629Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/65536 30376 ns 30377 ns 23028 bytes_per_second=8.03712Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/131072 60970 ns 60971 ns 11499 bytes_per_second=8.00836Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/262144 122493 ns 122497 ns 5720 bytes_per_second=7.97217Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/524288 290542 ns 290527 ns 2408 bytes_per_second=6.72271Gi/s
BM_format_to_n_string_begin<std::vector<wchar_t>>/1048576 910702 ns 910584 ns 768 bytes_per_second=4.28983Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/1 47.6 ns 47.6 ns 14679442 bytes_per_second=80.1266Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/2 47.9 ns 47.9 ns 14631935 bytes_per_second=159.286Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/4 51.3 ns 51.3 ns 13651671 bytes_per_second=297.535Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/8 62.1 ns 62.1 ns 11280271 bytes_per_second=491.363Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/16 83.3 ns 83.3 ns 8403480 bytes_per_second=732.6Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/32 132 ns 132 ns 5270514 bytes_per_second=923.772Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/64 225 ns 225 ns 3115251 bytes_per_second=1.0616Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/128 411 ns 411 ns 1701267 bytes_per_second=1.15947Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/256 769 ns 769 ns 908949 bytes_per_second=1.24006Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/512 1491 ns 1491 ns 468414 bytes_per_second=1.27953Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/1024 2957 ns 2957 ns 236899 bytes_per_second=1.28999Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/2048 5843 ns 5843 ns 120170 bytes_per_second=1.30569Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/4096 11544 ns 11544 ns 60622 bytes_per_second=1.32184Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/8192 23435 ns 23435 ns 29848 bytes_per_second=1.3022Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/16384 47005 ns 47006 ns 14899 bytes_per_second=1.29844Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/32768 93735 ns 93735 ns 7461 bytes_per_second=1.30229Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/65536 187187 ns 187181 ns 3741 bytes_per_second=1.3043Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/131072 387031 ns 387029 ns 1799 bytes_per_second=1.26161Gi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/262144 1002722 ns 1002684 ns 695 bytes_per_second=997.323Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/524288 2354693 ns 2354599 ns 297 bytes_per_second=849.402Mi/s
BM_format_to_n_string_begin<std::list<wchar_t>>/1048576 4864712 ns 4864581 ns 144 bytes_per_second=822.27Mi/s
BM_format_to_n_string_span<wchar_t>/1 50.6 ns 50.6 ns 13863954 bytes_per_second=75.4097Mi/s
BM_format_to_n_string_span<wchar_t>/2 50.7 ns 50.7 ns 13793656 bytes_per_second=150.425Mi/s
BM_format_to_n_string_span<wchar_t>/4 51.4 ns 51.4 ns 13645021 bytes_per_second=296.823Mi/s
BM_format_to_n_string_span<wchar_t>/8 51.2 ns 51.2 ns 13623522 bytes_per_second=595.898Mi/s
BM_format_to_n_string_span<wchar_t>/16 51.7 ns 51.7 ns 13610614 bytes_per_second=1.15303Gi/s
BM_format_to_n_string_span<wchar_t>/32 56.0 ns 56.0 ns 12451328 bytes_per_second=2.12771Gi/s
BM_format_to_n_string_span<wchar_t>/64 66.3 ns 66.3 ns 10524699 bytes_per_second=3.59561Gi/s
BM_format_to_n_string_span<wchar_t>/128 88.1 ns 88.1 ns 7938215 bytes_per_second=5.40999Gi/s
BM_format_to_n_string_span<wchar_t>/256 128 ns 128 ns 5456422 bytes_per_second=7.43012Gi/s
BM_format_to_n_string_span<wchar_t>/512 223 ns 223 ns 3142735 bytes_per_second=8.55933Gi/s
BM_format_to_n_string_span<wchar_t>/1024 428 ns 428 ns 1638744 bytes_per_second=8.92023Gi/s
BM_format_to_n_string_span<wchar_t>/2048 829 ns 829 ns 850093 bytes_per_second=9.20356Gi/s
BM_format_to_n_string_span<wchar_t>/4096 1613 ns 1613 ns 432184 bytes_per_second=9.46179Gi/s
BM_format_to_n_string_span<wchar_t>/8192 3151 ns 3151 ns 222389 bytes_per_second=9.68385Gi/s
BM_format_to_n_string_span<wchar_t>/16384 6999 ns 7000 ns 99528 bytes_per_second=8.71988Gi/s
BM_format_to_n_string_span<wchar_t>/32768 14819 ns 14818 ns 47207 bytes_per_second=8.23778Gi/s
BM_format_to_n_string_span<wchar_t>/65536 29640 ns 29641 ns 23619 bytes_per_second=8.23659Gi/s
BM_format_to_n_string_span<wchar_t>/131072 59443 ns 59440 ns 11783 bytes_per_second=8.21464Gi/s
BM_format_to_n_string_span<wchar_t>/262144 118942 ns 118944 ns 5868 bytes_per_second=8.2103Gi/s
BM_format_to_n_string_span<wchar_t>/524288 288199 ns 288173 ns 2431 bytes_per_second=6.77761Gi/s
BM_format_to_n_string_span<wchar_t>/1048576 912877 ns 912855 ns 766 bytes_per_second=4.27916Gi/s
BM_format_to_n_string_pointer<wchar_t>/1 50.7 ns 50.7 ns 13760222 bytes_per_second=75.2909Mi/s
BM_format_to_n_string_pointer<wchar_t>/2 50.9 ns 50.9 ns 13753058 bytes_per_second=149.952Mi/s
BM_format_to_n_string_pointer<wchar_t>/4 51.5 ns 51.5 ns 13580976 bytes_per_second=296.297Mi/s
BM_format_to_n_string_pointer<wchar_t>/8 51.3 ns 51.3 ns 13646126 bytes_per_second=594.92Mi/s
BM_format_to_n_string_pointer<wchar_t>/16 51.6 ns 51.6 ns 13583615 bytes_per_second=1.156Gi/s
BM_format_to_n_string_pointer<wchar_t>/32 56.2 ns 56.2 ns 12474119 bytes_per_second=2.12153Gi/s
BM_format_to_n_string_pointer<wchar_t>/64 66.4 ns 66.4 ns 10534648 bytes_per_second=3.58917Gi/s
BM_format_to_n_string_pointer<wchar_t>/128 88.1 ns 88.1 ns 7950562 bytes_per_second=5.40973Gi/s
BM_format_to_n_string_pointer<wchar_t>/256 129 ns 129 ns 5437624 bytes_per_second=7.39644Gi/s
BM_format_to_n_string_pointer<wchar_t>/512 224 ns 224 ns 3120869 bytes_per_second=8.50226Gi/s
BM_format_to_n_string_pointer<wchar_t>/1024 429 ns 429 ns 1631703 bytes_per_second=8.89102Gi/s
BM_format_to_n_string_pointer<wchar_t>/2048 822 ns 822 ns 846043 bytes_per_second=9.28063Gi/s
BM_format_to_n_string_pointer<wchar_t>/4096 1616 ns 1616 ns 431533 bytes_per_second=9.44167Gi/s
BM_format_to_n_string_pointer<wchar_t>/8192 3151 ns 3151 ns 221539 bytes_per_second=9.68612Gi/s
BM_format_to_n_string_pointer<wchar_t>/16384 6967 ns 6967 ns 100616 bytes_per_second=8.76067Gi/s
BM_format_to_n_string_pointer<wchar_t>/32768 14734 ns 14734 ns 47573 bytes_per_second=8.285Gi/s
BM_format_to_n_string_pointer<wchar_t>/65536 29502 ns 29502 ns 23727 bytes_per_second=8.27539Gi/s
BM_format_to_n_string_pointer<wchar_t>/131072 59189 ns 59187 ns 11868 bytes_per_second=8.24977Gi/s
BM_format_to_n_string_pointer<wchar_t>/262144 118521 ns 118524 ns 5903 bytes_per_second=8.2394Gi/s
BM_format_to_n_string_pointer<wchar_t>/524288 288848 ns 288823 ns 2432 bytes_per_second=6.76236Gi/s
BM_format_to_n_string_pointer<wchar_t>/1048576 912304 ns 912281 ns 765 bytes_per_second=4.28185Gi/s
After
----------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations UserCounters...
----------------------------------------------------------------------------------------------------------------------------
BM_format_to_n_string_back_inserter<std::string>/1 58.3 ns 58.3 ns 11894752 bytes_per_second=16.3678Mi/s
BM_format_to_n_string_back_inserter<std::string>/2 58.6 ns 58.6 ns 11930741 bytes_per_second=32.5454Mi/s
BM_format_to_n_string_back_inserter<std::string>/4 58.7 ns 58.7 ns 11939708 bytes_per_second=65.0315Mi/s
BM_format_to_n_string_back_inserter<std::string>/8 58.5 ns 58.5 ns 11961911 bytes_per_second=130.361Mi/s
BM_format_to_n_string_back_inserter<std::string>/16 58.5 ns 58.5 ns 12024579 bytes_per_second=260.963Mi/s
BM_format_to_n_string_back_inserter<std::string>/32 76.7 ns 76.7 ns 9105849 bytes_per_second=397.672Mi/s
BM_format_to_n_string_back_inserter<std::string>/64 76.8 ns 76.8 ns 9132067 bytes_per_second=795.158Mi/s
BM_format_to_n_string_back_inserter<std::string>/128 77.4 ns 77.4 ns 9036342 bytes_per_second=1.53966Gi/s
BM_format_to_n_string_back_inserter<std::string>/256 90.0 ns 90.0 ns 7772798 bytes_per_second=2.64943Gi/s
BM_format_to_n_string_back_inserter<std::string>/512 136 ns 136 ns 5146311 bytes_per_second=3.51286Gi/s
BM_format_to_n_string_back_inserter<std::string>/1024 257 ns 257 ns 2721554 bytes_per_second=3.70954Gi/s
BM_format_to_n_string_back_inserter<std::string>/2048 413 ns 413 ns 1694544 bytes_per_second=4.61394Gi/s
BM_format_to_n_string_back_inserter<std::string>/4096 668 ns 668 ns 1048318 bytes_per_second=5.71409Gi/s
BM_format_to_n_string_back_inserter<std::string>/8192 1116 ns 1116 ns 625793 bytes_per_second=6.83872Gi/s
BM_format_to_n_string_back_inserter<std::string>/16384 2357 ns 2357 ns 297204 bytes_per_second=6.47413Gi/s
BM_format_to_n_string_back_inserter<std::string>/32768 4467 ns 4467 ns 156599 bytes_per_second=6.83149Gi/s
BM_format_to_n_string_back_inserter<std::string>/65536 9366 ns 9366 ns 74666 bytes_per_second=6.51672Gi/s
BM_format_to_n_string_back_inserter<std::string>/131072 19923 ns 19923 ns 35254 bytes_per_second=6.12721Gi/s
BM_format_to_n_string_back_inserter<std::string>/262144 42798 ns 42798 ns 16329 bytes_per_second=5.70446Gi/s
BM_format_to_n_string_back_inserter<std::string>/524288 87261 ns 87257 ns 7998 bytes_per_second=5.59592Gi/s
BM_format_to_n_string_back_inserter<std::string>/1048576 181427 ns 181426 ns 3849 bytes_per_second=5.3827Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/1 72.0 ns 72.0 ns 9698638 bytes_per_second=13.2527Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/2 73.3 ns 73.3 ns 9565537 bytes_per_second=26.0322Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/4 73.9 ns 73.9 ns 9483910 bytes_per_second=51.6234Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/8 75.7 ns 75.7 ns 9205102 bytes_per_second=100.761Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/16 79.2 ns 79.2 ns 8841952 bytes_per_second=192.631Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/32 90.1 ns 90.1 ns 7809568 bytes_per_second=338.856Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/64 89.9 ns 89.9 ns 7783634 bytes_per_second=679.293Mi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/128 91.2 ns 91.2 ns 7677201 bytes_per_second=1.30693Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/256 108 ns 108 ns 6493267 bytes_per_second=2.21248Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/512 165 ns 165 ns 4241778 bytes_per_second=2.88381Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/1024 250 ns 250 ns 2797074 bytes_per_second=3.80765Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/2048 404 ns 404 ns 1731642 bytes_per_second=4.72376Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/4096 629 ns 629 ns 1115298 bytes_per_second=6.0654Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/8192 1053 ns 1053 ns 661168 bytes_per_second=7.24586Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/16384 2062 ns 2062 ns 338457 bytes_per_second=7.40132Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/32768 3805 ns 3805 ns 183818 bytes_per_second=8.02137Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/65536 7558 ns 7558 ns 92613 bytes_per_second=8.07602Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/131072 16973 ns 16973 ns 41293 bytes_per_second=7.19215Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/262144 37110 ns 37111 ns 18845 bytes_per_second=6.57874Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/524288 73110 ns 73108 ns 9592 bytes_per_second=6.67894Gi/s
BM_format_to_n_string_back_inserter<std::vector<char>>/1048576 149194 ns 149197 ns 4635 bytes_per_second=6.54548Gi/s
BM_format_to_n_string_back_inserter<std::list<char>>/1 65.8 ns 65.8 ns 10641306 bytes_per_second=14.493Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/2 79.4 ns 79.4 ns 8823359 bytes_per_second=24.0097Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/4 107 ns 107 ns 6538116 bytes_per_second=35.6288Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/8 180 ns 180 ns 3883077 bytes_per_second=42.4124Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/16 334 ns 334 ns 2097317 bytes_per_second=45.6725Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/32 662 ns 662 ns 1043514 bytes_per_second=46.1005Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/64 1267 ns 1267 ns 553510 bytes_per_second=48.1803Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/128 2480 ns 2480 ns 283417 bytes_per_second=49.2188Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/256 4923 ns 4924 ns 142727 bytes_per_second=49.5863Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/512 9812 ns 9811 ns 71351 bytes_per_second=49.7668Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/1024 19590 ns 19591 ns 35686 bytes_per_second=49.8475Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/2048 39161 ns 39159 ns 17860 bytes_per_second=49.8767Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/4096 78316 ns 78315 ns 8920 bytes_per_second=49.8788Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/8192 156709 ns 156699 ns 4462 bytes_per_second=49.8566Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/16384 312842 ns 312842 ns 2239 bytes_per_second=49.9454Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/32768 629744 ns 629751 ns 1106 bytes_per_second=49.6228Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/65536 1257851 ns 1257872 ns 553 bytes_per_second=49.6871Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/131072 2531022 ns 2530835 ns 275 bytes_per_second=49.3908Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/262144 5182786 ns 5182661 ns 124 bytes_per_second=48.2378Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/524288 10566644 ns 10566709 ns 62 bytes_per_second=47.3184Mi/s
BM_format_to_n_string_back_inserter<std::list<char>>/1048576 21319849 ns 21318080 ns 31 bytes_per_second=46.9085Mi/s
BM_format_to_n_string_begin<std::string>/1 48.7 ns 48.7 ns 14301196 bytes_per_second=19.5919Mi/s
BM_format_to_n_string_begin<std::string>/2 48.5 ns 48.5 ns 14418491 bytes_per_second=39.3467Mi/s
BM_format_to_n_string_begin<std::string>/4 48.5 ns 48.5 ns 14435510 bytes_per_second=78.6366Mi/s
BM_format_to_n_string_begin<std::string>/8 48.5 ns 48.5 ns 14434663 bytes_per_second=157.36Mi/s
BM_format_to_n_string_begin<std::string>/16 48.5 ns 48.5 ns 14447251 bytes_per_second=314.86Mi/s
BM_format_to_n_string_begin<std::string>/32 47.9 ns 47.9 ns 14603136 bytes_per_second=636.898Mi/s
BM_format_to_n_string_begin<std::string>/64 48.3 ns 48.3 ns 14492719 bytes_per_second=1.23435Gi/s
BM_format_to_n_string_begin<std::string>/128 48.2 ns 48.2 ns 14539008 bytes_per_second=2.47366Gi/s
BM_format_to_n_string_begin<std::string>/256 50.0 ns 50.0 ns 14021955 bytes_per_second=4.7704Gi/s
BM_format_to_n_string_begin<std::string>/512 52.6 ns 52.6 ns 13310671 bytes_per_second=9.06757Gi/s
BM_format_to_n_string_begin<std::string>/1024 56.2 ns 56.2 ns 12459389 bytes_per_second=16.9652Gi/s
BM_format_to_n_string_begin<std::string>/2048 67.2 ns 67.2 ns 10432897 bytes_per_second=28.3795Gi/s
BM_format_to_n_string_begin<std::string>/4096 101 ns 101 ns 6911640 bytes_per_second=37.6209Gi/s
BM_format_to_n_string_begin<std::string>/8192 150 ns 150 ns 4664235 bytes_per_second=50.8575Gi/s
BM_format_to_n_string_begin<std::string>/16384 308 ns 308 ns 2225795 bytes_per_second=49.5371Gi/s
BM_format_to_n_string_begin<std::string>/32768 1339 ns 1339 ns 521726 bytes_per_second=22.7997Gi/s
BM_format_to_n_string_begin<std::string>/65536 3293 ns 3293 ns 212565 bytes_per_second=18.5337Gi/s
BM_format_to_n_string_begin<std::string>/131072 6596 ns 6596 ns 106272 bytes_per_second=18.5063Gi/s
BM_format_to_n_string_begin<std::string>/262144 14064 ns 14065 ns 49774 bytes_per_second=17.3584Gi/s
BM_format_to_n_string_begin<std::string>/524288 29428 ns 29428 ns 23775 bytes_per_second=16.5921Gi/s
BM_format_to_n_string_begin<std::string>/1048576 58666 ns 58666 ns 11893 bytes_per_second=16.6463Gi/s
BM_format_to_n_string_begin<std::vector<char>>/1 48.0 ns 48.0 ns 14564573 bytes_per_second=19.8636Mi/s
BM_format_to_n_string_begin<std::vector<char>>/2 48.4 ns 48.4 ns 14445531 bytes_per_second=39.372Mi/s
BM_format_to_n_string_begin<std::vector<char>>/4 48.1 ns 48.1 ns 14579370 bytes_per_second=79.3003Mi/s
BM_format_to_n_string_begin<std::vector<char>>/8 48.3 ns 48.3 ns 14510269 bytes_per_second=158.113Mi/s
BM_format_to_n_string_begin<std::vector<char>>/16 48.4 ns 48.4 ns 14452809 bytes_per_second=314.976Mi/s
BM_format_to_n_string_begin<std::vector<char>>/32 48.1 ns 48.1 ns 14578127 bytes_per_second=634.858Mi/s
BM_format_to_n_string_begin<std::vector<char>>/64 48.4 ns 48.4 ns 14454174 bytes_per_second=1.2304Gi/s
BM_format_to_n_string_begin<std::vector<char>>/128 48.4 ns 48.4 ns 14454299 bytes_per_second=2.46269Gi/s
BM_format_to_n_string_begin<std::vector<char>>/256 49.1 ns 49.1 ns 14271076 bytes_per_second=4.85671Gi/s
BM_format_to_n_string_begin<std::vector<char>>/512 52.6 ns 52.6 ns 13331231 bytes_per_second=9.06458Gi/s
BM_format_to_n_string_begin<std::vector<char>>/1024 55.6 ns 55.6 ns 12610443 bytes_per_second=17.1486Gi/s
BM_format_to_n_string_begin<std::vector<char>>/2048 67.0 ns 67.0 ns 10439580 bytes_per_second=28.476Gi/s
BM_format_to_n_string_begin<std::vector<char>>/4096 97.6 ns 97.6 ns 7184733 bytes_per_second=39.1032Gi/s
BM_format_to_n_string_begin<std::vector<char>>/8192 151 ns 151 ns 4633388 bytes_per_second=50.5215Gi/s
BM_format_to_n_string_begin<std::vector<char>>/16384 315 ns 315 ns 2185686 bytes_per_second=48.4704Gi/s
BM_format_to_n_string_begin<std::vector<char>>/32768 1345 ns 1345 ns 519043 bytes_per_second=22.6814Gi/s
BM_format_to_n_string_begin<std::vector<char>>/65536 3295 ns 3295 ns 212381 bytes_per_second=18.5221Gi/s
BM_format_to_n_string_begin<std::vector<char>>/131072 6591 ns 6590 ns 105414 bytes_per_second=18.5223Gi/s
BM_format_to_n_string_begin<std::vector<char>>/262144 14084 ns 14084 ns 49765 bytes_per_second=17.3344Gi/s
BM_format_to_n_string_begin<std::vector<char>>/524288 30239 ns 30238 ns 23144 bytes_per_second=16.1477Gi/s
BM_format_to_n_string_begin<std::vector<char>>/1048576 60270 ns 60271 ns 11619 bytes_per_second=16.2028Gi/s
BM_format_to_n_string_begin<std::list<char>>/1 50.9 ns 50.9 ns 13783105 bytes_per_second=18.7485Mi/s
BM_format_to_n_string_begin<std::list<char>>/2 51.1 ns 51.1 ns 13641522 bytes_per_second=37.3058Mi/s
BM_format_to_n_string_begin<std::list<char>>/4 52.9 ns 52.9 ns 13255629 bytes_per_second=72.1149Mi/s
BM_format_to_n_string_begin<std::list<char>>/8 61.5 ns 61.5 ns 11386841 bytes_per_second=123.981Mi/s
BM_format_to_n_string_begin<std::list<char>>/16 82.8 ns 82.9 ns 8448851 bytes_per_second=184.17Mi/s
BM_format_to_n_string_begin<std::list<char>>/32 126 ns 126 ns 5558591 bytes_per_second=242.13Mi/s
BM_format_to_n_string_begin<std::list<char>>/64 212 ns 212 ns 3298201 bytes_per_second=287.444Mi/s
BM_format_to_n_string_begin<std::list<char>>/128 385 ns 385 ns 1820237 bytes_per_second=317.326Mi/s
BM_format_to_n_string_begin<std::list<char>>/256 746 ns 746 ns 934390 bytes_per_second=327.096Mi/s
BM_format_to_n_string_begin<std::list<char>>/512 1439 ns 1439 ns 487631 bytes_per_second=339.402Mi/s
BM_format_to_n_string_begin<std::list<char>>/1024 2883 ns 2882 ns 242058 bytes_per_second=338.795Mi/s
BM_format_to_n_string_begin<std::list<char>>/2048 5735 ns 5735 ns 121554 bytes_per_second=340.565Mi/s
BM_format_to_n_string_begin<std::list<char>>/4096 11360 ns 11360 ns 61656 bytes_per_second=343.875Mi/s
BM_format_to_n_string_begin<std::list<char>>/8192 23030 ns 23030 ns 30381 bytes_per_second=339.224Mi/s
BM_format_to_n_string_begin<std::list<char>>/16384 45959 ns 45958 ns 15229 bytes_per_second=339.985Mi/s
BM_format_to_n_string_begin<std::list<char>>/32768 91864 ns 91864 ns 7639 bytes_per_second=340.178Mi/s
BM_format_to_n_string_begin<std::list<char>>/65536 183305 ns 183298 ns 3821 bytes_per_second=340.976Mi/s
BM_format_to_n_string_begin<std::list<char>>/131072 375274 ns 375279 ns 1868 bytes_per_second=333.086Mi/s
BM_format_to_n_string_begin<std::list<char>>/262144 863452 ns 863366 ns 811 bytes_per_second=289.564Mi/s
BM_format_to_n_string_begin<std::list<char>>/524288 2044442 ns 2044356 ns 342 bytes_per_second=244.576Mi/s
BM_format_to_n_string_begin<std::list<char>>/1048576 4349820 ns 4349352 ns 161 bytes_per_second=229.919Mi/s
BM_format_to_n_string_span<char>/1 48.1 ns 48.1 ns 14575723 bytes_per_second=19.8447Mi/s
BM_format_to_n_string_span<char>/2 48.5 ns 48.5 ns 14428140 bytes_per_second=39.3396Mi/s
BM_format_to_n_string_span<char>/4 48.0 ns 48.0 ns 14559308 bytes_per_second=79.4032Mi/s
BM_format_to_n_string_span<char>/8 48.3 ns 48.3 ns 14497844 bytes_per_second=157.973Mi/s
BM_format_to_n_string_span<char>/16 48.5 ns 48.5 ns 14423850 bytes_per_second=314.497Mi/s
BM_format_to_n_string_span<char>/32 48.5 ns 48.5 ns 14436875 bytes_per_second=629.449Mi/s
BM_format_to_n_string_span<char>/64 48.5 ns 48.5 n…
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list