Communication-free and Parallel Simulation of Neutral Biodiversity Models

08/12/2021
by   Momo Langenstein, et al.
0

We present a novel communication-free algorithm for individual-based probabilistic neutral biodiversity simulations. The algorithm transforms a neutral Moran ecosystem model into an embarrassingly parallel problem by trading off inter-process communication at the cost of some redundant computation. Specifically, by careful design of the random number generator that drives the simulation, we arrange for evolutionary parent-child interactions to be modelled without requiring knowledge of the interaction, its participants, or which processor is performing the computation. Critically, this means that every individual can be simulated entirely independently. The simulation is thus fully reproducible irrespective of the number of processors it is distributed over. With our novel algorithm, a simulation can be (1) split up into independent batch jobs and (2) simulated across any number of heterogeneous machines - all without affecting the simulation result. We use the Rust programming language to build the extensible and statically checked simulation package . We evaluate our parallelisation approach by comparing three traditional simulation algorithms against a CPU and GPU implementation of our Independent algorithm. These experiments show that as long as some local state is maintained to cull redundant individuals, our Independent algorithm is as efficient as existing sequential solutions. The GPU implementation further outperforms all algorithms on the CPU by a factor ranging from ∼ 2 to ∼ 80, depending on the model parameterisation and the analysis that is performed. Amongst the parallel algorithms we have investigated, our Independent algorithm provides the only non-approximate parallelisation strategy that can scale to large simulation domains.

READ FULL TEXT
research
01/17/2022

A tool set for random number generation on GPUs in R

We introduce the R package clrng which leverages the gpuR package and is...
research
06/26/2017

Parareal Algorithm Implementation and Simulation in Julia

We present a full implementation of the parareal algorithm---an integrat...
research
04/13/2021

PAGANI: A Parallel Adaptive GPU Algorithm for Numerical

We present a new adaptive parallel algorithm for the challenging problem...
research
08/21/2017

Parallel solver for shifted systems in a hybrid CPU-GPU framework

This paper proposes a combination of a hybrid CPU--GPU and a pure GPU so...
research
06/24/2015

Ebb: A DSL for Physical Simulation on CPUs and GPUs

Designing programming environments for physical simulation is challengin...
research
06/25/2019

Parallel Performance of Algebraic Multigrid Domain Decomposition (AMG-DD)

Algebraic multigrid (AMG) is a widely used scalable solver and precondit...
research
05/08/2023

Multi-Objective Task Assignment and Multiagent Planning with Hybrid GPU-CPU Acceleration

Allocation and planning with a collection of tasks and a group of agents...

Please sign up or login with your details

Forgot password? Click here to reset