11 plus ones
Shared publicly•View activity
View 3 previous comments
- Yes, we've been talking to the authors of Theano (and Cython) because there are overlapping ideas. Building adjoint codes is definitely something that could be done. That's a good project idea.Aug 16, 2012
- It feels like there is a lot of duplicated effort in this domain. PyPy, Cython, Numba, Theano have major overlaps in their tool chains. Wouldn't it be better if they could plug into each other's parts?
For instance, Numba's Python-to-LLVM translation seems to be mostly reinventing stuff that the RPython toolchain has been doing for years. It's true that it's not easy to use it for anything other than building PyPy, but I believe it is fixable.Aug 16, 2012
- Indeed. I've been telling the PyPy guys for years that they need to make their code more re-usable, and we've even tried to use it some, but their goals are different enough that you can't really re-use any of their code in something like Numba. You can only re-use the ideas. As far as Theano, Cython, and Numba go we can definitely cooperate (and are as best we can) --- witness minivect which Mark Florrison (who is on the Numba team) has contributed. But, keep in mind, that cooperating on things like this can be tricky because of different expectations of the user-experience and ideas of what is easy versus what is hard.
There is absolutely duplicated effort, though, across a whole swath of tools... You haven't even brought up ctypes, cffi, swig, instant, weave, f2py, fwrap, cwrap, not to mention shedskin, and nuitka. I don't expect this to abate -- in fact, I think it's a healthy sign.Aug 16, 2012
- Well, the PyPy guys seem now open to the idea of making their toolchain available outside of PyPy - they do want to split rpython from pypy. And I believe that the toolchain is already flexible enough to support Numba's goal, it's just a small matter (ahem...) of hooking into it appropriately.Aug 16, 2012
- http://jakevdp.github.com/blog/2012/08/08/memoryview-benchmarks/#comment-620302670). Assuming that it's real, do you have a theory of where it might come from?In response to the 2x speed-up of numba over cython (Aug 16, 2012
- , thanks for sharing the post. I just wrote a Fortran version (see my new comment on the blog for a link), which is 2x faster than Cython. The reason is quite simple in my experience --- Fortran as a language makes it easy for the compilers to optimize such loops. Gfortran (that I used) usually isn't the best, IFort typically is even better. However, if numba can be as fast as Fortran, that would be very good indeed!Aug 16, 2012