Skip to main content

Monte-Carlo Simulation-Based Financial Computing on the Maxwell FPGA Parallel Machine

  • Chapter
  • First Online:
Book cover High-Performance Computing Using FPGAs

Abstract

Efficient computational solutions for scientific and engineering problems are a priority for many governments around the world, as they can offer major economic comparative advantages. Financial computing problems are a prime example of such problems where even the slightest improvements in execution times and latency can generate large amounts of extra profits. However, financial computing has not benefited relatively greatly from early developments in high performance computing, as the latter aimed mainly at engineering and weapon design applications. Besides, financial experts were initially focusing on developing mathematical models and computer simulations in order to comprehend the behavior of financial markets and develop risk-management tools. As this effort progressed, the complexity of financial computing applications grew up rapidly. Hence, high performance computing turned out to be very important in the field of finance.Many financial models do not have a practical closed-form solution in which case numerical methods are the only alternative. Monte-Carlo simulation is one of the most commonly used numerical methods, in financial modeling and scientific computing in general, with huge computation benefits in solving problems where closed-form solutions are impossible to derive. As the Monte-Carlo method relies on the average result of thousands of independent stochastic paths, massive parallelism can be harnessed to accelerate the computation. For this, high performance computers, increasingly with off-the-shelf accelerator hardware, are being proposed as an economic high performance implementation platform for Monte-Carlo-based simulations. Field programmable gate arrays (FPGAs) in particular have been recently proposed as a high performance and relatively low power acceleration platform for such applications.In light of the above, the project presented in this chapter develops novel FPGA hardware architectures for Monte-Carlo simulations of different types of financial option pricing models, namely European, Asian, and American options, the stochastic volatility model (GARCH model), and Quasi-Monte Carlo simulation. These architectures have been implemented on an FPGA-based supercomputer, called Maxwell, developed at the University of Edinburgh, which is one of the few openly available FPGA parallel machines in the world. Maxwell is a 32-CPU cluster augmented with 64 Virtex-4 Xilinx FPGAs connected in a 2D torus. Our hardware implementations all show significant computing efficiency compared to traditional software-based implementations, which in turn shows that reconfigurable computing technology can be an efficacious and efficient platform for high performance computing applications, particularly financial computing.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 219.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 279.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 279.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    TeraFlop/sec is an acronym meaning 1012 floating point operations per second.

  2. 2.

    An SMP is a computer system that has two or more processors connected in the same cabinet, managed by one operating system, sharing the same memory, and having equal access to input/output devices.

  3. 3.

    A European option gives its holder the right to buy (a call option) or sell (a put option) an underlying asset at a particular fixed price (called Strike price) on a certain maturity date.

  4. 4.

    Asian options are a special type of options where the strike price is the average price of the underlying asset over a period of time and not a fixed strike price as in European options.

  5. 5.

    Unlike European options, American options can be exercised at any date up to the maturity date.

  6. 6.

    Actually, the LSMC algorithm uses only the paths which are in the money. Hence, the number of row of X should be less than 4096. However, the memory size on FPGA is fixed, so we exclude the paths which are not in the money when doing the matrix multiplication. So the number of row of X can still be seemed as 4096.

References

  1. J. Dongarra, Trends in high performance computing: a historical overview and examination of future developments. IEEE Circ. Dev. Mag. 22, 22–27 (2006)

    Article  Google Scholar 

  2. P. Marsh, High performance horizons. Comput. Contr. Eng. J. 42–48 (2004)

    Google Scholar 

  3. S.A. Zenios, High-performance computing in finance: the last 10 years and the next. Parallel Comput. 25, 2149–2175 (1999)

    Article  Google Scholar 

  4. J.C. Hull, Option, Futures, and Other Derivatives, 4th edn. (Prentice Hall, Upper Saddle River, 2000)

    Google Scholar 

  5. G.L. Zhang, et al., Reconfigurable acceleration for Monte Carlo based financial simulation, in Proceedings. 2005 IEEE International Conference on Field-Programmable Technology, 2005, pp. 215–222

    Google Scholar 

  6. D. B. Thomas, et al., Hardware architectures for Monte-Carlo based financial simulations, in FPT 2006. IEEE International Conference on Field Programmable Technology, 2006, pp. 377–380

    Google Scholar 

  7. G.W. Morris, M. Aubury, Design space exploration of the european option benchmark using hyperstreams, in FPL 2007. International Conference on Field Programmable Logic and Applications, 2007, pp. 5–10

    Google Scholar 

  8. Q. Jin, et al., Exploring reconfigurable architectures for binomial-tree pricing models. Lect. Note Comput. Sci. 245–255 (2008)

    Google Scholar 

  9. A.R. Choudhury, et al., Optimizations in financial engineering: The Least-Squares Monte Carlo method of Longstaff and Schwartz, in IPDPS 2008. IEEE International Symposium on Parallel and Distributed Processing, 2008, pp. 1–11

    Google Scholar 

  10. I.L. Dalal, et al., Low discrepancy sequences for Monte Carlo simulations on reconfigurable platforms, in International Conference on Application-Specific Systems, Architectures and Processors, 2008, pp. 108–113

    Google Scholar 

  11. N.A. Woods, T. VanCourt, FPGA acceleration of quasi-Monte Carlo in finance, in FPL 2008. International Conference on Field Programmable Logic and Applications, 2008, pp. 335–340

    Google Scholar 

  12. J.H.C. Yeung, et al., Map-reduce as a programming model for custom computing machines, in FCCM ‘08. 16th International Symposium on Field-Programmable Custom Computing Machines, 2008, pp. 149–159

    Google Scholar 

  13. D.-U. Lee, et al., A hardware Gaussian noise generator using the Box-Muller method and its error analysis. IEEE Trans. Comput. 55, 659–671 (2006)

    Article  Google Scholar 

  14. D.-U. Lee, et al., A hardware Gaussian noise generator using the Wallace method, in IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2005, pp. 911–920

    Google Scholar 

  15. D.-U. Lee, et al., A hardware Gaussian noise generator for channel code evaluation, in FCCM 2003. 11th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2003, pp. 69–78

    Google Scholar 

  16. D.-U. Lee, et al., A Gaussian noise generator for hardware-based simulations. IEEE Trans. Comput. 1523–1534 (2004)

    Google Scholar 

  17. R. Baxter, et al., Maxwell - a 64 FPGA Supercomputer, in AHS 2007. Second NASA/ESA Conference on Adaptive Hardware and Systems, 2007, pp. 287–294

    Google Scholar 

  18. R. Baxter, et al., The FPGA high-performance computing alliance parallel toolkit, in AHS 2007. Second NASA/ESA Conference on Adaptive Hardware and Systems, Edinburgh, 2007

    Google Scholar 

  19. M. Snir, S. Otto, MPI-The Complete Reference. (MIT Press, Cambridge, MA, 1998)

    Google Scholar 

  20. SUN. Sun ONE Grid Engine Administration and User’s Guide [Online]. Available: http://www.sun.com

  21. J.E. Gentle, Random Number Generation and Monte Carlo Methods, 2nd edn. (Springer, New York, 2003)

    MATH  Google Scholar 

  22. R.C. Tausworthe, Random numbers generated by linear recurrence modulo two. Math. Comput. 19, 201–209 (1965)

    Article  MATH  MathSciNet  Google Scholar 

  23. M. Matsumoto, T. Nishimura, Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator. ACM Trans. Model. Comput. Simulat. 8, 3–30 (1998)

    Article  MATH  Google Scholar 

  24. P. Bratley, et al., Implementation and tests of low-discrepancy sequences. ACM Trans. Model. Comput. Simulat. 2, 195–213 (1992)

    Article  MATH  Google Scholar 

  25. P. Jäckel, Monte Carlo Methods in Finance (Wiley, New York, 2002)

    Google Scholar 

  26. K. Entacher, et al., Defects in parallel Monte Carlo and quasi-Monte Carlo in tegration using the leap-frog technique. Int. J. Parallel Emergent Distributed 18, 13–26 (2003)

    MATH  MathSciNet  Google Scholar 

  27. G.E.P. Box, M.E. Muller, A note on the generation of random normal deviates. Ann. Math. Stat. 29, 610–611 (1958)

    Article  MATH  Google Scholar 

  28. O. Mencer, et al., Parameterized function evaluation for FPGAs, in Proceedings of the 11th International Conference on Field-Programmable Logic and Applications, 2001, pp. 544–554

    Google Scholar 

  29. O. Mencer, W. Luk, Parameterized high throughput function evaluation for FPGAs. J. VLSI Signal Process. 36, 17–25 (2004)

    Google Scholar 

  30. J.-C. Duan, The garch option pricing model. Math. Finance 5, 13–32 (1995)

    Article  MATH  MathSciNet  Google Scholar 

  31. F.A. Longstaff, E.S. Schwartz, Valuing American options by simulation: a simple least-squares approach. Rev. Financ. Stud. 14, 113–147 (2001)

    Article  Google Scholar 

  32. Nvidia, NVIDIA CUDA Compute Unified Device Architecture Programming Guide, 2.0 edn. (NVIDIA Corporation, 2008)

    Google Scholar 

  33. Intel. Intel Math Kernel Library Reference Manual [Online]

    Google Scholar 

  34. Intel. Intel Math Kernel Library Vector Statistical Library Notes [Online]. Available: http://developer.intel.com/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiang Tian .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer Science+Business Media, LLC

About this chapter

Cite this chapter

Tian, X., Benkrid, K. (2013). Monte-Carlo Simulation-Based Financial Computing on the Maxwell FPGA Parallel Machine. In: Vanderbauwhede, W., Benkrid, K. (eds) High-Performance Computing Using FPGAs. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-1791-0_2

Download citation

  • DOI: https://doi.org/10.1007/978-1-4614-1791-0_2

  • Published:

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4614-1790-3

  • Online ISBN: 978-1-4614-1791-0

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics