Black-Scholes Option Pricing on Intel CPUs and GPUs: Implementation on SYCL and Optimization Techniques

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Panova, Elena, Volokitin, Valentin, Gorshkov, Anton, Meyerov, Iosif
Natura: Preprint
Pubblicazione: 2022
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866917718219816960
author Panova, Elena
Volokitin, Valentin
Gorshkov, Anton
Meyerov, Iosif
author_facet Panova, Elena
Volokitin, Valentin
Gorshkov, Anton
Meyerov, Iosif
contents The Black-Scholes option pricing problem is one of the widely used financial benchmarks. We explore the possibility of developing a high-performance portable code using the SYCL (Data Parallel C++) programming language. We start from a C++ code parallelized with OpenMP and show optimization techniques that are beneficial on modern Intel Xeon CPUs. Then, we port the code to SYCL and consider important optimization aspects on CPUs and GPUs (device-friendly memory access patterns, relevant data management, employing vector data types). We show that the developed SYCL code is only 10% inferior to the optimized C++ code when running on CPUs while achieving reasonable performance on Intel GPUs. We hope that our experience of developing and optimizing the code on SYCL can be useful to other researchers who plan to port their high-performance C++ codes to SYCL to get all the benefits of single-source programming.
format Preprint
id arxiv_https___arxiv_org_abs_2204_13740
institution arXiv
publishDate 2022
record_format arxiv
spellingShingle Black-Scholes Option Pricing on Intel CPUs and GPUs: Implementation on SYCL and Optimization Techniques
Panova, Elena
Volokitin, Valentin
Gorshkov, Anton
Meyerov, Iosif
Distributed, Parallel, and Cluster Computing
Mathematical Software
Performance
The Black-Scholes option pricing problem is one of the widely used financial benchmarks. We explore the possibility of developing a high-performance portable code using the SYCL (Data Parallel C++) programming language. We start from a C++ code parallelized with OpenMP and show optimization techniques that are beneficial on modern Intel Xeon CPUs. Then, we port the code to SYCL and consider important optimization aspects on CPUs and GPUs (device-friendly memory access patterns, relevant data management, employing vector data types). We show that the developed SYCL code is only 10% inferior to the optimized C++ code when running on CPUs while achieving reasonable performance on Intel GPUs. We hope that our experience of developing and optimizing the code on SYCL can be useful to other researchers who plan to port their high-performance C++ codes to SYCL to get all the benefits of single-source programming.
title Black-Scholes Option Pricing on Intel CPUs and GPUs: Implementation on SYCL and Optimization Techniques
topic Distributed, Parallel, and Cluster Computing
Mathematical Software
Performance
url https://arxiv.org/abs/2204.13740