I am running a computational expensive task on the GPU using OpenCL. This task requires many random numbers generated within each worker. Some of those random numbers are supposed to be uniformly generated within a certain interval, but some others have to be gaussian distributed around a (changing) value.
- Is there any library for this?
- If not, what's an easy way to implement such a thing?
So far I have been creating the random numbers in python and have them passed to OpenCL. However the bottleneck now is the transfer of those random numbers (at least an order of magnitude slower than the actual computations).