By John Robinson, Software Consultant, Software Sustainability Institute.
Forest Growth SRC predicts the yield of woody biomass that could grow on an area of land, with an eye to producing biofuels. After successfully harnessing supercomputing to increase throughput by 18 times, the team behind Forest Growth SRC have secured stimulus funding which will allow them to seek a full research grant to develop the software further and ensure its continued use in the future.
Forest Growth SRC was developed jointly by the Centre for Biological Sciences at the University of Southampton and Forest Research, the research arm of the UK Forestry Commission. The project's co-ordinator, Prof Gail Taylor, approached the Software Sustainability Institute as part of Open Call looking for help to improve the software.
Results in a fraction of the time
The Forest Growth SRC model simulates the physiological, biophysical and physical processes that affect the growth of short-rotation coppice willow and poplar. One execution of the model calculates the predicted yield based on a combination of more than thirty input variables, such as soil composition, climatic factors and the growth characteristics of the trees themselves. However, Prof Taylor's team were encountering research-limiting issues with scalability. Although each execution of the model takes only a few seconds, modelling an area the size of the UK (at 1km2 resolution) takes almost 200,000 iterations - which would tie up a high spec PC for almost two days. Varying the inputs, or increasing the geographical range, led to further problems, so something had to be done to make calculation times reasonable.
With expertise from the Institute's Open Call, Forest Growth SRC harnessed the power of the University of Southampton's Supercomputing Facility (IRIDIS4), which is the most powerful academic supercomputer in England. The Institute provided expertise to port Windows-targeted Fortran and C++ source code to run on Linux, and developed a supporting framework to allow the orchestration of large-scale runs of parallel model executions via IRIDIS4's PBS/Torque resource manager. The result was an average 18-fold increase in job throughput, reducing the total execution time for a whole UK modelling run to just 2.5 hours. This has opened completely new vistas of opportunity for Forest Growth SRC, such as modelling at a continental level, at higher resolutions and for a wider range of climate scenarios.
Porting the legacy source code from Windows PCs to run on a Linux cluster revealed the existence of several, potentially conflicting, versions of the Forest Growth SRC source code. This was quickly resolved but brought the issue of reproducibility of results to the fore. As with all scientific software, the algorithms underlying the Forest Growth SRC model and their implementations evolve which can cause conflicts.
The first step towards better reproducibility was to bring the disparate Fortran, C++ and Java codebases under version control in a Subversion repository, hosted by the University of Southampton. Source revision control allows all changes to be tracked and attributed, and ensures that the precise version of the code used in a publication is known and accessible. New, user friendly, build and deployment processes were put in place allowing the scientists to concentrate on their science rather than wrangling code.
The future of Forest Growth SRC
Building on the progress made with the Institute, Prof Taylor has successfully attracted seed funding from the University of Southampton's Research Collaboration Stimulus Fund. The aim of the fund is to pump prime interdisciplinary science and enterprise research projects that will lead to the development of a full research grant with the involvement of an industrial partner. This will support work to improve the usability of Forest Growth SRC, lowering the barrier to entry and opening it to a wider audience of researchers and industrial partners.