2
votes

Can Thrust functions be made to use multiple-GPU's for their computations, if available? I have written this Thrust code which works just fine with a single GPU. (Tesla C2050) But I have three other Tesla C2050 cards attached to the machine which I would like to use for my computations.

I know that with multiple GPU's attached to a machine, I can run one CUDA kernel per GPU in parallel i,e, kernel 0 on device 0, kernel 1 on device 1, etc.. But in my case I would like to use all the 4 GPU's on a single thrust function invocation like say thrust::sort. Is this possible?

1

1 Answers

3
votes

Not Yet. But it is in Thrust's roadmap and you can express your wish in the Google group. https://github.com/thrust/thrust/wiki/Roadmap

https://github.com/thrust/thrust/issues/131

https://groups.google.com/forum/?hl=en&fromgroups=#!topic/thrust-users/qyP_oH7v58g

Also on the subject thinks Duane Merrill - the creator of the most rapid implementation of sorting (radix sort - b40c).