Partial evaluation applied to numerical computation
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Exact real arithmetic formulating real numbers as functions
Research topics in functional programming
Solving ordinary differential equations I (2nd revised. ed.): nonstiff problems
Solving ordinary differential equations I (2nd revised. ed.): nonstiff problems
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Advanced compiler design and implementation
Advanced compiler design and implementation
Science of Computer Programming - Special issue on mathematics of program construction
Specialization tools and techniques for systematic optimization of system software
ACM Transactions on Computer Systems (TOCS)
Experience report: a Haskell interpreter for cellML
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
Approaching cardiac modeling challenges to computer science with CellML-based web tools
Future Generation Computer Systems
A Posteriori Error Analysis for the Use of Lookup Tables in Cardiac Electrophysiology Simulations
SIAM Journal on Scientific Computing
Simulating drug-induced effects on the heart: from ion channel to body surface electrocardiogram
FIMH'11 Proceedings of the 6th international conference on Functional imaging and modeling of the heart
Hi-index | 0.00 |
Simulating the human heart is a challenging problem, with simulations being very time consuming---some can take days to compute even on high performance computing resources. There is considerable interest in optimisation techniques, with a view to making whole-heart simulations tractable. Reliability of heart model simulations is also of great concern, particularly considering clinical applications. Simulation software should be easily testable (against empirical data) and maintainable, which is often not the case with extensively hand-optimised software. Automating any optimisations will greatly improve this situation. This paper presents a framework for automatically optimising cardiac ionic cell models. An abstract format for such models, CellML [9], has been developed at Auckland University and is gaining in popularity. We utilise this format and investigate robust transformations of models that lead to reduced simulation times. In particular, we demonstrate that partial evaluation [13] is a promising technique for this purpose, and that it combines well with a lookup table technique, commonly used in cardiac modelling, which we have automated. In our tests, the technique of partial evaluation gives a speedup of 1.2 times. Further, applying such transformations prior to the lookup table optimisation results in additional speedups from the latter technique. When both optimisations are used we obtain nearly a 5-fold speedup, compared with a speedup of 1.7 times when lookup tables alone are used.