Specialising Simulator Generators for High-Performance Monte-Carlo Methods
General Material Designation
[Book]
First Statement of Responsibility
Gabriele Keller Affiliation: Programming Languages and Systems, School of Computer Science and Engineering, University of New South Wales,
GENERAL NOTES
Text of Note
This work was funded by the UNSW FRGP High Performance Parallel Computing for Complex Polymer Architecture Design.
SUMMARY OR ABSTRACT
Text of Note
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.
LIBRARY OF CONGRESS CLASSIFICATION
Class number
QA76
.
7
Book number
G337
9999
PERSONAL NAME - PRIMARY RESPONSIBILITY
Gabriele Keller Affiliation: Programming Languages and Systems, School of Computer Science and Engineering, University of New South Wales,
PERSONAL NAME - ALTERNATIVE RESPONSIBILITY
Christopher Barner-Kowollik Affiliation: Centre for Advanced Macromolecular Design, School of Chemical Sciences and Engineering, University of New South Wales,
Don Stewart Affiliation: Programming Languages and Systems, School of Computer Science and Engineering, University of New South Wales,
Gabriele Keller Affiliation: Programming Languages and Systems, School of Computer Science and Engineering, University of New South Wales,
Hugh Chaffey-Millar Affiliation: Centre for Advanced Macromolecular Design, School of Chemical Sciences and Engineering, University of New South Wales,
Manuel M T Chakravarty Affiliation: Programming Languages and Systems, School of Computer Science and Engineering, University of New South Wales,