Abstract
The rapid development of technologies and applications in recent years poses high demands and challenges for high-performance computing. Because of their competitive performance/price ratio, heterogeneous many-core architectures are widely used in high-performance computing areas. GPU and Xeon Phi are two popular general-purpose many-core accelerators. In this paper, we demonstrate how heterogeneous many-core architectures, powered by multi-core CPUs, CUDA-enabled GPUs and Xeon Phis can be used as an efficient computational platform to accelerate popular option pricing algorithms. In order to make full use of the compute power of this architecture, we have used a hybrid computing model which consists of two types of data parallelism: worker level and device level. The worker level data parallelism uses a distributed computing infrastructure for task distribution, while the device level data parallelism uses both the multi-core CPUs and many-core accelerators for fast option pricing calculation. Experiments show that our implementations achieve good performance and scalability on this architecture and also outperform other state-of-the-art GPU-based solutions for Monte Carlo European/American option pricing and BSDE European option pricing.








Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Zenios SA (1999) High-performance computing in finance: the last 10 years and the next. Parallel Comput 25(13):2149–2175
Li JX, Mullen GL (2000) Parallel computing of a quasi-Monte Carlo algorithm for valuing derivatives. Parallel Comput 26(5):641–653
Gerbessiotis AV (2004) Architecture independent parallel binomial tree option price valuations. Parallel Comput 30(2):301–316
Sak H, Özekici S, Bodurog İ et al (2007) Parallel computing in Asian option pricing. Parallel Comput 33(2):92–108
Arabnia HR, Bhandarkar SM (1996) Parallel stereocorrelation on a reconfigurable multi-ring network. J Supercomput 10(3):243–269
Wani MA, Arabnia HR (2003) Parallel edge-region-based segmentation algorithm targeted at reconfigurable multiring network. J Supercomput 25(1):43–62
Top500 supercomputer sites. https://www.top500.org/
Nvidia, CUDA downloads. https://developer.nvidia.com/cuda-downloads
POSIX threads tutorial. https://computing.llnl.gov/tutorials/pthreads
OpenMP tutorial. https://computing.llnl.gov/tutorials/openmp
MPI tutorial. https://computing.llnl.gov/tutorials/mpi
Glasserman P (2003) Monte Carlo methods in financial engineering, vol 53. Springer, Berlin
Bismut J-M (1973) Conjugate convex functions in optimal stochastic control. J Math Anal Appl 44(2):384–404
Black F, Scholes M (1973) The pricing of options and corporate liabilities. J Polit Econ 81:637–654
Peng S (2011) Backward stochastic differential equation, nonlinear expectation and their applications. In: Proceedings of the International Congress of Mathematicians, pp 393–432
Rezaeyan R, Farnoosh R (2010) Stochastic differential equations and application of the Kalman–Bucy filter in the modeling of RC circuit. Appl Math Sci 4(23):1119–1127
Cox JC, Ross SA, Rubinstein M (1979) Option pricing: a simplified approach. J Financ Econ 7(3):229–263
Longstaff FA, Schwartz ES (2001) Valuing American options by simulation: a simple least-squares approach. Rev Financ Stud 14(1):113–147
Choudhury AR, King A, Kumar S, Sabharwal Y (2008) Optimizations in financial engineering: the least-squares Monte Carlo method of Longstaff and Schwartz, In: IEEE International Symposium on Parallel and Distributed Processing, 2008. IPDPS 2008. IEEE, pp 1–11
Ganesan N, Chamberlain RD, Buhler J (2009) Acceleration of binomial options pricing via parallelizing along time-axis on a GPU. In: Proceedings of Symposium on Application Accelerators in High Performance Computing
Fatica M, Phillips E (2013) Pricing American options with least squares Monte Carlo on GPUs. In: Proceedings of the 6th Workshop on High Performance Computational Finance. ACM, p 5
Lee M, Jeon J, Bae J, Jang H-S (2009) Parallel implementation of a financial application on a GPU. In: Proceedings of the 2nd International Conference on Interaction Sciences: Information Technology, Culture and Human. ACM, pp 1136–1141
Surkov V (2010) Parallel option pricing with Fourier space time-stepping method on graphics processing units. Parallel Comput 36(7):372–380
Niramarnsakul C, Chongstitvatana P, Curtis M (2011)Parallelization of European Monte-Carlo options pricing on graphics processing units. In: 2011 Eighth International Joint Conference on Computer Science and Software Engineering (JCSSE). IEEE, pp 247–249
Zhang N, Roux A, Zastawniak T (2012) Parallel binomial American option pricing under proportional transaction costs. Appl Math 3:1795
Thulasiram RK, Dondarenko D (2002) Performance evaluation of parallel algorithms for pricing multidimensional financial derivatives. In: Proceedings of the International Conference on Parallel Processing Workshops, 2002. IEEE, pp 306–313
Huang K, Thulasiram RK (2005) Parallel algorithm for pricing American Asian options with multi-dimensional assets. IEEE, pp 177–185
Seghiouer H, Lidouh A, Nqi FZ (2011) Parallel Monte Carlo method for pricing Asian options using trapezium scheme. Appl Math Sci 5(31):1533–1547
Woods NA, VanCourt T (2008) FPGA acceleration of quasi-Monte Carlo in finance. In: International Conference on Field Programmable Logic and Applications, 2008. FPL 2008. IEEE, pp 335–340
De Schryver C, Shcherbakov I, Kienle F, Wehn N, Marxen H, Kostiuk A, Korn R (2011) An energy efficient FPGA accelerator for Monte Carlo option pricing with the Heston model. In: 2011 International Conference on Reconfigurable Computing and FPGAs (ReConFig). IEEE, pp 468–474
Peng Y, Gong B, Liu H, Dai B (2011) Option pricing on the GPU with backward stochastic differential equation. In: 2011 Fourth International Symposium on Parallel Architectures, Algorithms and Programming (PAAP). IEEE, pp 19–23
Dai B, Peng Y, Gong B (2010) Parallel option pricing with BSDE method on GPU. In: 2010 9th International Conference on Grid and Cooperative Computing (GCC). IEEE, pp 191–195
Abbas-Turki LA, Vialle S, Lapeyre B, Mercier P (2014) Pricing derivatives on graphics processing units using Monte Carlo simulation. Concurr Comput Pract Exp 26(9):1679–1697
Liu W, Schmidt B, Liu Y, Voss G, Muller-Wittig W (2011) Mapping of BLASTP algorithm onto GPU clusters. In: The 17th IEEE International Conference on Parallel and Distributed Systems (ICPADS 2011)
Misra S, Pamnany K, Aluru S (2014) Parallel mutual information based construction of whole-genome networks on the Intel Xeon Phi coprocessor. In: The 28th IEEE International Parallel and Distributed Processing Symposium, pp 241–250
Cooperman G (1995) STAR/MPI: binding a parallel library to interactive symbolic algebra systems. In: Proceedings of the 1995 International Symposium on Symbolic and Algebraic Computation. ACM, pp 126–132
Smith L, Bull M (2001) Development of mixed mode MPI/OpenMP applications. Sci Progr 9(2–3):83–98
Park N, Hong B, Prasanna VK (2003) Tiling, block data layout, and memory hierarchy performance. IEEE Trans Parallel Distrib Syst 14(7):640–654
Nvidia (2014) NVIDIA CUDA Compute Unified Device Architecture-Programming Guide. http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html
Bik AJ, Girkar M, Grey PM, Tian X (2002) Automatic intra-register vectorization for the Intel architecture. Int J Parallel Progr 30(2):65–98
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Zhang, S., Wang, Z., Peng, Y. et al. Mapping of option pricing algorithms onto heterogeneous many-core architectures. J Supercomput 73, 3715–3737 (2017). https://doi.org/10.1007/s11227-017-1968-z
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-017-1968-z