skip to main content
research-article

An Optimized Hardware Architecture of a Multivariate Gaussian Random Number Generator

Published:01 December 2010Publication History
Skip Abstract Section

Abstract

Monte Carlo simulation is one of the most widely used techniques for computationally intensive simulations in mathematical analysis and modeling. A multivariate Gaussian random number generator is one of the main building blocks of such a system. Field Programmable Gate Arrays (FPGAs) are gaining increased popularity as an alternative means to the traditional general purpose processors targeting the acceleration of the computationally expensive random number generator block. This article presents a novel approach for mapping a multivariate Gaussian random number generator onto an FPGA by optimizing the computational path in terms of hardware resource usage subject to an acceptable error in the approximation of the distribution of interest. The proposed approach is based on the eigenvalue decomposition algorithm which leads to a design with different precision requirements in the computational paths. An analysis on the impact of the error due to truncation/rounding operation along the computational path is performed and an analytical expression of the error inserted into the system is presented. Based on the error analysis, three algorithms that optimize the resource utilization and at the same time minimize the error in the output of the system are presented and compared. Experimental results reveal that the hardware resource usage on an FPGA as well as the error in the approximation of the distribution of interest are significantly reduced by the use of the optimization techniques introduced in the proposed approach.

References

  1. Bouganis, C.-S., Park, S.-B., Constantinides, G. A., and Cheung, P. Y. K. 2009. Synthesis and optimization of 2d filter designs for heterogeneous FPGAs. ACM Trans. Reconfig. Technol. Syst. 1, 4, 1--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Box, G. E. P. and Muller, M. E. 1958. A note on the generation of random normal deviates. Annals Math. Stat. 29, 2, 610--611.Google ScholarGoogle ScholarCross RefCross Ref
  3. Chan, N. H. and Wong, H. Y. 2006. Simulation Techniques in Financial Risk Management. Wiley.Google ScholarGoogle Scholar
  4. Constantinides, G. A., Cheung, P. Y. K., and Luk, W. 2004. Synthesis and Optimization of DSP Algorithms. Kluwer Academic Publishers, Norwell, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Glasserman, P. 2004. Monte Carlo Methods in Financial Engineering. Springer.Google ScholarGoogle Scholar
  6. Glasserman, P. and Li, J. 2003. Importance sampling for portfolio credit risk. Manage. Sci. 51, 1643--1656.Google ScholarGoogle Scholar
  7. Glasserman, P., Heidelberger, P., and Shahabuddin, P. 2000. Variance reduction techniques for value-at-risk with heavy-tailed risk factors. In Proceedings of the 32nd Conference on Winter Simulation. 604--609. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Kaganov, A., Chow, P., and Lakhany, A. 2008. FPGA acceleration of Monte-Carlo based credit derivative pricing. In Proceedings of the IEEE International Conference on Field Programmable Logic and Applications. 329--334.Google ScholarGoogle Scholar
  9. Lee, D.-U., Luk, W., Villasenor, J. D., Zhang, G., and Leong, P. H. 2005. A hardware Gaussian noise generator using the Wallace method. IEEE Trans. VLSI Syst. 13, 911--920. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Lee, D.-U., Villasenor, J. D., Luk, W., and Leong, P. H. W. 2006. A hardware Gaussian noise generator using the Box-Muller method and its error analysis. IEEE Trans. Comput. 55, 6, 659--671. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Marsaglia, G. and Tsang, W. W. 2000. The ziggurat method for generating random variables. J. Statist. Softw. 5, 8, 1--7.Google ScholarGoogle ScholarCross RefCross Ref
  12. Press, W. H., Teukolsky, S. A., Vetterling, W. T., and Flannery, B. P. 1992. Numerical Recipes in C. Cambridge University Press.Google ScholarGoogle Scholar
  13. Saiprasert, C., Bouganis, C.-S., and Constantinides, G. A. 2008. Multivariate Gaussian random number generator targeting specific resource utilization in an FPGA. In Proceedings of the 4th International Workshop on Reconfigurable Computing (ARC’08). Springer-Verlag, 233--244. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Saiprasert, C., Bouganis, C.-S., and Constantinides, G. A. 2009. Word-length optimization and error analysis of a multivariate Gaussian random number generator. In Proceedings of the 5th International Workshop on Reconfigurable Computing (ARC’09). Springer-Verlag, 231--242. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Thomas, D. B. and Luk, W. 2008a. Credit risk modelling using hardware accelerated Monte-Carlo simulation. In Proceedings of the IEEE International Symposium on Field-Programmable Custom Computing Machines. 229--238. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Thomas, D. B. and Luk, W. 2008b. Multivariate Gaussian random number generation targeting reconfigurable hardware. ACM Trans. Reconfig. Technol. Syst. 1, 2, 1--29. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Thomas, D. B., Bower, J. A., and Luk, W. 2007. Automatic generation and optimization of reconfigurable financial Monte-Carlo simulations. In Proceedings of the IEEE International Conference on Application-Specific Systems Architectures and Processors. 168--173.Google ScholarGoogle Scholar
  18. Thomas, D. B., Luk, W., Leong, P. H., and Villasenor, J. D. 2007. Gaussian random number generators. ACM Comput. Surv. 39, 4, 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Thomas, D. B., Howes, L., and Luk, W. 2009. A comparison of CPUs, GPUs, FPGAs, and massively parallel processor arrays for random number generation. In Proceeding of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA’09). ACM, New York, 63--72. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Wallace, C. S. 1996. Fast pseudorandom generators for normal and exponential variates. ACM Trans. Math. Soft. 22, 1, 119--127. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Woods, N. A. and VanCourt, T. 2008. FPGA acceleration of quasi-Monte Carlo in finance. In Proceedings of the IEEE International Conference on Field Programmable Logic and Applications. 335--340.Google ScholarGoogle ScholarCross RefCross Ref
  22. Zhang, G., Leong, P. H., Lee, D.-U., Villasenor, J. D., Cheung, R. C., and Luk, W. 2005. Ziggurat-based hardware Gaussian random number generator. In Proceedings of the IEEE International Symposium on Field Programmable Logic and Applications. 275--280.Google ScholarGoogle Scholar

Index Terms

  1. An Optimized Hardware Architecture of a Multivariate Gaussian Random Number Generator

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!