Cargando…
Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance
The contribution of this paper is to describe how we can program neuroimaging workflow using Make, a software development tool designed for describing how to build executables from source files. A makefile (or a file of instructions for Make) consists of a set of rules that create or update target f...
Autores principales: | , , , , , , , , , , , , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Frontiers Media S.A.
2016
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4735413/ https://www.ncbi.nlm.nih.gov/pubmed/26869916 http://dx.doi.org/10.3389/fninf.2016.00002 |
_version_ | 1782413073426939904 |
---|---|
author | Askren, Mary K. McAllister-Day, Trevor K. Koh, Natalie Mestre, Zoé Dines, Jennifer N. Korman, Benjamin A. Melhorn, Susan J. Peterson, Daniel J. Peverill, Matthew Qin, Xiaoyan Rane, Swati D. Reilly, Melissa A. Reiter, Maya A. Sambrook, Kelly A. Woelfer, Karl A. Grabowski, Thomas J. Madhyastha, Tara M. |
author_facet | Askren, Mary K. McAllister-Day, Trevor K. Koh, Natalie Mestre, Zoé Dines, Jennifer N. Korman, Benjamin A. Melhorn, Susan J. Peterson, Daniel J. Peverill, Matthew Qin, Xiaoyan Rane, Swati D. Reilly, Melissa A. Reiter, Maya A. Sambrook, Kelly A. Woelfer, Karl A. Grabowski, Thomas J. Madhyastha, Tara M. |
author_sort | Askren, Mary K. |
collection | PubMed |
description | The contribution of this paper is to describe how we can program neuroimaging workflow using Make, a software development tool designed for describing how to build executables from source files. A makefile (or a file of instructions for Make) consists of a set of rules that create or update target files if they have not been modified since their dependencies were last modified. These rules are processed to create a directed acyclic dependency graph that allows multiple entry points from which to execute the workflow. We show that using Make we can achieve many of the features of more sophisticated neuroimaging pipeline systems, including reproducibility, parallelization, fault tolerance, and quality assurance reports. We suggest that Make permits a large step toward these features with only a modest increase in programming demands over shell scripts. This approach reduces the technical skill and time required to write, debug, and maintain neuroimaging workflows in a dynamic environment, where pipelines are often modified to accommodate new best practices or to study the effect of alternative preprocessing steps, and where the underlying packages change frequently. This paper has a comprehensive accompanying manual with lab practicals and examples (see Supplemental Materials) and all data, scripts, and makefiles necessary to run the practicals and examples are available in the “makepipelines” project at NITRC. |
format | Online Article Text |
id | pubmed-4735413 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2016 |
publisher | Frontiers Media S.A. |
record_format | MEDLINE/PubMed |
spelling | pubmed-47354132016-02-11 Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance Askren, Mary K. McAllister-Day, Trevor K. Koh, Natalie Mestre, Zoé Dines, Jennifer N. Korman, Benjamin A. Melhorn, Susan J. Peterson, Daniel J. Peverill, Matthew Qin, Xiaoyan Rane, Swati D. Reilly, Melissa A. Reiter, Maya A. Sambrook, Kelly A. Woelfer, Karl A. Grabowski, Thomas J. Madhyastha, Tara M. Front Neuroinform Neuroscience The contribution of this paper is to describe how we can program neuroimaging workflow using Make, a software development tool designed for describing how to build executables from source files. A makefile (or a file of instructions for Make) consists of a set of rules that create or update target files if they have not been modified since their dependencies were last modified. These rules are processed to create a directed acyclic dependency graph that allows multiple entry points from which to execute the workflow. We show that using Make we can achieve many of the features of more sophisticated neuroimaging pipeline systems, including reproducibility, parallelization, fault tolerance, and quality assurance reports. We suggest that Make permits a large step toward these features with only a modest increase in programming demands over shell scripts. This approach reduces the technical skill and time required to write, debug, and maintain neuroimaging workflows in a dynamic environment, where pipelines are often modified to accommodate new best practices or to study the effect of alternative preprocessing steps, and where the underlying packages change frequently. This paper has a comprehensive accompanying manual with lab practicals and examples (see Supplemental Materials) and all data, scripts, and makefiles necessary to run the practicals and examples are available in the “makepipelines” project at NITRC. Frontiers Media S.A. 2016-02-02 /pmc/articles/PMC4735413/ /pubmed/26869916 http://dx.doi.org/10.3389/fninf.2016.00002 Text en Copyright © 2016 Askren, McAllister-Day, Koh, Mestre, Dines, Korman, Melhorn, Peterson, Peverill, Qin, Rane, Reilly, Reiter, Sambrook, Woelfer, Grabowski and Madhyastha. http://creativecommons.org/licenses/by/4.0/ This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) or licensor are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms. |
spellingShingle | Neuroscience Askren, Mary K. McAllister-Day, Trevor K. Koh, Natalie Mestre, Zoé Dines, Jennifer N. Korman, Benjamin A. Melhorn, Susan J. Peterson, Daniel J. Peverill, Matthew Qin, Xiaoyan Rane, Swati D. Reilly, Melissa A. Reiter, Maya A. Sambrook, Kelly A. Woelfer, Karl A. Grabowski, Thomas J. Madhyastha, Tara M. Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance |
title | Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance |
title_full | Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance |
title_fullStr | Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance |
title_full_unstemmed | Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance |
title_short | Using Make for Reproducible and Parallel Neuroimaging Workflow and Quality-Assurance |
title_sort | using make for reproducible and parallel neuroimaging workflow and quality-assurance |
topic | Neuroscience |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4735413/ https://www.ncbi.nlm.nih.gov/pubmed/26869916 http://dx.doi.org/10.3389/fninf.2016.00002 |
work_keys_str_mv | AT askrenmaryk usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT mcallisterdaytrevork usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT kohnatalie usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT mestrezoe usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT dinesjennifern usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT kormanbenjamina usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT melhornsusanj usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT petersondanielj usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT peverillmatthew usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT qinxiaoyan usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT raneswatid usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT reillymelissaa usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT reitermayaa usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT sambrookkellya usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT woelferkarla usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT grabowskithomasj usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance AT madhyasthataram usingmakeforreproducibleandparallelneuroimagingworkflowandqualityassurance |