Accelerating Computational Finance Simulations; with OpenCL

a case study

More Info
expand_more

Abstract

Nowadays, we live in an era where high performance is in particular demand in a very broad variety of fields. For fulfilling these needs there is, a large selection of high performance computing platforms exists. These platforms vary in terms of architecture as well as their flexibility in terms of programming and programming models. Therefore, programmers need to be able qualify their needs and align them to the corresponding platform and tools. Computational finance is an area where being able to adapt to the constantly increasing amount of data, as well as reducing simulation times is a primary concern. Many computational finance applications, such as option pricing, algorithmic high frequency trading and risk management have their own HPC requirements. In this thesis, we investigate the computational requirements of a scenario based ALM application, which is part of a commercial product offered by Ortec-Finance. Also, we propose a novel OpenCL implementation, optimized for the Intel Xeon Phi co-processor. Further, we evaluate the performance portability of the proposed solution to other platforms such as a high-end CPU and an NVIDIA GPU. In general, with deploying simple optimization techniques we manage to achieve a speed-up up to 150x for Intel Xeon Phi, compared with the initial sequential implementation. Also, we prove that for our application, OpenCL yields significantly improved results in comparison with OpenMP on the Phi. In addition, we show that by following basic optimization guidelines, a certain level of performance can be preserved among different platforms (CPU, GPU, and Phi). Overall, our results show that our OpenCL ALM implementation is suitable for multiple accelerators, and it promises to yield significant performance improvements compared with current state-of-the-art implementations.