The HECToR Service is now closed and has been superceded by ARCHER.

HPC implementation of Agent-Based Models for Cell Cultures

For Synthetic Biology, the capability to model complex networks of biochemical reactions over large populations of cells is vital. Models in this area are now employing agent-based techniques to capture the diversity in real cell cultures, however it is not possible to effectively model large bacterial populations on single core architectures due to the large memory requirements. A typical cell will require ~12 bytes of memory, thus a model with 1010 cells would need 96-100 GB of memory.

ABM is an agent-based implementation for the simulation of cell populations growth and is written in C. In this model, cells are allowed to grow according to a simple metabolic model. In modern laboratory conditions cells grow with a generation time shorter than the DNA replication time and so it is necessary to model overlapping rounds of DNA replication within a single generation. ABM can model cell growth within a reasonable time resolution, however the maximum number of cells is limited by the available memory.

The aim of this project will be to enable ABM to exploit the available memory on distributed HPC architectures and therefore increase the size and complexity of the model. This will be achieved by developing an MPI parallel implementation for ABM.

On completion of this project an MPI parallel version of the ABM model was successfully implemented:

  • A Master-Slave approach was used for the decomposition. The Master process handles the I/O operations and the cells on each slave process are then allowed to grow independently. The simulation continues until one of the processes reaches the maximum number of cells or the time limit is reached.
  • To validate the parallel implementation against the serial code, a simulation for 1000 time steps with 1024 initial cells was performed on the Zen cluster at the University of Exeter. To ensure that both calculations were performed in the same conditions the random numbers were replaced by parameters.
  • For two example simulations, one requiring 1GB and the other 10GB of memory, close to linear scalability was demonstrated with 12 and 24 cores respectively.
  • A typical run-time for a simulation of 1010 cells is now about 10 minutes wall-clock time when using 48 cores and 96GB of memory (4 dual hex-core 2.80GHz Intel Westmere nodes, each with 24GB RAM).
  • The newly developed parallel version of ABM allows the use of enough memory to simulate real systems, enabling new simulations with further complexity.

Please see PDF or HTML for a report which summarises this project.