Skip to main content.

cellml-opt - Domain-specific optimisation of CellML models

cellml-opt is a source-to-source compiler. It applies a combination of standard LLVM passes and domain-specific optimisations to the equation systems found in CellML models. Input and ouput are C files as generated by the CellML framework's C Code Generation Service.

cellml-opt was designed to serve as a preprocessor for the custom synthesis tool ODoST (developed by the Parallel and Reconfigurable Computing lab, University of Auckland) that generates fully-spatial and fully-pipelined FPGA-based accelerators for the continuous evaluation of a model's equation system. The basic idea is to lower the resource demand after RTL synthesis by aggressively eliminating redundant computations, and replacing expensive operations (area-wise) by cheaper ones.

For more details, please refer to the following publications:


cellml-opt is licensed under the Apache 2.0-License. See LICENSE.txt in the archive for more information.

Academic Work

If cellml-opt was helpful for your research, please cite us with the following paper:

Julian Oppermann, Andreas Koch, Ting Yu, Oliver Sinnen
Domain-specific Optimisation for the High-level Synthesis of CellML-based Simulation Accelerators
IEEE Proc. Intl. Conf. on Field Programmable Logic and Applications (FPL), London (UK), 09-2015 Paper FPL 2015


The latest public release is v0.1: