Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2364474.2364488acmconferencesArticle/Chapter ViewAbstractPublication PagesicfpConference Proceedingsconference-collections
research-article

An embedded DSL for stochastic processes: research article

Published: 15 September 2012 Publication History

Abstract

We present a domain specific language embedded in Haskell for specifying stochastic processes, called SPL;. It is designed with the goal of matching the notation used in mathematical finance, where the price of a financial contract is specified using stochastic processes and distributions.
SPL; is declarative in the sense that it is agnostic of the choice of discretization and of the computational model. We provide an implementation of SPL; that performs Monte Carlo simulation using GPGPU, and we present data indicating that this gives a 100x speedup compared to hand-written sequential C, and that the speedup scales linearly with the number of available cores.

References

[1]
F. Ametrano, L. Ballabio, M. Bianchetti, N. D. Césaré, D. Eddelbuettel, N. Firth, N. Jean, C. Kenyon, R. Lichters, M. Marchioro, K. Spanderen, and J. Wang. QuantLib. http://quantlib.org/index.shtml, 2011. URL http://quantlib.org/index.shtml.
[2]
M. M. T. Chakravarty. Converting a hoas term gadt into a de bruijn term gadt. http://www.cse.unsw.edu.au/~chak/haskell/term-conv/, 2009. URL http://www.cse.unsw.edu.au/~chak/haskell/term-conv/.
[3]
M. Erwig and S. Kollmansberger. Functional pearls: Probabilistic functional programming in haskell. J. Funct. Program., 16:21--34, January 2006. ISSN 0956-7968. URL http://portal.acm.org/citation.cfm?id=1114008.1114013.
[4]
M. Flænø Werk and J. Ahnfelt-Rønne. Pricing composable contracts using GPGPU. Master's thesis, Department of Computer Science, University of Copenhagen, 2011.
[5]
George and M. E. Muller. A note on the generation of random normal deviates. Ann. Math. Stat., 29(2):610--611, 1958.
[6]
A. Gill. Type-safe observable sharing in haskell. In Proceedings of the 2009 ACM SIGPLAN Haskell Symposium, Sept. 2009. URL http://www.ittc.ku.edu/csdl/fpg/sites/default/files/Gill-09-TypeSafeReification.pdf.
[7]
J. Hull. Options, futures and other derivatives. Prentice Hall finance series. Pearson/Prentice Hall, 2009. ISBN 9780136015864. URL http://books.google.com/books?id=sEmQZoHoJCcC.
[8]
S. P. Jones, J.-M. Eber, and J. Seward. Composing contracts: an adventure in financial engineering (functional pearl). In Proceedings of the fifth ACM SIGPLAN international conference on Functional programming, ICFP '00, pages 280--292, New York, NY, USA, 2000. ACM. ISBN 1-58113-202-6. 351267. URL http://doi.acm.org/10.1145/351240.351267.
[9]
Khronos OpenCLWorking Group. The OpenCL Specification, version 1.0.29, 8 December 2008. URL http://khronos.org/registry/cl/specs/opencl-1.0.29.pdf.
[10]
Simon, S. Marlow, and C. Elliott. Stretching the Storage Manager: Weak Pointers and Stable Names in Haskell. In Implementation of Functional Languages, pages 37--58, 1999. URL http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.34.1948.
[11]
D. B. Thomas. The MWC64X random number generator. http://www.doc.ic.ac.uk/~dt10/research/rngs-gpu-mwc64x.html, 2011. URL http://www.doc.ic.ac.uk/~dt10/research/rngs-gpu-mwc64x.html.

Cited By

View all
  • (2023)Embedding by UnembeddingProceedings of the ACM on Programming Languages10.1145/36078307:ICFP(1-47)Online publication date: 31-Aug-2023
  • (2020)ArbiterProceedings of the AAAI/ACM Conference on AI, Ethics, and Society10.1145/3375627.3375858(421-425)Online publication date: 7-Feb-2020
  • (2016)Design and GPGPU performance of Futhark's redomap constructProceedings of the 3rd ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming10.1145/2935323.2935326(17-24)Online publication date: 2-Jun-2016
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
FHPC '12: Proceedings of the 1st ACM SIGPLAN workshop on Functional high-performance computing
September 2012
110 pages
ISBN:9781450315777
DOI:10.1145/2364474
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 September 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. code generation
  2. embedded domain specific language
  3. gpgpu
  4. haskell
  5. monte-carlo simulation
  6. opencl
  7. stochastic processes

Qualifiers

  • Research-article

Conference

ICFP'12
Sponsor:

Acceptance Rates

Overall Acceptance Rate 18 of 25 submissions, 72%

Upcoming Conference

ICFP '25
ACM SIGPLAN International Conference on Functional Programming
October 12 - 18, 2025
Singapore , Singapore

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Embedding by UnembeddingProceedings of the ACM on Programming Languages10.1145/36078307:ICFP(1-47)Online publication date: 31-Aug-2023
  • (2020)ArbiterProceedings of the AAAI/ACM Conference on AI, Ethics, and Society10.1145/3375627.3375858(421-425)Online publication date: 7-Feb-2020
  • (2016)Design and GPGPU performance of Futhark's redomap constructProceedings of the 3rd ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming10.1145/2935323.2935326(17-24)Online publication date: 2-Jun-2016
  • (2016)FinParACM Transactions on Architecture and Code Optimization10.1145/289835413:2(1-27)Online publication date: 27-Jun-2016
  • (2014)Pension reserve computations on GPUsProceedings of the 3rd ACM SIGPLAN workshop on Functional high-performance computing10.1145/2636228.2636230(3-10)Online publication date: 3-Sep-2014

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media