I use the C++ programming language with GCC on a GNU/Linux desktop. I am trying to implement
some PRAM parallel algorithms in C++. As I understand, with OpenMP on a multicore CPU more or less, helps to emulate CREW PRAM algorithms.
Many sophisticated PRAM algorithms, involve operations like parallel-prefix sum, sorting,
performing an element wise operation on a vector in global address space etc.
Somehow, after about 15 mins of Googling, there seem to be no libraries which provide this functionality, i.e. some out of the box basic parallel algorithms or data structures like the Standard Template Library.
Can anyone list any such libraries?
EDIT: What I need, essentially, is an OpenMP analogue to the Thrust Library which is used in
the CUDA world. http://thrust.github.com/
Thrust supports parallel execution on multicores through OpenMP or TBB as well as GPUs through CUDA. From the website:
Here’s some additional information on how to access Thrust’s multicore functionality.