MSc Defense by Frederik Bøgelund Larsen

Title: Data-Parallel Implementation of Monte Carlo Based Financial Risk Calculations


Exploiting the increasing amounts of computational power available on modern parallel hardware is an ongoing research topic. The issue is to make parallel programming more accessible, maintainable and efficient for use in in the real world. Many solutions have been proposed, rang- ing from library support for existing mainstream programming languages, while outer solutions involve entirely new programming languages. In this thesis the Futhark programming language is examined, in the context of writing financial applications, which contain many compute-intensive problems that are inherently parallel, and can therefore benefit enormously in terms of performance, when executed in parallel. One such compute-intensive task is simulation of the financial market, in order to price products and calculate risk factors, in particular Monte Carlo simulation.

This thesis describes how a small Value-at-Risk (VaR) engine is created, using Futhark for Monte Carlo simulation, for pricing of financial products. Benchmarks for the resulting VaR-engine shows significant performance improvements when executed on parallel hardware, compared to sequential execution. Furthermore, this thesis argues that while Futhark shows promising results in terms of the complier technology, there are still some limitation in terms of expressiveness, and the programming model associated with the language and parallelism, that requires the user to have certain expertise and knowledge about parallel algorithms.

Supervisor: Martin Elsman