Platform of campaign bench-pep393: Date: 2012-05-23 14:18:12 Platform: Linux-3.2.0-24-generic-pae-i686-with-debian-wheezy-sid Python version: 3.3.0a0 (default:0408001e4765, May 23 2012, 14:17:30) [GCC 4.6.3] Python unicode implementation: PEP 393 CPU model: Intel(R) Core(TM) i5 CPU 661 @ 3.33GHz CFLAGS: -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes SCM: hg revision=0408001e4765 branch=default date="2011-10-06 14:41 -0700" Platform of campaign bench-pyaccu: Date: 2012-05-23 14:22:09 Platform: Linux-3.2.0-24-generic-pae-i686-with-debian-wheezy-sid Python version: 3.3.0a3+ (default:0dd0d56bdcc1, May 23 2012, 14:21:23) [GCC 4.6.3] Python unicode implementation: PEP 393 CPU model: Intel(R) Core(TM) i5 CPU 661 @ 3.33GHz CFLAGS: -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes SCM: hg revision=0dd0d56bdcc1 branch=default date="2012-05-07 12:03 +0100" Platform of campaign bench-writer: Date: 2012-05-23 14:31:39 Platform: Linux-3.2.0-24-generic-pae-i686-with-debian-wheezy-sid Python version: 3.3.0a3+ (default:8b118f6f661e, May 23 2012, 14:30:53) [GCC 4.6.3] Python unicode implementation: PEP 393 CPU model: Intel(R) Core(TM) i5 CPU 661 @ 3.33GHz CFLAGS: -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes SCM: hg revision=8b118f6f661e tag=tip branch=default date="2012-05-23 14:10 +0200" --------------------------------------------+--------------+----------------+--------------- Basic format, short ASCII output | bench-pep393 | bench-pyaccu | bench-writer --------------------------------------------+--------------+----------------+--------------- fmt="{}"; arg="abc"; fmt.format(arg) | 256 ns (*) | 387 ns (+51%) | 206 ns (-20%) fmt="{}"; arg="\u20ac" * 3; fmt.format(arg) | 479 ns (*) | 397 ns (-17%) | 202 ns (-58%) fmt="{}"; arg=123; fmt.format(arg) | 313 ns (*) | 438 ns (+40%) | 240 ns (-23%) fmt="{}"; arg=12.345; fmt.format(arg) | 890 ns (*) | 1.09 us (+23%) | 751 ns (-16%) fmt="{}"; arg=2j; fmt.format(arg) | 915 ns (*) | 1.04 us (+13%) | 578 ns (-37%) fmt="{}"; arg=1+2j; fmt.format(arg) | 1.17 us (*) | 1.25 us (+7%) | 787 ns (-33%) fmt="{:d}"; arg=123; fmt.format(arg) | 497 ns (*) | 646 ns (+30%) | 295 ns (-41%) fmt="{:x}"; arg=123; fmt.format(arg) | 558 ns (*) | 611 ns (+9%) | 288 ns (-48%) fmt="%s"; arg="abc"; fmt % arg | 148 ns (*) | 123 ns (-17%) | 64 ns (-57%) fmt="%s"; arg="\u20ac" * 3; fmt % arg | 156 ns (*) | 165 ns (+6%) | 68 ns (-56%) fmt="%s"; arg=123; fmt % arg | 213 ns (*) | 181 ns (-15%) | 117 ns (-45%) fmt="%s"; arg=12.345; fmt % arg | 708 ns (*) | 684 ns | 609 ns (-14%) fmt="%s"; arg=2j; fmt % arg | 553 ns (*) | 477 ns (-14%) | 438 ns (-21%) fmt="%s"; arg=1+2j; fmt % arg | 833 ns (*) | 744 ns (-11%) | 645 ns (-23%) fmt="%d"; arg=123; fmt % arg | 288 ns (*) | 186 ns (-35%) | 118 ns (-59%) fmt="%x"; arg=123; fmt % arg | 339 ns (*) | 225 ns (-34%) | 116 ns (-66%) --------------------------------------------+--------------+----------------+--------------- Total | 8.32 us (*) | 8.64 us | 5.52 us (-34%) --------------------------------------------+--------------+----------------+--------------- -----------------------------------------------+--------------+----------------+--------------- Basic format, long output | bench-pep393 | bench-pyaccu | bench-writer -----------------------------------------------+--------------+----------------+--------------- fmt="{}"; arg="A" * 4096; fmt.format(arg) | 18.8 us (*) | 595 ns (-97%) | 196 ns (-99%) fmt="{}"; arg="\u20ac" * 4096; fmt.format(arg) | 32.1 us (*) | 787 ns (-98%) | 209 ns (-99%) fmt="{}"; arg=2**4096 - 1; fmt.format(arg) | 121 us (*) | 117 us | 115 us fmt="%s"; arg="A" * 4096; fmt % arg | 13.5 us (*) | 307 ns (-98%) | 64 ns (-100%) fmt="%s"; arg="\u20ac" * 4096; fmt % arg | 12.4 us (*) | 503 ns (-96%) | 67 ns (-99%) fmt="%s"; arg=2**4096 - 1; fmt % arg | 120 us (*) | 116 us | 115 us fmt="{:d}"; arg=2**4096 - 1; fmt.format(arg) | 122 us (*) | 117 us | 116 us fmt="{:x}"; arg=2**4096 - 1; fmt.format(arg) | 8.13 us (*) | 3.36 us (-59%) | 2.8 us (-66%) fmt="%d"; arg=2**4096 - 1; fmt % arg | 121 us (*) | 116 us | 115 us fmt="%x"; arg=2**4096 - 1; fmt % arg | 7.61 us (*) | 2.94 us (-61%) | 2.61 us (-66%) -----------------------------------------------+--------------+----------------+--------------- Total | 576 us (*) | 474 us (-18%) | 468 us (-19%) -----------------------------------------------+--------------+----------------+--------------- -------------------------------------------------------------+--------------+----------------+--------------- Basic format, huge output | bench-pep393 | bench-pyaccu | bench-writer -------------------------------------------------------------+--------------+----------------+--------------- fmt="{}"; arg="A" * (10 * 1024 * 1024); fmt.format(arg) | 56.8 ms (*) | 6.42 ms (-89%) | 202 ns (-100%) fmt="%s"; arg="A" * (10 * 1024 * 1024); fmt % arg | 57.4 ms (*) | 6.38 ms (-89%) | 65 ns (-100%) fmt="{}"; arg="\u20ac" * (10 * 1024 * 1024); fmt.format(arg) | 104 ms (*) | 12.3 ms (-88%) | 206 ns (-100%) fmt="%s"; arg="\u20ac" * (10 * 1024 * 1024); fmt % arg | 58 ms (*) | 12.3 ms (-79%) | 68 ns (-100%) fmt="{}"; arg=2 ** 123456 - 1; fmt.format(arg) | 101 ms (*) | 102 ms | 101 ms fmt="%s"; arg=2 ** 123456 - 1; fmt % arg | 101 ms (*) | 102 ms | 101 ms -------------------------------------------------------------+--------------+----------------+--------------- Total | 478 ms (*) | 241 ms (-50%) | 202 ms (-58%) -------------------------------------------------------------+--------------+----------------+--------------- ----------------------------------------------+--------------+----------------+--------------- One argument with ASCII prefix, short output | bench-pep393 | bench-pyaccu | bench-writer ----------------------------------------------+--------------+----------------+--------------- fmt="x={}"; arg="abc"; fmt.format(arg) | 265 ns (*) | 433 ns (+63%) | 279 ns (+5%) fmt="x={}"; arg="\u20ac" * 3; fmt.format(arg) | 500 ns (*) | 436 ns (-13%) | 332 ns (-34%) fmt="x={}"; arg=123; fmt.format(arg) | 322 ns (*) | 469 ns (+46%) | 309 ns fmt="x={}"; arg=12.345; fmt.format(arg) | 889 ns (*) | 1.1 us (+24%) | 858 ns fmt="x={}"; arg=2j; fmt.format(arg) | 928 ns (*) | 1.05 us (+13%) | 688 ns (-26%) fmt="x={}"; arg=1+2j; fmt.format(arg) | 1.2 us (*) | 1.28 us (+7%) | 888 ns (-26%) fmt="x=%s"; arg="abc"; fmt % arg | 154 ns (*) | 143 ns (-7%) | 151 ns fmt="x=%s"; arg="\u20ac" * 3; fmt % arg | 158 ns (*) | 200 ns (+27%) | 214 ns (+36%) fmt="x=%s"; arg=123; fmt % arg | 216 ns (*) | 203 ns (-6%) | 213 ns fmt="x=%s"; arg=12.345; fmt % arg | 708 ns (*) | 701 ns | 702 ns fmt="x=%s"; arg=2j; fmt % arg | 548 ns (*) | 498 ns (-9%) | 525 ns fmt="x=%s"; arg=1+2j; fmt % arg | 843 ns (*) | 740 ns (-12%) | 753 ns (-11%) ----------------------------------------------+--------------+----------------+--------------- Total | 6.73 us (*) | 7.25 us (+8%) | 5.91 us (-12%) ----------------------------------------------+--------------+----------------+--------------- ---------------------------------------------+--------------+----------------+--------------- One argument with ASCII suffix, short output | bench-pep393 | bench-pyaccu | bench-writer ---------------------------------------------+--------------+----------------+--------------- fmt="{}:"; arg="abc"; fmt.format(arg) | 277 ns (*) | 463 ns (+67%) | 273 ns fmt="{}:"; arg="\u20ac" * 3; fmt.format(arg) | 511 ns (*) | 467 ns (-9%) | 288 ns (-44%) fmt="{}:"; arg=123; fmt.format(arg) | 335 ns (*) | 500 ns (+49%) | 314 ns (-6%) fmt="{}:"; arg=12.345; fmt.format(arg) | 885 ns (*) | 1.11 us (+26%) | 899 ns fmt="{}:"; arg=2j; fmt.format(arg) | 938 ns (*) | 1.09 us (+16%) | 680 ns (-28%) fmt="{}:"; arg=1+2j; fmt.format(arg) | 1.26 us (*) | 1.28 us | 906 ns (-28%) fmt="%s:"; arg="abc"; fmt % arg | 147 ns (*) | 164 ns (+12%) | 152 ns fmt="%s:"; arg="\u20ac" * 3; fmt % arg | 155 ns (*) | 187 ns (+21%) | 160 ns fmt="%s:"; arg=123; fmt % arg | 211 ns (*) | 222 ns (+6%) | 211 ns fmt="%s:"; arg=12.345; fmt % arg | 710 ns (*) | 723 ns | 714 ns fmt="%s:"; arg=2j; fmt % arg | 543 ns (*) | 521 ns | 527 ns fmt="%s:"; arg=1+2j; fmt % arg | 812 ns (*) | 771 ns (-5%) | 738 ns (-9%) ---------------------------------------------+--------------+----------------+--------------- Total | 6.78 us (*) | 7.5 us (+11%) | 5.86 us (-14%) ---------------------------------------------+--------------+----------------+--------------- ------------------------------------------------------+--------------+---------------+--------------- One argument with BMP prefix and suffix, short output | bench-pep393 | bench-pyaccu | bench-writer ------------------------------------------------------+--------------+---------------+--------------- fmt="\u20ac[{}]"; arg="abc"; fmt.format(arg) | 510 ns (*) | 484 ns (-5%) | 336 ns (-34%) fmt="\u20ac[{}]"; arg="\u20ac" * 3; fmt.format(arg) | 523 ns (*) | 468 ns (-11%) | 361 ns (-31%) fmt="\u20ac[{}]"; arg=123; fmt.format(arg) | 572 ns (*) | 505 ns (-12%) | 385 ns (-33%) fmt="\u20ac[{}]"; arg=12.345; fmt.format(arg) | 1.14 us (*) | 1.21 us (+6%) | 944 ns (-17%) fmt="\u20ac[{}]"; arg=2j; fmt.format(arg) | 1.2 us (*) | 1.16 us | 761 ns (-37%) fmt="\u20ac[{}]"; arg=1+2j; fmt.format(arg) | 1.5 us (*) | 1.38 us (-8%) | 954 ns (-36%) fmt="\u20ac[%s]"; arg="abc"; fmt % arg | 167 ns (*) | 255 ns (+52%) | 210 ns (+25%) fmt="\u20ac[%s]"; arg="\u20ac" * 3; fmt % arg | 168 ns (*) | 265 ns (+57%) | 208 ns (+24%) fmt="\u20ac[%s]"; arg=123; fmt % arg | 230 ns (*) | 311 ns (+35%) | 275 ns (+20%) fmt="\u20ac[%s]"; arg=12.345; fmt % arg | 723 ns (*) | 793 ns (+10%) | 755 ns fmt="\u20ac[%s]"; arg=2j; fmt % arg | 564 ns (*) | 610 ns (+8%) | 604 ns (+7%) fmt="\u20ac[%s]"; arg=1+2j; fmt % arg | 842 ns (*) | 824 ns | 795 ns (-6%) ------------------------------------------------------+--------------+---------------+--------------- Total | 8.14 us (*) | 8.27 us | 6.59 us (-19%) ------------------------------------------------------+--------------+---------------+--------------- -----------------------------------------------------------------+--------------+----------------+--------------- Huge long output with prefix and suffix | bench-pep393 | bench-pyaccu | bench-writer -----------------------------------------------------------------+--------------+----------------+--------------- fmt="{}"; arg="A" * (10 * 1024 * 1024); fmt.format(arg) | 57.3 ms (*) | 6.21 ms (-89%) | 201 ns (-100%) fmt="%s"; arg="A" * (10 * 1024 * 1024); fmt % arg | 57.8 ms (*) | 6.22 ms (-89%) | 65 ns (-100%) fmt="x=[{}]"; arg="A" * (10 * 1024 * 1024); fmt.format(arg) | 57.1 ms (*) | 7.16 ms (-87%) | 7.21 ms (-87%) fmt="x=[%s]"; arg="A" * (10 * 1024 * 1024); fmt % arg | 57.7 ms (*) | 7.17 ms (-88%) | 7.21 ms (-87%) fmt="{}"; arg="\u20ac" * (10 * 1024 * 1024); fmt.format(arg) | 104 ms (*) | 12.3 ms (-88%) | 206 ns (-100%) fmt="%s"; arg="\u20ac" * (10 * 1024 * 1024); fmt % arg | 58.4 ms (*) | 12.2 ms (-79%) | 68 ns (-100%) fmt="x=[{}]"; arg="\u20ac" * (10 * 1024 * 1024); fmt.format(arg) | 104 ms (*) | 16.1 ms (-85%) | 16.2 ms (-84%) fmt="x=[%s]"; arg="\u20ac" * (10 * 1024 * 1024); fmt % arg | 58.3 ms (*) | 16 ms (-72%) | 16.2 ms (-72%) fmt="{}"; arg=2 ** 123456 - 1; fmt.format(arg) | 101 ms (*) | 102 ms | 101 ms fmt="%s"; arg=2 ** 123456 - 1; fmt % arg | 102 ms (*) | 101 ms | 101 ms fmt="x=[{}]"; arg=2 ** 123456 - 1; fmt.format(arg) | 102 ms (*) | 102 ms | 102 ms fmt="x=[%s]"; arg=2 ** 123456 - 1; fmt % arg | 102 ms (*) | 101 ms | 101 ms -----------------------------------------------------------------+--------------+----------------+--------------- Total | 961 ms (*) | 488 ms (-49%) | 452 ms (-53%) -----------------------------------------------------------------+--------------+----------------+--------------- --------------------------------------------------------------+--------------+----------------+--------------- Many short arguments | bench-pep393 | bench-pyaccu | bench-writer --------------------------------------------------------------+--------------+----------------+--------------- fmt="{0}"*1024; fmt.format("abc") | 96.2 us (*) | 136 us (+41%) | 81.8 us (-15%) fmt="{0}"*1024; fmt.format("\u20ac" * 3) | 101 us (*) | 142 us (+41%) | 83.9 us (-17%) fmt="{0}"*1024; fmt.format(123) | 152 us (*) | 199 us (+31%) | 104 us (-32%) fmt="{0}"*1024; fmt.format(12.345) | 648 us (*) | 769 us (+19%) | 608 us (-6%) fmt="{0}"*1024; fmt.format(2j) | 638 us (*) | 776 us (+22%) | 466 us (-27%) fmt="{0}"*1024; fmt.format(1+2j) | 939 us (*) | 1.01 ms (+7%) | 691 us (-26%) fmt="{0}{1}"*1024; fmt.format("abc", 123) | 257 us (*) | 338 us (+31%) | 217 us (-15%) fmt="{0}{1}{2}"*1024; fmt.format("abc", "\u20ac" * 3, 123) | 377 us (*) | 490 us (+30%) | 301 us (-20%) fmt="{0}-"*1024; fmt.format("abc") | 105 us (*) | 140 us (+33%) | 116 us (+11%) fmt="{0}-"*1024; fmt.format(123) | 160 us (*) | 207 us (+29%) | 135 us (-16%) fmt="{0}-{1}="*1024; fmt.format("abc", 123) | 278 us (*) | 363 us (+31%) | 263 us (-5%) fmt="{0}-{1}={2}#"*1024; fmt.format("abc", "\u20ac" * 3, 123) | 411 us (*) | 512 us (+25%) | 357 us (-13%) --------------------------------------------------------------+--------------+----------------+--------------- Total | 4.16 ms (*) | 5.08 ms (+22%) | 3.42 ms (-18%) --------------------------------------------------------------+--------------+----------------+--------------- --------------------------------------------------------------------------------------------+--------------+----------------+--------------- Many long arguments | bench-pep393 | bench-pyaccu | bench-writer --------------------------------------------------------------------------------------------+--------------+----------------+--------------- fmt="{0}"*1024; arg="A" * 4096; fmt.format(arg) | 23 ms (*) | 1.59 ms (-93%) | 1.62 ms (-93%) fmt="{0}"*1024; arg="\u20ac" * 4096; fmt.format(arg) | 27.6 ms (*) | 3.75 ms (-86%) | 3.8 ms (-86%) fmt="{0}"*1024; arg=2**4096 - 1; fmt.format(arg) | 126 ms (*) | 120 ms | 119 ms (-6%) fmt="{0}{1}"*1024; args=("A" * 4096, 2**4096 - 1); fmt.format(*args) | 149 ms (*) | 122 ms (-18%) | 121 ms (-19%) fmt="{0}{1}{2}"*1024; args=("A" * 4096, "\u20ac" * 4096, 2**4096 - 1); fmt.format(*args) | 191 ms (*) | 130 ms (-32%) | 129 ms (-32%) fmt="{0}-"*1024; arg="A" * 4096; fmt.format(arg) | 23.3 ms (*) | 1.62 ms (-93%) | 1.69 ms (-93%) fmt="{0}-"*1024; arg=2**4096 - 1; fmt.format(arg) | 126 ms (*) | 120 ms | 119 ms (-6%) fmt="{0}-{1}="*1024; args=("A" * 4096, 2**4096 - 1); fmt.format(*args) | 149 ms (*) | 122 ms (-18%) | 121 ms (-19%) fmt="{0}-{1}={2}#"*1024; args=("A" * 4096, "\u20ac" * 4096, 2**4096 - 1); fmt.format(*args) | 189 ms (*) | 131 ms (-31%) | 129 ms (-32%) --------------------------------------------------------------------------------------------+--------------+----------------+--------------- Total | 1 sec (*) | 751 ms (-25%) | 746 ms (-26%) --------------------------------------------------------------------------------------------+--------------+----------------+--------------- -----------------------------------------------------------------------------------------+--------------+----------------+--------------- Keywords | bench-pep393 | bench-pyaccu | bench-writer -----------------------------------------------------------------------------------------+--------------+----------------+--------------- s="The {k1} is {k2} the {k3}."; args={"k1": "x", "k2": "y", "k3": "z"}; s.format(**args) | 814 ns (*) | 1.18 us (+45%) | 856 ns (+5%) s="The %(k1)s is %(k2)s the %(k3)s."; args={"k1":"x","k2":"y","k3":"z",}; s % args | 529 ns (*) | 594 ns (+12%) | 620 ns (+17%) -----------------------------------------------------------------------------------------+--------------+----------------+--------------- Total | 1.34 us (*) | 1.77 us (+32%) | 1.48 us (+10%) -----------------------------------------------------------------------------------------+--------------+----------------+--------------- -----------------------------------------+--------------+----------------+-------------- Align to 10 characters | bench-pep393 | bench-pyaccu | bench-writer -----------------------------------------+--------------+----------------+-------------- fmt="{:<10}"; arg="abc"; fmt.format(arg) | 435 ns (*) | 439 ns | 305 ns (-30%) fmt="{:<10}"; arg=123; fmt.format(arg) | 548 ns (*) | 695 ns (+27%) | 492 ns (-10%) fmt="{:>10}"; arg="abc"; fmt.format(arg) | 455 ns (*) | 455 ns | 302 ns (-34%) fmt="{:>10}"; arg=123; fmt.format(arg) | 555 ns (*) | 711 ns (+28%) | 484 ns (-13%) fmt="{:^10}"; arg="abc"; fmt.format(arg) | 464 ns (*) | 471 ns | 323 ns (-30%) fmt="{:^10}"; arg=123; fmt.format(arg) | 561 ns (*) | 723 ns (+29%) | 495 ns (-12%) -----------------------------------------+--------------+----------------+-------------- Total | 3.02 us (*) | 3.49 us (+16%) | 2.4 us (-20%) -----------------------------------------+--------------+----------------+-------------- -------------------------------------------+--------------+----------------+--------------- Align to 4096 characters | bench-pep393 | bench-pyaccu | bench-writer -------------------------------------------+--------------+----------------+--------------- fmt="{:<4096}"; arg="abc"; fmt.format(arg) | 21.1 us (*) | 913 ns (-96%) | 496 ns (-98%) fmt="{:<4096}"; arg=123; fmt.format(arg) | 21.1 us (*) | 1.1 us (-95%) | 696 ns (-97%) fmt="{:>4096}"; arg="abc"; fmt.format(arg) | 21 us (*) | 893 ns (-96%) | 489 ns (-98%) fmt="{:>4096}"; arg=123; fmt.format(arg) | 21.2 us (*) | 1.15 us (-95%) | 721 ns (-97%) fmt="{:^4096}"; arg="abc"; fmt.format(arg) | 21 us (*) | 939 ns (-96%) | 510 ns (-98%) fmt="{:^4096}"; arg=123; fmt.format(arg) | 21.2 us (*) | 1.22 us (-94%) | 730 ns (-97%) -------------------------------------------+--------------+----------------+--------------- Total | 127 us (*) | 6.21 us (-95%) | 3.64 us (-97%) -------------------------------------------+--------------+----------------+--------------- -------------------------------------------------+--------------+---------------+------------- Format number in the locale | bench-pep393 | bench-pyaccu | bench-writer -------------------------------------------------+--------------+---------------+------------- fmt="{:,}"; arg=123; fmt.format(arg) | 484 ns (*) | 656 ns (+35%) | 470 ns fmt="{:,}"; arg=2**4096 - 1; fmt.format(arg) | 133 us (*) | 126 us | 126 us fmt="{:,}"; arg=2 ** 123456 - 1; fmt.format(arg) | 102 ms (*) | 101 ms | 102 ms -------------------------------------------------+--------------+---------------+------------- Total | 102 ms (*) | 102 ms | 102 ms -------------------------------------------------+--------------+---------------+------------- ------------------------------------+--------------+---------------+-------------- str(int) | bench-pep393 | bench-pyaccu | bench-writer ------------------------------------+--------------+---------------+-------------- number=123; str(number) | 164 ns (*) | 211 ns (+29%) | 260 ns (+59%) number=2**4096 - 1; str(number) | 116 us (*) | 116 us | 116 us number=2 ** 123456 - 1; str(number) | 101 ms (*) | 101 ms | 101 ms ------------------------------------+--------------+---------------+-------------- Total | 101 ms (*) | 101 ms | 101 ms ------------------------------------+--------------+---------------+-------------- ------------------------------------------------------+--------------+-----------------+---------------- Summary | bench-pep393 | bench-pyaccu | bench-writer ------------------------------------------------------+--------------+-----------------+---------------- Basic format, short ASCII output | 8.32 us (*) | 8.64 us | 5.52 us (-34%) Basic format, long output | 576 us (*) | 474 us (-18%) | 468 us (-19%) Basic format, huge output | 478 ms (*) | 241 ms (-50%) | 202 ms (-58%) One argument with ASCII prefix, short output | 6.73 us (*) | 7.25 us (+8%) | 5.91 us (-12%) One argument with ASCII suffix, short output | 6.78 us (*) | 7.5 us (+11%) | 5.86 us (-14%) One argument with BMP prefix and suffix, short output | 8.14 us (*) | 8.27 us | 6.59 us (-19%) Huge long output with prefix and suffix | 961 ms (*) | 488 ms (-49%) | 452 ms (-53%) Many short arguments | 4.16 ms (*) | 5.08 ms (+22%) | 3.42 ms (-18%) Many long arguments | 1 sec (*) | 751 ms (-25%) | 746 ms (-26%) Keywords | 1.34 us (*) | 1.77 us (+32%) | 1.48 us (+10%) Align to 10 characters | 3.02 us (*) | 3.49 us (+16%) | 2.4 us (-20%) Align to 4096 characters | 127 us (*) | 6.21 us (-95%) | 3.64 us (-97%) Format number in the locale | 102 ms (*) | 102 ms | 102 ms str(int) | 101 ms (*) | 101 ms | 101 ms ------------------------------------------------------+--------------+-----------------+---------------- Total | 2.65 sec (*) | 1.69 sec (-36%) | 1.61 sec (-39%) ------------------------------------------------------+--------------+-----------------+----------------