PyPy guys deserve some help on micronumpy from you, numpy gurus!
Hi (replying please Cc to me) There is a module micronumpy that appeared at PyPy source tree: https://bitbucket.org/pypy/pypy/src/dfae5033127e/pypy/module/micronumpy/ The great contributions of Justin Peel and Ilya Osadchiy to micronumpy module revive step-by-step the functionality of numpy. It would be great if some of numpy-gurus could jump in to assist, contribute some code and also, perhaps, guide a bit where the things go deeply in numpy nature. For those who don't know yet much about PyPy: PyPy is a fast implementation of Python 2.7. As a rule of thumb, PyPy is currently about 4x times faster than CPython. Certain benchmarks taken from the real life show 20x speed-up and more. The successes of PyPy performance are very remarkable http://speed.pypy.org/ best regards -- Valery A.Khamenya
On Thu, Sep 15, 2011 at 11:23 AM, Valery Khamenya <khamenya@gmail.com> wrote:
Hi (replying please Cc to me) There is a module micronumpy that appeared at PyPy source tree: https://bitbucket.org/pypy/pypy/src/dfae5033127e/pypy/module/micronumpy/ The great contributions of Justin Peel and Ilya Osadchiy to micronumpy module revive step-by-step the functionality of numpy. It would be great if some of numpy-gurus could jump in to assist, contribute some code and also, perhaps, guide a bit where the things go deeply in numpy nature. For those who don't know yet much about PyPy: PyPy is a fast implementation of Python 2.7. As a rule of thumb, PyPy is currently about 4x times faster than CPython. Certain benchmarks taken from the real life show 20x speed-up and more. The successes of PyPy performance are very remarkable http://speed.pypy.org/ best regards
This may not be the best place to ask, but how should a python script (e.g. setup.py) distinguish between real NumPy and micronumpy? Or should I instead be looking to distinguish PyPy versus another Python implementation? Peter
Hi Valery On Thu, Sep 15, 2011 at 3:23 AM, Valery Khamenya <khamenya@gmail.com> wrote:
There is a module micronumpy that appeared at PyPy source tree: https://bitbucket.org/pypy/pypy/src/dfae5033127e/pypy/module/micronumpy/ The great contributions of Justin Peel and Ilya Osadchiy to micronumpy module revive step-by-step the functionality of numpy. It would be great if some of numpy-gurus could jump in to assist, contribute some code and also, perhaps, guide a bit where the things go deeply in numpy nature.
If the micronumpy array object exposes the array interface, it would be easy to intermix standard numpy and PyPy loops on numpy arrays (and then it's probably overkill to redo the whole of NumPy in PyPy?). IIRC, this is the approach we took with the micronumpy GSOC project a year ago, but I haven't been following the project since then. Regards Stéfan
On Thu, Sep 15, 2011 at 11:34 AM, Peter <numpy-discussion@maubp.freeserve.co.uk> wrote:
This may not be the best place to ask, but how should a python script (e.g. setup.py) distinguish between real NumPy and micronumpy? Or should I instead be looking to distinguish PyPy versus another Python implementation?
For anyone interested, over on the pypy-dev list Alex recommended: import platform; platform.python_implementation == 'PyPy' http://mail.python.org/pipermail/pypy-dev/2011-September/008315.html Peter
On Fri, Sep 16, 2011 at 10:49 AM, Peter <numpy-discussion@maubp.freeserve.co.uk> wrote:
On Thu, Sep 15, 2011 at 11:34 AM, Peter <numpy-discussion@maubp.freeserve.co.uk> wrote:
This may not be the best place to ask, but how should a python script (e.g. setup.py) distinguish between real NumPy and micronumpy? Or should I instead be looking to distinguish PyPy versus another Python implementation?
For anyone interested, over on the pypy-dev list Alex recommended: import platform; platform.python_implementation == 'PyPy' http://mail.python.org/pipermail/pypy-dev/2011-September/008315.html
Good news, in PyPy 1.7 they have fixed the namespace clash. http://morepypy.blogspot.com/2011/11/pypy-17-widening-sweet-spot.html In PyPy 1.6, "import numpy as np" would give you "fake" numpy, the micronumpy written by the PyPy team - which was a frustratingly limited subset of the full NumPy API. As of PyPy 1.7, you must explicitly use "import numpypy as np" to get their micronumpy. This makes life simpler for 3rd party libraries since "import numpy" will just fail, and they can use and test for the PyPy mini-numpy explicitly if they want to. Cheers, Peter
participants (3)
-
Peter
-
Stéfan van der Walt
-
Valery Khamenya