There is always a "need for speed" in software projects, whether it is the rate you deliver software systems or just the basic performance of the system itself. A conversation with one of our clients in 2006 led to an investigation into the emerging technologies in the "Accelerated Computing" domain, particularily, the potential for using Field Programmable Gate Arrays (FPGAs) and SIMD Array Processors for large financial applications such as pricing, risk metrics and auto-trading. e2x has an extremely strong technical background in the software and hardware aspects of computing as well as many years of experience in financial systems, making us the ideal partner to undertake this assessment.
There is somewhat of a crisis emerging in computational power in the The City. Over the last few years the demand for higher processing capacity for financial systems has increased rapidly. This has been driven by a combination of higher trading volumes, increasing exposures resulting in additional risk calculations, greater intro-day requirements and higher throughput demands for semi- and fully-automated electronic market trading systems. Current computing technology has kept pace but is beginning to reach its limits. As CPUs become more powerful in GFlops terms the demands for power and cooling rise at an exponential rate. Physical space in data centres is finite and the laws of physics and economics start limiting the computation power available. Consequently, some new approaches need to be considered to gain more speed within these same constraints.
e2x undertook a thorough review of the "Accelerated Computing" domain including FPGAs, hybrid supercomputers, high end graphics processors and double precision array processors; a summary of this review can be downloaded here. Ultimately, e2x built practical demonstrations using Celoxica/Xilinx and Clearspeed co-processor technologies for accelerating calculations in several Credit and Equity Derivatives systems. e2x believes that some of these technologies are ideal for certain problem types; indeed we demonstrate algorithmic acceleration of up 192 times improvement using hardware that generates about 30% of the heat output for a single modern CPU.
However, there is no magic bullet in "Accelerated Computing" technology: there is a "sweet spot" where these technologies pay-off with respect to speed, productivity, costs and power, but only with algorithms with certain characteristics. Outside of these characteristic constraints these technologies could be a very expensive red herrings. If you are interested in our experiences please contact us