Quantitative Finance Stack Exchange is a question and answer site for finance professionals and academics. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm benchmarking some software and am looking for cards that are better at parallel multiplication vs parallel addition.

  • Is there any prior work that may have this information?

  • What GPU features should I look for?

share|improve this question
These kind of "what infrastructure should I use" are heavily dependent on your application. – chrisaycock Dec 13 '12 at 14:15
What does "better at parallel multiplication vs parallel addition" mean? Do you want a card that multiplies faster than adds? – Alexey Kalmykov Dec 13 '12 at 21:31
@AlexeyKalmykov I've heard reports of some cards that are only parallel for addition, but block all streams when multiplying... throttling throughput – LamonteCristo Dec 13 '12 at 21:35
@makerofthings7 I don't know where you heard the addition/multiplication thing from, but it isn't true. Anyway, the Nvidia Tesla cards are quite fast and are well-supported, so that's what I'd go with unless I had a very specific reason to do otherwise. – Jack P. Dec 14 '12 at 19:51

That depends on your application, obviously. If you intend to run Matlab or Python on a single machine, and you're looking into which graphics card to buy, multiplication vs addition should not matter much.

I that situation I would recommend an Nvidia card which features CUDA. For CUDA, there are lot of libraries available which make it easy to adapt existing code to run on the GPU. Of course you can add more GPUs for more performance using SLI whatever your Card requires.

Mathworks has a nice overview that will help you getting started. For Python there is PyCUDA, but i have only very limited experience with that. For Java and C++ there are options as well, bu I've never used those.

The downside of all this is that your code will be less portable as you will need to use gpuArrays (in Matlab), so if someone without a CUDA-Configuration attempts to run the code, it will fail. I have yet to find an elegant way around this (!= my boss sitting at my desk...)

share|improve this answer

Your Answer


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.