GPU Acceleration of a Basket Option Pricing Engine
The Institute of Electronics, Communications and Information Technology (ECIT), Queen’s University Belfast, Belfast
The World Congress on Engineering, 2013
@inproceedings{trainor2013gpu,
title={GPU Acceleration of a Basket Option Pricing Engine},
author={Trainor, Sean and Crookes, Danny},
booktitle={Proceedings of the World Congress on Engineering},
volume={1},
year={2013}
}
One of the most important methods for pricing complex derivatives is Monte Carlo simulation. However, this method requires a large amount of computing resources for accurate estimates. Since Monte Carlo simulations used in derivatives pricing are often parallelisable, one way to reduce the computing time is to use GPUs, which allow many copies of the same process to be run in parallel with different data. This paper first presents a GPU implementation of a Basket Option pricing engine and an analysis of the timing and memory resources for different algorithm parameters. The results show that, on an NVidia GTX670 card using NVidia’s proprietary CUDA programming platform, a speedup of over 250 can sometimes be achieved compared with a sequential C implementation. To produce more portable code which will run on a range of different parallel architectures, OpenCL is becoming popular. However, users can be reluctant to adopt OpenCL in case they lose performance compared with an architecture-specific programming platform such as NVidia’s CUDA, particularly when high speed-ups are at stake. This paper secondly reports experiments which show that, all things being equal, the performance of OpenCL and CUDA implementations are within approximately 10% of each other, with the OpenCL implementation sometimes being the faster. This suggests that OpenCL is a viable programming platform for GPU acceleration of pricing engines, even when aiming for high speed-up factors of 100-300.
August 14, 2013 by hgpu