Reproducing the computational environments of experiments
Experiments increasingly rely on high-performance computing software. Differences in software environments can cause problems when those experiments need to be reproduced – so scientists at the MDC in Berlin are helping find a solution.
Reproducing experiments and results is a cornerstone of science, but researchers acknowledge that actually achieving this feat can be tricky. Specific experimental setups are usually the result of a lab's painstaking work and, in today's environment of high-throughput methods, are increasingly expensive. The fact that complex, customized sets of software are frequently involved in the analysis and interpretation of data makes it even more difficult to achieve true reproducibility.
Guix – a free software that is used to fully reproduce computational environments – might be part of the solution, says Ludovic Courtès of Inria, the French National Institute for computer science and applied mathematics in Bordeaux. To implement it he has joined forces with Ricardo Wurmus of the platform for bioinformatics and modeling at the the MDC's Berlin Institute of Medical Systems Biology (BIMSB), scientists from the Utrecht University Medical Center and a growing group of international colleagues.
Capturing complete computational environments
The National Science Foundation in the US and journals such as Nature are insisting that researchers share source code and support reproducibility. "The ability to reproduce an experiment depends – among other things – on the ability to reproduce the software environment," Courtès says. "That poses particular difficulties in the many cases which require high-performance computing (HPC) environments."
Guix is an outgrowth of a project called GNU launched almost 40 years ago at MIT in the USA. It makes up for some deficits of earlier efforts and is addressing several challenges: Users are no longer dependent on software package management by system administrators, empowering them to fully customize the environment to their needs. It also solves problems that arise when scientists draw on "container solutions," which Courtès compares to receiving a brand-new computer where everything has already been installed. "That works until you make a small modification in the experiment to test a new hypothesis – which often happens in the world of research!"
The advantage of Guix is how it characterizes software environments in unambiguous terms, similar to a mathematical function. It completely describes all its relations and thus can reproduce them bit-for-bit. This way, Guix facilitates both reproducibility and customizability.
Adapting Guix to scientists' needs
Guix was not originally designed for the high-performance computing environments required by today's experiments. So scientists at the MDC, Inria and the partner institutes are building functions that permit Guix to be used on a computing cluster, to implement reproducible workflows. They are also adding packages that were developed at each site.
"Before Guix, the installation of scientific software was necessarily ad-hoc," Wurmus says. "Groups would build their own software, statically link it into existing systems, and hope that it would never have to change – because managing software environments was virtually impossible. Now not only can we manage a single environment per group in a reliable fashion, but we use Guix at all levels: of the group, user, workflow and so on."
The project is scheduled to last two years, at which time its initiators hope to have met the software reproducibility needs of their institutions. "The wider objective," Courtès says, "is to convince others who rely on high-performance computing that Guix represents a major advance toward a fundamental goal in science."
The Max Delbrück Center for Molecular Medicine (MDC)
The Max Delbrück Center for Molecular Medicine in the Helmholtz Association (MDC) was founded in Berlin in 1992. It is named for the German-American physicist Max Delbrück, who was awarded the 1969 Nobel Prize in Physiology and Medicine. The MDC's mission is to study molecular mechanisms in order to understand the origins of disease and thus be able to diagnose, prevent and fight it better and more effectively. In these efforts, the MDC cooperates with the Charité – Universitätsmedizin Berlin and the Berlin Institute of Health (BIH) as well as with national partners such as the German Center for Cardiovascular Research and numerous international research institutions. More than 1,600 staff and guests from nearly 60 countries work at the MDC, just under 1,300 of them in scientific research. The MDC is funded by the German Federal Ministry of Education and Research (90 percent) and the State of Berlin (10 percent), and is a member of the Helmholtz Association of German Research Centers. http://www.mdc-berlin.de/