Serhiy Storchaka added the comment:

> Ok, but does it really make a difference and in which cases?

Up to 40% on Athlon and up to 70% on Atom.

> In other words, do you have benchmark numbers? :)

Attached results for AMD Athlon 64 X2 4600+ and Intel Atom N570 @ 1.66GHz 
under 32-bit Linux. You can run the benchmark on your machine (requires Posix-
compatible shell, sed awk).

----------
Added file: http://bugs.python.org/file27634/bytes_join_bench.res
Added file: http://bugs.python.org/file27635/bytes_join_bench_2.res

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue12805>
_______________________________________
   0 x 3        0.313 usec    0.34 usec    -8%
   1 x 3        0.311 usec   0.307 usec    +1%
   2 x 3        0.322 usec     0.3 usec    +7%
   5 x 3        0.322 usec    0.31 usec    +4%
  10 x 3        0.319 usec   0.345 usec    -8%
  20 x 3         0.32 usec   0.323 usec    -1%
  50 x 3        0.356 usec   0.355 usec    +0%
 100 x 3        0.358 usec   0.364 usec    -2%
1000 x 3        0.908 usec   0.899 usec    +1%
   0 x 10       0.623 usec   0.529 usec   +18%
   1 x 10        0.61 usec   0.543 usec   +12%
   2 x 10       0.651 usec   0.532 usec   +22%
   5 x 10       0.655 usec   0.591 usec   +11%
  10 x 10       0.683 usec   0.584 usec   +17%
  20 x 10       0.681 usec   0.615 usec   +11%
  50 x 10       0.825 usec   0.878 usec    -6%
 100 x 10       0.861 usec   0.888 usec    -3%
1000 x 10        2.37 usec    2.27 usec    +4%
   0 x 100       4.55 usec    3.41 usec   +33%
   1 x 100       4.39 usec    3.56 usec   +23%
   2 x 100       4.83 usec    3.33 usec   +45%
   5 x 100       4.98 usec    3.76 usec   +32%
  10 x 100       5.17 usec    3.98 usec   +30%
  20 x 100       5.11 usec    4.28 usec   +19%
  50 x 100       5.99 usec    6.45 usec    -7%
 100 x 100       6.81 usec    6.46 usec    +5%
1000 x 100       40.8 usec    40.8 usec    +0%
   0 x 1000      43.3 usec    30.6 usec   +42%
   1 x 1000      41.9 usec    37.8 usec   +11%
   2 x 1000        46 usec    35.7 usec   +29%
   5 x 1000      46.1 usec    35.9 usec   +28%
  10 x 1000      49.9 usec    36.2 usec   +38%
  20 x 1000      49.4 usec    45.8 usec    +8%
  50 x 1000      96.3 usec    95.7 usec    +1%
 100 x 1000       125 usec     126 usec    -1%
1000 x 1000      1.74 msec    1.74 msec    +0%
   0 x 10000      565 usec     458 usec   +23%
   1 x 10000      573 usec     473 usec   +21%
   2 x 10000      635 usec     454 usec   +40%
   5 x 10000      609 usec     504 usec   +21%
  10 x 10000      693 usec     597 usec   +16%
  20 x 10000      718 usec     682 usec    +5%
  50 x 10000     2.53 msec    2.51 msec    +1%
 100 x 10000     3.56 msec    3.52 msec    +1%
1000 x 10000     16.7 msec      17 msec    -2%
   0 x 3         1.01 usec   0.935 usec    +8%
   1 x 3        0.993 usec   0.936 usec    +6%
   2 x 3        0.991 usec    0.93 usec    +7%
   5 x 3        0.991 usec   0.941 usec    +5%
  10 x 3        0.991 usec   0.936 usec    +6%
  20 x 3         1.03 usec   0.974 usec    +6%
  50 x 3         1.19 usec    1.14 usec    +4%
 100 x 3         1.15 usec    1.17 usec    -2%
1000 x 3         1.85 usec    1.89 usec    -2%
   0 x 10        1.56 usec    1.47 usec    +6%
   1 x 10        1.56 usec    1.42 usec   +10%
   2 x 10        1.64 usec    1.48 usec   +11%
   5 x 10        1.77 usec    1.53 usec   +16%
  10 x 10        1.78 usec    1.48 usec   +20%
  20 x 10        1.95 usec    1.55 usec   +26%
  50 x 10        2.65 usec    2.64 usec    +0%
 100 x 10        2.71 usec    2.73 usec    -1%
1000 x 10        5.12 usec    4.87 usec    +5%
   0 x 100       12.1 usec    7.49 usec   +62%
   1 x 100       9.88 usec    7.67 usec   +29%
   2 x 100       12.8 usec    7.64 usec   +68%
   5 x 100       12.8 usec    8.22 usec   +56%
  10 x 100       12.8 usec    8.39 usec   +53%
  20 x 100       14.2 usec    8.92 usec   +59%
  50 x 100       16.3 usec      16 usec    +2%
 100 x 100       19.7 usec    19.6 usec    +1%
1000 x 100       47.6 usec    47.1 usec    +1%
   0 x 1000       125 usec    73.3 usec   +71%
   1 x 1000      98.2 usec    75.3 usec   +30%
   2 x 1000       126 usec    75.9 usec   +66%
   5 x 1000       113 usec    78.8 usec   +43%
  10 x 1000       124 usec    80.7 usec   +54%
  20 x 1000       137 usec    86.3 usec   +59%
  50 x 1000       173 usec     175 usec    -1%
 100 x 1000       256 usec     249 usec    +3%
1000 x 1000      2.07 msec    2.05 msec    +1%
   0 x 10000     1.29 msec     769 usec  -100%
   1 x 10000     1.01 msec     792 usec  -100%
   2 x 10000     1.15 msec     802 usec  -100%
   5 x 10000     1.34 msec     834 usec  -100%
  10 x 10000     1.34 msec     887 usec  -100%
  20 x 10000     1.42 msec     996 usec  -100%
  50 x 10000     3.53 msec    3.57 msec    -1%
 100 x 10000      4.5 msec    4.51 msec    -0%
1000 x 10000     21.5 msec    21.2 msec    +1%
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to