GPUs Finding A New Role on Wall Street
Despite the carnage from this year’s financial crisis, the arms race in algorithmic trading is likely to continue. Behind that competition are a variety of high performance computing technologies, such as commodity clusters, FPGA accelerators and Blue Gene supercomputers. One of the new kids on Wall Street is GPU computing, a technology that is making inroads across nearly every type of HPC application. The vector processing capabilites of GPUs makes them especially well-suited to financial analytics.
A quantitative finance company that has jumped into GPU computing with both feet is Hanweck Associates LLC. The company works with institutions like brokerage firms, investment banks, and hedge funds to help them accelerate thier market data applications. Hanweck’s claim to fame is their early adoption of NVIDIA’s CUDA programming language and Tesla GPU computing platform for options analytics. The NVIDIA technology is the basis for Hanweck’s Volera product line, a financial analytics engine that is used for trading and risk management. The engine is the foundation for the company’s flagship products VoleraFeed and VoleraRisk.
Hanweck has a small team of in-house programmers that develops the software, with backgrounds ranging from the trading desk to academia. When the company started out, it was basically a quant consultancy, doing quantitative financial modeling for institutions that needed to develop debt equity valuation, market impact modeling and algorithmic trading. As they developed GPU expertise, they found a largely untapped niche for GPU middleware in financial analytics workloads.
The company has also expanded into a technology consultancy role, especially with regards to NVIDIA’s GPU computing platform. Gerald (Jerry) Hanweck, the company’s founder and principal partner, says his company has been involved in proof-of-concept project with some of the larger Wall Street firms. For example, they have a project underway to develop a mortgage analytics application for acquiring subprime mortgages. Part of the project will involve building the mortgage models around the GPU. Hanweck says they expect to realize a 100x speedup using GPUs compared to traditional CPUs. According to him, this type of experimentation is commonplace in Wall Street. He believes that most major financial institutions are exploring GPU computing at some level and many, if not all, have pilot projects in place.
While GPU performance is strongest in the single precision (32-bit) floating point, this turns out to be a good fit for financial analytics. Even though the second generation GPU computing devices will have double precision (64-bit) capability, single precision will continue to be much faster for the foreseeable future. Fortunately, you don’t need double precision for most types of numerical analysis, Hanweck explains. When 64-bit floating point became the default on CPUs, most developers just went along for the ride. “I think a lot of people got lazy over the years and took double precision for granted,” he says.
Hanweck saw the potential of the GPU acceleration in financial analytics early on, and started developing with an early version of CUDA back in February 2007. In addition to the NVIDIA technology, he also looked at FPGAs, the Cell processor and ATI’s (AMD’s) GPUs. The company even dabbled with PeakStream’s development platform (before Google bought them). According the Hanweck, nothing was as straightforward nor as well developed as NVIDIA’s CUDA-Tesla technology. And with the increasing volumes of data flowing through the financial markets and the pressure to execute trades first, Hanweck saw conventional CPU-based platforms falling behind the performance curve. “For the end user, speed is king right now,” he says.
One area where you see the data volumes overwhelming Moore’s Law CPU economics is market messaging. In the U.S. alone, there are currently about 300,000 options that trade over 3,500 stocks and indices. All the pricing data is fed into a service called OPRA — for Options Price Reporting Authority — and that data volume is taking off. “This year they expect to hit 1,000,000 messages per second,” says Hanweck. “My guess is they’ve already exceeded that.”
Hanweck remembers his stint at JPMorgan, when he was the firm’s chief equity derivatives strategist. He says in 2003 they only needed a relatively large system with conventional servers to do these options calculations. But more recently, investment banks have built much larger computing clusters or grids with many more racks of servers costing millions of dollars — and millions of dollars per year to run them. Hanweck says they can compress a system like that down to about 10U worth of rack space using NVIDIA Tesla-equipped servers.
At the datacenter of Hanweck partner ACTIV Financial Systems Inc., a couple of conventional servers are used to subscribe and publish the market data, while three NVIDIA Tesla S870-equipped servers are employed to process it. The S870 hold four 8-series GPUs, each capable of around 500 single precision gigaflops. With Hanweck’s VoleraFeed, a GPU-accelerated application that runs on top of a market feed appliance (like ACTIV’s), anytime a stock price changes, all of the options’ risks can be recomputed in under 10 milliseconds.
And that’s with the first generation GPU computing technology. When they upgrade to NVIDIA’s S1070 Tesla boards, they think they can cut that to less than 5 milliseconds. In fact, Hanweck says they’ve already tested an early version of the new device, which NVIDIA has assured them is slower than the production version. “Basically, we can cut our compute time in half just by upgrading our hardware,” says Hanweck. “It’s a lot easier to do that than to be a clever programmer.”
That statement harkens back to the 20th century experience of CPU-based computing, when applications automatically got a performance boost every time the chip vendors bumped up the processor clock speeds. With clock speeds more or less stagnant now and the promise of multicore CPU scalability still a pipe dream, the data parallelism offered by GPUs is one way at least some applications can jump back on the performance curve. The way Hanweck sees it, “from a technology standpoint, GPUs are going to change the way the world works.”