Take the 2-minute tour ×
Computational Science Stack Exchange is a question and answer site for scientists using computers to solve scientific problems. It's 100% free, no registration required.

Recently I started to get interested in GPU-computing. I am considering buying a GPU and am inclined to buy an NVIDIA GPU since this allows for coding in both OpenCL and CUDA. But is NVIDIA really the best brand and if so, what type of GPU should I consider buying. I am not looking for a high-end GPU, but for good value for money.

Thanks!

share|improve this question
add comment

2 Answers 2

In general, the AMD line of GPUs are faster for integer based calculations, whereas NVIDIA are faster for floating point.

NVIDIA also has CUDA (like Godric mentioned) which is a bit easier to work with, and has a very good library support, including cuBLAS, cuFFT and Thrust which make many things far easier to code.

CUDA is not itself faster than OpenCL, but NVIDIA cards typically perform better with a CUDA implementation than with an OpenCL one.

You can check the relevant benchmarks at Toms hardware charts, which will also give you an idea about performance/dollar.

share|improve this answer
add comment

CUDA is a non-trivial advantage for NVIDIA. Most of the benchmarks I have seen (ViennaCL Benchmarks for reference) show that CUDA does better than OpenCL by up to an order of magnitude. At the large problem sizes, the two are fairly comparable.

Also, NVIDIA has the advantage that no matter whether you end up using OpenCL or CUDA, you can very quickly upgrade yourself from 400-500 CUDA cores and 1 GB of VRAM at about \$150 up to 2500 cores and 12 GB of RAM at \$5000.

If you are just starting with GPU computing, I recommend starting in the GTX 500-600 range. It is enough to get your feet wet, and with the right problem/library you can beat i7 CPUs.

share|improve this answer
    
What kind of NVIDIA GPUs would be particularly suitable for GPU-computing? –  user20227 May 5 at 19:48
    
The GeForce GTX line are good, like I said the 500-600 series are resonably priced for what you get. I have personally worked with the 560 Ti and the 645. Note that the 580 in ViennaCL's benchmarks outperform my 645 slightly, so bigger numbers aren't necessarily better. And the AMD's aren't necessarily worse, its just that the NVIDIA cards give you more options as far as libraries. –  Godric Seer May 5 at 19:54
    
I can't comment on parallel computing, but a couple of months ago I built a new gaming rig and found that NVIDIA cards were a better deal than AMD Radeons. I couldn't even find an R9 in stock. This was apparently due to the pupularity in using AMD cards for mining scrypt-based cryptocurrencies, where they greatly outperform NVIDIA cards. Tom's April update said this has returned to normal, but I switched to NVIDIA because of this. –  Bratch May 5 at 22:07
    
That could be what LKlevin was discussing with AMD being better at integer calculations (which cryptocurrencies are based on). I have only used NVIDIA and happen to know that NVIDIA's high end cards go much higher than AMD's. At the consumer/gaming range, they are likely fairly comparable. –  Godric Seer May 5 at 22:24
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.