[pypy-dev] Some NumPyPy propositions

Maciej Fijalkowski fijall at gmail.com
Tue Jan 17 19:35:02 CET 2012


On Tue, Jan 17, 2012 at 8:22 PM, Dmitrey <dmitrey15 at ukr.net> wrote:
> Hi,
>
>
>
> I had proposed you to create an online table, where
> NumPy functions are split into the following categories:
> * already ported
> * under development (preferably with name of the person who works on it)
> * not started yet
> Is it possible to get the data like this? This way other possible
> contributors (maybe including me) could select an appropriate (i.e. they are
> capable of) function for contribution, and other people could estimate the
> progress done.
>
>
>> Yes, we're working on such thing. The temporary location is at
>> https://bitbucket.org/fijal/hack2/src/default/numready, we'll probably
>> create a nightly static HTML.
>
> Well, I just got this:
>
> File
> "/usr/local/lib/python2.7/dist-packages/Flask-0.8-py2.7.egg/flask/app.py",
> line 1518, in __call__
>
> return self.wsgi_app(environ, start_response)
>
> File
> "/usr/local/lib/python2.7/dist-packages/Flask-0.8-py2.7.egg/flask/app.py",
> line 1506, in wsgi_app
>
> response = self.make_response(self.handle_exception(e))
>
> File
> "/usr/local/lib/python2.7/dist-packages/Flask-0.8-py2.7.egg/flask/app.py",
> line 1504, in wsgi_app
>
> response = self.full_dispatch_request()
>
> File
> "/usr/local/lib/python2.7/dist-packages/Flask-0.8-py2.7.egg/flask/app.py",
> line 1264, in full_dispatch_request
>
> rv = self.handle_user_exception(e)
>
> File
> "/usr/local/lib/python2.7/dist-packages/Flask-0.8-py2.7.egg/flask/app.py",
> line 1262, in full_dispatch_request
>
> rv = self.dispatch_request()
>
> File
> "/usr/local/lib/python2.7/dist-packages/Flask-0.8-py2.7.egg/flask/app.py",
> line 1248, in dispatch_request
>
> return self.view_functions[rule.endpoint](**req.view_args)
>
> File "/home/dmitrey/Install/hack2/numready/numready.py", line 20, in index
>
> pypy = read_all_numpy_funcs(sys.executable, 'numpypy')
>
> File "/home/dmitrey/Install/hack2/numready/_numready/process.py", line 21,
> in read_all_numpy_funcs
>
> assert not err
>
> AssertionError
>
> Well, it doesn't matter essentially, from the code I just see it parses
> dir(numpypy) and doesn't provide information on the funcs been worked on,
> thus maybe my own efforts to port a func will be just a waste of time,
> because someone other will make it done before me.

I guess the main point why it does that is that it can be fully
automatic. It's impossible to keep track manually marking those
functions.

>
> So, I've tried today's nightly build;
> functions ravel, flatten and where, that are extremely important (they occur
> very often) are unimplemented yet;

that's correct, also noone is working on them at the moment.

>
> Extremely important function dot for matrix multiplication has very strange
> behavior:
>
>>>>> np.dot(np.ones((2,4)),np.array([1,2,3,4]))
> 20.0
> CPython result:
>>>> np.dot(np.ones((2,4)),np.array([1,2,3,4]))
> array([ 10.,  10.])

that's indeed buggy.

>
> I haven't tested any further, it already enough to make a sad conclusion
> about current numpypy progress and quality.

Not sure how you make conclusions about quality, but noone ever said
that the entire numpy is implemented.

> In either way, I would like to
> have possibility to contribute some funcs, what should I do? Can I obtain
> git edit rights (or you're using something else, like mercury or svn?)

We use mercurial. Either create a branch (like a fork on bitbucket) or
create a bug tracker issues (bugs.pypy.org) with a diff. Right now
work is only being done on indexing by arrays.

> Also, I would like to stay tuned or even participate in numpypy discussion,
> but mail list already has high flow wrt JIT backends and other info that has
> no interest to me, I guess reading it is only a waste of time for many other
> PyPy-numpy users. Is it possible to create other mail list, e.g. PyPy-Math,
> for discussion of numpy, scipy ports and other related info?

I think pypy-dev is sufficiently low volume to skip unrelated
discussions if you don't like them, don't you think?

Cheers,
fijal


More information about the pypy-dev mailing list