An optimization approach for agent-based computational models of biological development

Pablo Gonzalez-de-Aledoa, Andrey Vladimirovd, Marco Mancab, Jerry Baughc, Ryo Asaid, Marcus Kaisere,f, Roman Bauerf,e

a Software Performance Optimization Group, Imperial College London, London, United Kingdom
b CERN Openlab, IT Department, CERN, Switzerland
c Intel Corporation, USA
d Colfax International, USA
e Interdisciplinary Computing and Complex BioSystems Research Group, School of Computing, Newcastle University, Newcastle upon Tyne, United Kingdom
f Institute of Neuroscience, Newcastle University, Newcastle upon Tyne, United Kingdom


A paper led by Pablo Gonzales-de-Aledo (Imperial College London) with contributions from his colleagues from CERN, Intel, Colfax and Newcastle University was published in the journal Advances in Engineering Software. This is a case study on performance optimization in a biological simulation code. The code presents a highly parallel implementation of a computer simulation that involves millions of agents interacting in a 3D environment. The paper explains the general approach to transforming a sequential code to run on modern, highly parallel architectures such as Intel’s Knights Landing, Broadwell, Sandy Bridge and AMD’s Opteron.

Full paper published in Advances in Engineering Software (Elsevier):

Pablo Aledo has also presented the optimization workflow in an MC² Series Webinar 005 (visit the page to watch the recording).

Editorial: Brain Development Simulation, Over 500x Faster

All human beings start their life as a single cell. As this cell divides, daughter cells can move and produce substances. These processes guide future generations of cells into differentiation and tissue formation. Out come the beating heart, the restless legs, the dextrous hands, and the inquisitive brain. The processes of cell division, proliferation, metabolism, differentiation, and clustering are complex. If something goes wrong due to genetic or biochemical factors, neurodevelopmental disorders arise. To quantify these processes is to get closer to treating diseases such as epilepsy, autism, and schizophrenia.

In 2015, Pablo González de Aledo Marugán contributed to this research when he produced one of the winning entries in the Intel Modern Code Developer Challenge. Pablo’s contribution is computational performance optimization in a brain development simulation code. The original code is a product of a collaboration between the CERN openlab and Newcastle University. It computes multiple stages of brain development on the level of individual cells. The code accepts genetic and biochemical factors as input. Then it simulates the collective, non-linear interactions between the cells. Through Pablo’s work in the contest, the computation was accelerated by a factor of 320x on a 1st-generation Intel Xeon Phi processor. The work invested into code optimization yields an even higher speedup of 595x on a 2nd-generation Intel Xeon Phi processor. This achievement opens new possibilities for computational biology research. For a multitude of other disciplines, it produces valuable recipes and advice on code modernization.

In his presentation in Modern Code Contributed talks (“MC² Series”), Pablo Aledo demonstrates the techniques that he applied to achieve the impressive speedup. Furthermore, he will show how his methods withstood the test of time. For the contest, he worked with Intel® Xeon Phi™ coprocessors (first generation, formerly Knights Corner). New tests revealed that the optimized code strengthened even further on newer processors. These include second-generation Intel® Xeon Phi™ processors (formerly Knights Landing) and Intel® Xeon® processors.