[SciPy-user] Benchmark data

Gerard Vermeulen gerard.vermeulen at grenoble.cnrs.fr
Fri Dec 9 14:15:10 EST 2005


On Fri, 09 Dec 2005 03:14:49 -0700
Travis Oliphant <oliphant.travis at ieee.org> wrote:

> 
> I'd like people to try out scipy core in SVN.  I made improvements to the
> buffered ufunc section of code that I think will make a big difference
> in the recently published benchmarks. 
> 

Hi Travis,

indeed, it made a big difference (for big arrays scipy is now fastest on some
statements).

Below are my benchmark results on my DIY python, see
http://www.scipy.org/mailinglists/mailman?fn=scipy-user/2005-December/006057.html

On my system and for large arrays (>4096), numarray is still fastest, scipy moved
to second and Numeric is third.
Numeric is still fastest for small arrays, scipy is second, numarray is third.


Invoking: python bench.py 4
Importing test to scipy
Importing base to scipy
Importing basic to scipy
Python 2.4.2 (#1, Dec  4 2005, 08:21:04) 
[GCC 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)]
Optimization flags: -DNDEBUG -O3 -march=i686
CPU info: getNCPUs=2 has_mmx has_sse has_sse2 is_32bit is_Intel is_Pentium is_PentiumIV
Numeric-24.2
numarray-1.5.0
scipy-core-0.8.1.1617
benchmark size = 4  (vectors of length 256)
label            Numeric       numarray     scipy.base
    1          3.409e-05       0.000396      2.789e-05
    2            3.6e-05       0.000222      4.816e-05
    3          1.788e-05       0.000139      2.885e-05
    4          4.101e-05      0.0004969      5.412e-05
    5          1.788e-05       0.000155      2.098e-05
    6          1.717e-05      1.216e-05      2.289e-05
    7          3.195e-05      4.601e-05      3.815e-05
    8          1.907e-05      2.694e-05      1.097e-05
    9          0.0001988       0.000942      0.0002038
   10          0.0001671      0.0001969      0.0001872
   11            0.00014      0.0002701        0.00015
TOTAL           0.000721       0.002903       0.000793

Invoking: python bench.py 6
Importing test to scipy
Importing base to scipy
Importing basic to scipy
Python 2.4.2 (#1, Dec  4 2005, 08:21:04) 
[GCC 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)]
Optimization flags: -DNDEBUG -O3 -march=i686
CPU info: getNCPUs=2 has_mmx has_sse has_sse2 is_32bit is_Intel is_Pentium is_PentiumIV
Numeric-24.2
numarray-1.5.0
scipy-core-0.8.1.1617
benchmark size = 6  (vectors of length 4096)
label            Numeric       numarray     scipy.base
    1           0.000123      0.0004458      0.0001051
    2          9.203e-05      0.0002661      0.0001059
    3          6.199e-05        0.00018      8.893e-05
    4          0.0001678      0.0006211      0.0001152
    5          6.819e-05       0.000191      7.105e-05
    6           6.08e-05      4.983e-05      7.987e-05
    7          0.0001342      0.0001352      0.0001001
    8          0.0001109      0.0001199      1.979e-05
    9           0.001745       0.002324       0.001549
   10           0.001534       0.001451       0.001552
   11           0.001405       0.001292       0.001266
TOTAL           0.005503       0.007076       0.005053

Invoking: python bench.py 8
Importing test to scipy
Importing base to scipy
Importing basic to scipy
Python 2.4.2 (#1, Dec  4 2005, 08:21:04) 
[GCC 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)]
Optimization flags: -DNDEBUG -O3 -march=i686
CPU info: getNCPUs=2 has_mmx has_sse has_sse2 is_32bit is_Intel is_Pentium is_PentiumIV
Numeric-24.2
numarray-1.5.0
scipy-core-0.8.1.1617
benchmark size = 8  (vectors of length 65536)
label            Numeric       numarray     scipy.base
    1           0.001536      0.0007961       0.001513
    2           0.001063       0.001127       0.001285
    3          0.0007641       0.000819       0.001243
    4           0.003158       0.002709       0.002409
    5           0.001164       0.001175       0.001096
    6           0.000771      0.0007038       0.001053
    7           0.003375       0.002502        0.00241
    8           0.002131       0.001722       0.001514
    9            0.03727        0.03172        0.03533
   10            0.03748        0.03162        0.03519
   11            0.03099        0.02525        0.02958
TOTAL             0.1197         0.1001         0.1126

Invoking: python bench.py 10
Importing test to scipy
Importing base to scipy
Importing basic to scipy
Python 2.4.2 (#1, Dec  4 2005, 08:21:04) 
[GCC 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)]
Optimization flags: -DNDEBUG -O3 -march=i686
CPU info: getNCPUs=2 has_mmx has_sse has_sse2 is_32bit is_Intel is_Pentium is_PentiumIV
Numeric-24.2
numarray-1.5.0
scipy-core-0.8.1.1617
benchmark size = 10  (vectors of length 1048576)
label            Numeric       numarray     scipy.base
    1            0.02502       0.004906        0.02432
    2            0.01714        0.01492        0.02012
    3             0.0122        0.01107        0.01653
    4            0.05523        0.03407        0.03489
    5            0.01836        0.01492        0.01676
    6            0.01232        0.01078        0.01649
    7            0.05579          0.039        0.03481
    8            0.04067        0.02778        0.02765
    9             0.6151         0.4927         0.5701
   10             0.6023         0.5226         0.5684
   11             0.5072         0.4021         0.4677
TOTAL              1.961          1.575          1.798

Invoking: python bench.py 12
Importing test to scipy
Importing base to scipy
Importing basic to scipy
Python 2.4.2 (#1, Dec  4 2005, 08:21:04) 
[GCC 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)]
Optimization flags: -DNDEBUG -O3 -march=i686
CPU info: getNCPUs=2 has_mmx has_sse has_sse2 is_32bit is_Intel is_Pentium is_PentiumIV
Numeric-24.2
numarray-1.5.0
scipy-core-0.8.1.1617
benchmark size = 12  (vectors of length 16777216)
label            Numeric       numarray     scipy.base
    1             0.4127        0.07423         0.3927
    2             0.2734         0.2321         0.3234
    3             0.1975         0.1821         0.2733
    4             0.8747         0.5371         0.5588
    5             0.2896         0.2342         0.2737
    6             0.2066         0.1731         0.2718
    7             0.8761         0.6286         0.5524
    8             0.6546         0.4556         0.4533
    9              9.488          7.566          8.717
   10              9.506          8.064          8.745
   11              7.879          6.301          7.305
TOTAL              30.66          24.45          27.87

Thanks, but there is still room for improvement :-)

Gerard




More information about the SciPy-User mailing list