News for hackers. Stuff that matters.
Re:NumbaPro CUDA Python speeds up a Monte Carlo pricer 14x by tdees40 on Thursday April 11, 2013 @11:55AM (#5532737)
Second that one. On these sort of problems it's not uncommon to see 100x+ speedups. My general experience is that just re-writing this in C++ instead of Numpy you'd see a >14x speedup, so I'm pretty unimpressed at this point.
Re:NumbaPro CUDA Python speeds up a Monte Carlo pricer 14x by sklam on Thursday April 11, 2013 @01:13PM (#5533308)
If you look at the profiler screenshot at the bottom of the page, the time spent in the cuRAND kernel (cyan) is ~2x longer than in the numbapro kernel (purple). Even if the numbapro kernel is written in CUDA-C and suppose it will be a lot faster, you still won't hit 100x speedup. In addition, all kernels are double-precision, the 100x speedup is more common for single-precision kernels.
Re:NumbaPro CUDA Python speeds up a Monte Carlo pricer 14x by jofer on Thursday April 11, 2013 @12:44PM (#5533083)
I'm be surprised if there was that large of a speedup going from a well-written numpy implementation to C/C++ (assuming a non-parallel implementation in both)...

In my experience, it's usually more like 2x-5x for a straight translation of the algorithm from numpy to C. (Though I have to confess that I often write rather naive C...)

Numpy performs quite well if you avoid a few common pitfalls. It certainly can be beat, but it's often faster than people think it is.

Re:NumbaPro CUDA Python speeds up a Monte Carlo pricer 14x by dagw on Friday April 12, 2013 @06:55AM (#5537737)
That matches my experience as well. I've never gotten more than a 3x speed up by doing a straight numpy->C rewrite on actual real world code (actually doing one right now, and I've gotten a 2x speed up after my first pass).
Re:NumbaPro CUDA Python speeds up a Monte Carlo pricer 14x by kisielk on Thursday April 11, 2013 @12:56PM (#5533179)
NumbaPro generates CUDA code that runs on the GPU. I don't see how using C++ to do it would necessarily make it faster as the code executing on the CPU end of things is not the bottleneck.
Re:NumbaPro CUDA Python speeds up a Monte Carlo pricer 14x by hendzen on Thursday April 11, 2013 @04:01PM (#5534408)
From my experience with CUDA/OpenCL, its easy to get a working algorithm that provides some speedup, but getting it to fully utilize the GPU takes some manual optimization.

Things like optimizing memory accesses to prevent bank conflicts, using per thread-group shared memory effectively to reduce global memory accesses are a bit tricky to get right, and I'm not sure how well auto-generated code would be able to do this.