Live data from Hacker News

PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

morepypy.blogspot.com

1–10 of 150 posts

Re: PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

#3
post #2

I am curious. Usually in numpy basic linear algebra are delegated to BLAS and potentially really fast if configured to use a fast BLAS implementation (OpenBLAS, MKL, etc). Does the numpy fork of PyPy use the same approach ?

yes, but BLAS only helps you with some operations and not others. In fact most of "basic" operations are still done "by hand" in some templated C in numpy. Additionally, doing vectorized operations lazily (which is not present right now in pypy but was at least considered in the past) yields great improvements.

Re: PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

#4
post #2

I am curious. Usually in numpy basic linear algebra are delegated to BLAS and potentially really fast if configured to use a fast BLAS implementation (OpenBLAS, MKL, etc). Does the numpy fork of PyPy use the same approach ?

yes. However the delegation only happens if you use the numpy.linalg module, or if numpy has chosen internally to call the numpy.linalg module (i.e. logic in numpy.dot will call out for large ndarrays)

Our vectorizing JIT can use SIMD semantics on all numpy looping calls. For instance, non-matrix multiply A*B or for ndarray + scalar calls

While many numpy users are in the habit of manipulating large square matrices, there is a significant number of users who use small arrays, or process RGB pixels

Re: PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

#5
Kudos to the pypy team! I suspect pypy would benefit from some kind of marketing campaign. It rarely lets me down and yet lots of python devs don't know about it.

The most popular package(s) that don't work with it have been numpy, scipy, etc. When I first encountered pypy, there was a numpypy and I wouldn't be surprised if that's different now. But bottom line, tons of python code out there needs more performance and has no dependency on numpy or any C extensions.

Re: PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

#6
post #5

Kudos to the pypy team! I suspect pypy would benefit from some kind of marketing campaign. It rarely lets me down and yet lots of python devs don't know about it. The most popular package(s) that don't work with it have been numpy, scipy, etc. When I first encountered pypy, there was a numpypy and I wouldn't be surprised if that's different now. But bottom line, tons of python code out there needs more performance an…

we're trying to address both numpy and C extensions, stay tuned ;-)

Re: PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

#8
post #5

Kudos to the pypy team! I suspect pypy would benefit from some kind of marketing campaign. It rarely lets me down and yet lots of python devs don't know about it. The most popular package(s) that don't work with it have been numpy, scipy, etc. When I first encountered pypy, there was a numpypy and I wouldn't be surprised if that's different now. But bottom line, tons of python code out there needs more performance an…

> But bottom line, tons of python code out there needs more performance and has no dependency on numpy or any C extensions.

What they need is nice JIT engines like PyPy and not to switch languages.

If no one invested in improving implementations for modern languages and switched to something lower level all the time, we would still be using Fortran for business applications.

Re: PyPy 4.0.0 Released – A Jit with SIMD Vectorization and More

#9
> We would also like to thank our contributors (7 new ones since PyPy 2.6.0) and encourage new people to join the project. PyPy has many layers and we need help with all of them

This doesn't match my experience of the PyPy project. I found a tiny bug in the stdlib matching against CPython, went into IRC to ask a question about test running to be sure I got it right and was quickly engaged in conversation about why I was running core tests. Next thing I know my small bug has been fixed by a core developer and my chance to contribute is gone.

I'll stick to being a user.

Post reply on HN