I am trying to understand how much room there is for usage FPGAs in financial applications. I am concerned that general purpose CPUs are catching up for parallel applications...so are there any areas where we can still use FPGAs?
I work for the New York Stock Exchange's technology wing at the moment. Our current thoughts on Field Programmable Gate Arrays are that they aren't worth switching to at (even though some people are seeing better latency results with them that with our current best solution). The reason for this is because our current solution is built to run on "standard" hardware. Although, in the world of finance, standard hardware can get very very complicated. FPGAs are fast being reigned in in terms of latency, and they aren't actually as robust in terms of deployment as people would like to think. For example, if you need a patch for software, often times you will need to reflash the machine. Are you latency sensitive? if so, how sensitive? is it imperative that you have the lowest latency possible?
We were looking at FPGAs at a large bank I worked at about 4 years ago, and I think the general feeling was that CUDA and nVidia etc was a better solution fit.
I believe it was due to the thought that FPGAs require a more niche skillset, I would imagine the fact that they could get GPU support from a large vendor like nVidia would also help.
Most of this is used for risk management and calculating VAR, Monte Carlo simulations etc.
Monte Carlo simulation is the most oft-cited example. This tends to be most relevant to quickly American pricing options, or anything that isn't easily done in closed-form.