[pyar] benchmark de numpy vs. octave

SAn gringotumadre en gmail.com
Lun Nov 29 17:56:02 ART 2010


2010/11/29 Manuel Argüelles <manu.argue en gmail.com>:
> El día 26 de noviembre de 2010 22:56, Martín Gaitán <gaitan en gmail.com> escribió:
>> Estoy dando un cursito para algunos profes y compañeros en mi facu (lo
>> conté hace un tiempo) [1] y viene interesante. La idea del proximo
>> encuentro es profundizar en numpỳ y su pandilla. Como siempre, la
>> comparación es "ingenieril" es con Matlab, pero como no lo tengo ni lo
>> uso, intenté una simple comparación con octave.
>>
>> Hago una matriz de 1000x1000 y calculo la inversa usando numpy::
>>
>>    In [1]: import numpy as np
>>    In [2]: a = np.matrix ( np.random.rand(1e6) )
>>    In [3]: a.shape = (1000, 1000)
>>    In [4]: %timeit a.I
>>    1 loops, best of 3: 4.15 s per loop
>>
>> lo mismo en octave::
>>
>>   a = rand(1000);
>>   t = cputime ; inv(a); printf('Total cpu time: %f seconds\n', cputime-t);
>>   Total cpu time: 1.596100 seconds
>>
>>
>> Eso dice que octave es 260 % más rápido.  ¿estoy midiendo mal?
>>
>>
>>
>> [1] https://github.com/nqnwebs/python-ingenieria
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> Hola Martin. Me parece q no estas midiendo mal.. Hice lo mismo en mi
> maquina y obtuve:
>
> Python 2.6.6 (r266:84292, Oct  9 2010, 11:40:09)
> In [1]: import numpy as np
> In [2]: a = np.matrix ( np.random.rand(1e6) )
> In [3]: a.shape = (1000, 1000)
> In [4]: %timeit a.I
> 1 loops, best of 3: 983 ms per loop
>
> (GNU Octave, version 3.2.4)
> octave:1> a = rand(1000);
> octave:2> t = cputime ; inv(a); printf('Total cpu time: %f seconds\n',
> cputime-t);
> Total cpu time: 1.132071 seconds
>
> ahora es mas rapido con numpy! :) la verdad nose a q se debe..
> Hace poco vi un paper que comparaba Matlab con Python/Numpy, si lo
> encuentro te paso el link, por ahi te interesa..

A mi me mide como a martín, octave más rapido.

Hay varias formas de resolver una inversa, probablemente se esten
usando métodos distintos, no?

SAn



More information about the pyar mailing list