Thrust vs CUDPP

cuda, cudpp, thrust

Solution

I have used both for sorting and prefix sums about a year ago (with CUDA 4.1, but I can't remember the versions of Thrust and CUDPP) and I experienced that CUDPP is a little bit faster but Thrust is easier to use (using float-array with about 20M entries).

As for the features, as far as I can recall, you can use Thrust also with host memory not only with device memory (as opposed to CUDPP), but this might be outdated.

Problem

For using data parallel algorithms on the GPU with CUDA there are two standard libraries, CUDPP and Thrust, which implement sorting, reduction , prefix sum etc. So what are the main differences between the libraries, in terms of performance and features ?

Original source