# Specialising simulator generators for high-performance Monte-Carlo methods

Keller, G., Chaffey-Millar, H., Chakravarty, M. M. T., Stewart, D., & Barner-Kowollik, C.
(2007)
Specialising simulator generators for high-performance Monte-Carlo methods. In
*UNSPECIFIED*.

## Abstract

We address the tension between software generality and performance in the domain of simulations based on Monte-Carlo methods. We simultaneously achieve generality and high performance by a novel development methodology and software architecture centred around the concept of a specialising simulator generator. Our approach combines and extends methods from functional programming, generative programming, partial evaluation, and runtime code generation. We also show how to generate parallelised simulators. We evaluated our approach by implementing a simulator for advanced forms of polymerisation kinetics. We achieved unprecedented performance, making Monte-Carlo methods practically useful in an area that was previously dominated by deterministic PDE solvers. This is of high practical relevance, as Monte-Carlo simulations can provide detailed microscopic information that cannot be obtained with deterministic solvers. © Springer-Verlag Berlin Heidelberg 2008.

Impact and interest:

**Citation counts** are sourced monthly from **Scopus** and **Web of Science®** citation databases.

These databases contain citations from different subsets of available publications and different time periods and thus the citation count from each is usually different. Some works are not in either database and no count is displayed. Scopus includes citations from articles published in 1996 onwards, and Web of Science® generally from 1980 onwards.

Citations counts from the **Google Scholar™** indexing service can be viewed at the linked Google Scholar™ search.

ID Code: | 99152 |
---|---|

Item Type: | Conference Item (UNSPECIFIED) |

Refereed: | Yes |

Additional Information: | Conference code: 71287 Export Date: 5 September 2016 Correspondence Address: Keller, G.; Programming Languages and Systems, School of Computer Science and Engineering, University of New South WalesAustralia; email: keller@cse.unsw.edu.au References: Jones, N.D., Gomard, C.K., Sestoft, P., (1993) Partial Evaluation and Automatic Program Generation, , Prentice Hall International, Englewood Cliffs; Czarnecki, K., Eisenecker, U.W., (2000) Generative programming: Methods, tools, and applications, , ACM Press/Addison-Wesley; Veldhuizen, T.L., Gannon, D., Active libraries: Rethinking the roles of compilers and libraries (1998) Proc. of the SIAM Workshop on Object Oriented Methods for Inter-operable Scientific and Engineering Computing (OO; Frigo, M., Johnson, S.G., The design and implementation of FFTW3 (2005) Proceedings of the IEEE, 93 (2), pp. 216-231; Veldhuizen, T.L., Gannon, D., Active libraries: Rethinking the roles of compilers and libraries (1998) Proc. of the SIAM Workshop on Object Oriented Methods for Inter-operable Scientific and Engineering Computing (OO, , SIAM Press; Drache, M., Schmidt-Naake, G., Buback, M., Vana, P., (2004) Modeling RAFT polymerization kinetics via Monte Carlo methods: Cumyl dithiobenzoate mediated methyl acrylate polymerization, , Polymer; Tobita, H., Yanase, F., (2007) Monte Carlo simulation of controlled/living radical polymerization in emulsified systems, , Macromolecular Theory and Simulation; Chaffey-Millar, H., Stewart, D.B., Chakravarty, M., Keller, G., Barner-Kowollik, C., A parallelised high performance Monte Carlo simulation approach for complex polimerization kinetics (2007) Macromolecular Theory and Simulations, 16 (6), pp. 575-592; Robert, C., Casella, G., (2004) Monte Carlo Statistical Methods, , Springer, Heidelberg; Chaffey-Millar, H., Busch, M., Davis, T.P., Stenzel, M.H., Barner-Kowollik, C., (2005) Advanced computational strategies for modelling the evolution of full molecular weight distributions formed during multiarmed (star) polymerisations, 14; Pang, A., Stewart, D., Seefried, S., Chakravarty, M.M.T.: Plugging Haskell in. In: Proc. of the ACM SIGPLAN Workshop on Haskell, pp. 10-21. ACM Press, New York (2004)Wulkow, M.: Predici (2007), http://www.cit-wulkow.de/tbapred.htmWulkow, M., The simulation of molecular weight distributions in polyreaction kinetics by discrete galerkin methods (1996) Macromolecular Theory Simulation, 5; Whaley, R.C., Petitet, A., Dongarra, J.J., Automated empirical optimization of software and the ATLAS project (2001) Parallel Computing, 27 (1-2), pp. 3-35; Glenstrup, A.J.H.M., Secher, J.P., C-Mix-specialization of C programs (1999) Partial Evaluation: Practice and Theory; Consel, C., Hornof, L., Lawall, J.L., Marlet, R., Muller, G., Noy, J., Thibault, S., Volanschi, E.N., Tempo: Specializing systems applications and beyond (1998) ACM Computing Surveys, 30 (3). , September; Veldhuizen, T.L., (1999) C++ templates as partial evaluation, pp. 13-18. , Partial Evaluation and Semantic-Based Program Manipulation; Lu, J., Zhang, H., Yang, Y., Monte carlo simulation of kinetics and chain-length distribution in radical polymerization (1993) Macromolecular Theory and Simulation, 2, pp. 747-760; He, J., Zhang, H., Yang, Y., Monte carlo simulation of chain length distribution in radical polymerization with transfer reaction (1995) Macromolecular Theory and Simulation, 4, pp. 811-819; Prescott, S.W., Chain-length dependence in living/controlled free-radical polymerizations: Physical manifestation and Monte Carlo simulation of reversible transfer agents (2003) Macromolecules, 36, pp. 9608-9621 |

Keywords: | Microscopic information, Simulator generators, Codes (symbols), Functional programming, Monte Carlo methods, Partial differential equations, Software architecture |

ISBN: | 9783540774419 |

ISSN: | 03029743 |

Divisions: | Current > Schools > School of Chemistry, Physics & Mechanical Engineering Current > Institutes > Institute for Future Environments Current > QUT Faculties and Divisions > Science & Engineering Faculty |

Deposited On: | 22 Sep 2016 04:50 |

Last Modified: | 26 Sep 2016 05:02 |

Export: EndNote | Dublin Core | BibTeX

Repository Staff Only: item control page