Phi and Kepler Run Monte Carlo Race

By Nicole Hemsoth

September 18, 2013

There have been a number of efforts lately to help delineate the differences between performance, portability and functionality on GPUs over the new Xeon Phi coprocessors, with some organizations benchmarking according to industry-specific algorithms.

This week we spoke with Jörg Lotze, CTO and cofounder of financial services-driven software firm, Xcelerit, about benchmarking accelerators, coprocessors, and multicore architectures with specific emphasis on how GPUs stack up against Intel Xeon Phi coprocessors. Lotze discussed the challenges and opportunities of each in the context of real-world Monte Carlo examples.

Jörg Lotze: I come from a research background in telecommunications engineering before we started Xcelerit. It sounds like a completely different field, but we were facing similar problems to what we’re seeing now in finance. It’s all about making fast real-time processing in various different bits of hardware. During that kind of research, we played around with the IBM Cell processor, with GPUs, with even embedded processors of all sorts, in order to make fast software radio implementations in that context and that’s where all this experience came from. That’s also how the idea for this company and this tool came about.

All these techniques and things learned there, we quickly realized that they can be applied in an industrial context in a completely different field. And that’s what we are focusing on now. We are providing software for finance that allows quantitative analysts to implement their algorithms and focus on their algorithms and we take care to automatically get the benefit of all this high-performance hardware without the users having to worry about all these low-level implementation details, so in a sense it makes it possible for quants to write fast software, which is easy to maintain, and benefit from these really interesting new hardwares.

HPCwire: So we’re going to get to your findings about the comparisons in a minute, but first it’s important to note that you tested this across a couple of different types algorithms. Will you set us up on why this is important for this benchmark?

Lotze: Yes, so for any benchmark, it’s always important to see it in context, you can’t just answer the question of which one is better generically. Here because our clients are in finance mostly, we looked at two algorithms, which are often occurring in the financial world and and we picked two, which have different characteristics.

he first one is an embarrassingly parallel Monte Carlo for pricing swaption portfolio. Embarrassingly parallel in a sense all the Monte Carlo parts are completely parallel, there literally are no sequential bits.

The second is for processing American options using a Monte Carlo technique as well, but here those paths are not independent. Each time step needs some regression computed over the whole path in order to go back to the previous one. We don’t have independent paths here and we have an iterative component, which is not good for parallelism in general, so it’s really a different characteristic. That’s why we picked those two different applications.

HPCwire: These are representative algorithms across all of financial services, right?

Lotze: Yes, in finance pricing, Monte Carlo is the dominant American technique, and American-style options are around a lot, and the other one as well, so it represents a large set of common pricing methods.

HPCwire: It’s a very real world context here. To get to the hardware side of this, you ran your tests using Xeon Phi, NVIDIA’s Tesla K20-X, and “Sandy Bridge” for a point of comparison – can you set us up on the hardware side now?

Lotze: We’ve been using the brand-new Xeon Phi as an accelerator processor, an accelerator processor that just came out this year and it’s basically massively parallel – it has 60 cores, 4x hyper-threaded, so you end up having 240 hardware threads that you can exploit. And it’s a wide vector unit, so it’s for highly parallel number-crunching. The same can be said for the Tesla GPU, but this has been around for longer. Lots and lots of parallel units that should be kept busy for highly-parallel processing. It’s also a coprocessor. And of course, for comparison, we looked at a standard CPU which you can find in practically all servers, which is the Xeon “Sandy Bridge” generation – they are also multicore and they are very powerful – so it always makes sense to look at all three of those in relation and not just the Phi and the Tesla.

When you see those platforms, everybody just thinks about teraflops and how fast these are for compute capacity, but what’s equally important is how fast can it access its memory and how much time is spent getting the data into that memory. It’s always good to find the right balance between computing and memory, so if an application becomes compute bound, then yes you are going to get close to these teraflops that you see here. But that usually means for one memory access into a lot of instructions to make that work. So it’s always a balance between memory and computing instructions, and as soon as caching comes into play – which obviously is in place in all these platforms – this becomes a little bit unpredictable. So you never know if an application is really compute- or memory-bound before you put it to the test.

HPCwire: So what did you find in the context of these applications and the hardware-configuration that you set up?

Lotze: The first, the Monte Carlo, is also very compute-heavy and uses relatively little memory, so this is strongly compute-bound of all the platforms, which is ideal for the parallel processors like the Phi and the GPU. It can be seen here clearly. We got speedups of the Kepler GPU compared to sequential of 96x, and the Phi of like 45x, the parallel “Sandy Bridge” also got faster, nearly 20X faster.

You can clearly see that it’s case-variable for highly-parallel architectures.

HPCwire: In your conclusion section, you make a really good point, which I’ll read verbatim:

We’ve seen that there is one processor that needs to be added to the picture — the commodity multi-core CPU. This is already a part of many server configurations, and for some applications, e.g., Monte-Carlo pricing of American options, it can give better or comparable performance than an accelerator processor when optimized correctly. Between NVIDIA’s Kepler GPUs and Xeon Phi, the GPU wins for both of our test applications.

Lotze: Lots of people just think about those accelerative processors on their own, but they should always consider the parallel CPU as well. So here we have a 16-core “Sandy Bridge” system, and if it’s heavily optimized, it’s only about 2-and-a half-times slower than the Xeon Phi, and about 5X slower than the Tesla GPU. So all those massive speedups that I’ve just said is compared to sequential, but the parallel highly optimized “Sandy Bridge” can also get pretty fast. Now for this application, the first one, which is embarrassingly parallel, still there’s a huge benefit from using GPUs or the Xeon Phi for this. The main point for our conclusion is that the American Monte Carlo, which has an iterative step in it, so it’s not fully parallel, actually the “Sandy” Bridge is the fastest, or rather it’s about the same speed as the GPU. I think that’s kind of an interesting finding here, which tells you that you should consider all the platforms when you are comparing a specific algorithm.

HPCwire: You mentioned there were a lot of parallels between what you are doing here and telecommunications. Do you think that this same set of findings is going to be true for some other key markets in a very similar way and if so what are those? Where is this most relevant outside of financial services?

Lotze: I think it’s generally relevant. You shouldn’t just compare the GPU and the Phi, you should also put “Sandy Bridge” in the picture – that’s for sure. The other thing is it’s hard to tell in advance which one is going to be the best before you actually do testing because all these theoretical teraflops and memory bandwidth, doesn’t mean much for real applications. In general, I can see this working for oil and gas, biochemistry, and all these fields where high-performance computing is in use.

HPCwire: What are financial services firms actually doing? Would you say a lot of the work you are doing involves pretty vanilla configurations, lots of servers, not a lot of acceleration? How frequent is it that you find ultra-high performance accelerated systems in some of these firms?

Lotze: They are all looking a lot for high-performance systems, especially with the regulators coming in after the financial crisis. There has been a lot of added complexity to their risk computations for example, so now they need to do a lot more risk scenarios and have to compute new measures, and that’s across the whole portfolio of instruments that a bank has. You are talking about huge amount of data that needs to be priced for thousands of scenarios different contexts, and that’s usually in the Monte Carlo setup. You are looking at grids of hundreds of machines, running at 6-7 hours overnight and barely getting the work done, so this clearly a high-performance computing setup. I think what’s different with finance is that this is relatively new to them compared to oil and gas and physics. So they are just learning and there is not that crazy hardware expertise in all those different platforms and this is actually why we are there.

HPCwire: So you are saying that GPUs and coprocessors are still an experimental phase at a lot of financial services firms?

Lotze: No, I don’t say that – it’s become mainstream. A lot of banks have actually gone public, for example GP Morgan, about using large amounts of GPUs in their day-to-day real production process.  It’s not an experimental thing anymore – it’s really gone mainstream there.

HPCwire: One last question for you. Do you see this trend that you have in your benchmarks with GPUs being the real winner changing as the technology develops? On the processor front, there are some interesting things around the corner.

Lotze: These are just two specific applications. I’m sure there will be others where this picture changes and is different. It’s really just two points in the whole big space of applications. So this is not a general answer, and I think the Phi will be better for other applications. Also, the Phi only came out this year, and Tesla GPUs have been around since 2007, so the picture might change a little bit. So I don’t think there is a general answer. All these platforms are good for something and you just have to find out what is best for yours. What also needs to be considered is there’s a lot of optimizations that went into this. There’s a week’s worth of work to tune it like this to get these numbers, while most users in a real-world context, they don’t have the time to do this.

HPCwire: Let’s talk very briefly about the optimization comparison between optimizing for GPU and for Xeon Phi, which supposedly is easier to get up and running, but the optimization is still pretty lengthy. Is that your experience also?

Lotze: Yes, in general, yes.  But on both platforms, even on the GPU, it’s relatively quick to just have something running, but to get it fast on all these, and that includes the “Sandy Bridge” if you want to optimize it, it’s not easy to actually get the most out of the hardware. Those optimizations really take a good bit of expertise, and that’s also what our software development kit is trying to do so it automates those optimizations for users so they don’t need to worry about it. They can get one source code portably running on all these platforms, so they can see which one works best without hand-tuning everything. What also needs to be said is that all those optimizations make the code very specific to a specific hardware so the portability goes completely out the window, and that’s typically in a real-world context something that especially banks don’t want and I’m sure that in other fields it’s the same. Portability is quite important to them, so I doubt they will go down to that level of optimization that we see here.

HPCwire: This has been fascinating. Thank you for putting in the effort to compare both of these in the context of real-world applications.

Lotze: Thank you.

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industy updates delivered to you every week!

Nvidia Debuts Turing Architecture, Focusing on Real-Time Ray Tracing

August 16, 2018

From the SIGGRAPH professional graphics conference in Vancouver this week, Nvidia CEO Jensen Huang unveiled Turing, the company's next-gen GPU platform that introduces new RT Cores to accelerate ray tracing and new Tenso Read more…

By Tiffany Trader

HPC Coding: The Power of L(o)osing Control

August 16, 2018

Exascale roadmaps, exascale projects and exascale lobbyists ask, on-again-off-again, for a fundamental rewrite of major code building blocks. Otherwise, so they claim, codes will not scale up. Naturally, some exascale pr Read more…

By Tobias Weinzierl

STAQ(ing) the Quantum Computing Deck

August 16, 2018

Quantum computers – at least for now – remain noisy. That’s another way of saying unreliable and in diverse ways that often depend on the specific quantum technology used. One idea is to mitigate noisiness and perh Read more…

By John Russell

HPE Extreme Performance Solutions

Introducing the First Integrated System Management Software for HPC Clusters from HPE

How do you manage your complex, growing cluster environments? Answer that big challenge with the new HPC cluster management solution: HPE Performance Cluster Manager. Read more…

IBM Accelerated Insights

Super Problem Solving

You might think that tackling the world’s toughest problems is a job only for superheroes, but at special places such as the Oak Ridge National Laboratory, supercomputers are the real heroes. Read more…

NREL ‘Eagle’ Supercomputer to Advance Energy Tech R&D

August 14, 2018

The U.S. Department of Energy (DOE) National Renewable Energy Laboratory (NREL) has contracted with Hewlett Packard Enterprise (HPE) for a new 8-petaflops (peak) supercomputer that will be used to advance early-stage R&a Read more…

By Tiffany Trader

STAQ(ing) the Quantum Computing Deck

August 16, 2018

Quantum computers – at least for now – remain noisy. That’s another way of saying unreliable and in diverse ways that often depend on the specific quantum Read more…

By John Russell

NREL ‘Eagle’ Supercomputer to Advance Energy Tech R&D

August 14, 2018

The U.S. Department of Energy (DOE) National Renewable Energy Laboratory (NREL) has contracted with Hewlett Packard Enterprise (HPE) for a new 8-petaflops (peak Read more…

By Tiffany Trader

CERN Project Sees Orders-of-Magnitude Speedup with AI Approach

August 14, 2018

An award-winning effort at CERN has demonstrated potential to significantly change how the physics based modeling and simulation communities view machine learni Read more…

By Rob Farber

Intel Announces Cooper Lake, Advances AI Strategy

August 9, 2018

Intel's chief datacenter exec Navin Shenoy kicked off the company's Data-Centric Innovation Summit Wednesday, the day-long program devoted to Intel's datacenter Read more…

By Tiffany Trader

SLATE Update: Making Math Libraries Exascale-ready

August 9, 2018

Practically-speaking, achieving exascale computing requires enabling HPC software to effectively use accelerators – mostly GPUs at present – and that remain Read more…

By John Russell

Summertime in Washington: Some Unexpected Advanced Computing News

August 8, 2018

Summertime in Washington DC is known for its heat and humidity. That is why most people get away to either the mountains or the seashore and things slow down. H Read more…

By Alex R. Larzelere

NSF Invests $15 Million in Quantum STAQ

August 7, 2018

Quantum computing development is in full ascent as global backers aim to transcend the limitations of classical computing by leveraging the magical-seeming prop Read more…

By Tiffany Trader

By the Numbers: Cray Would Like Exascale to Be the Icing on the Cake

August 1, 2018

On its earnings call held for investors yesterday, Cray gave an accounting for its latest quarterly financials, offered future guidance and provided an update o Read more…

By Tiffany Trader

Leading Solution Providers

SC17 Booth Video Tours Playlist

Altair @ SC17


AMD @ SC17


ASRock Rack @ SC17

ASRock Rack



DDN Storage @ SC17

DDN Storage

Huawei @ SC17


IBM @ SC17


IBM Power Systems @ SC17

IBM Power Systems

Intel @ SC17


Lenovo @ SC17


Mellanox Technologies @ SC17

Mellanox Technologies

Microsoft @ SC17


Penguin Computing @ SC17

Penguin Computing

Pure Storage @ SC17

Pure Storage

Supericro @ SC17


Tyan @ SC17


Univa @ SC17


  • arrow
  • Click Here for More Headlines
  • arrow
Do NOT follow this link or you will be banned from the site!
Share This