Cargando…

A distributed ASTRA toolbox

While iterative reconstruction algorithms for tomography have several advantages compared to standard backprojection methods, the adoption of such algorithms in large-scale imaging facilities is still limited, one of the key obstacles being their high computational load. Although GPU-enabled computi...

Descripción completa

Detalles Bibliográficos
Autores principales: Palenstijn, Willem Jan, Bédorf, Jeroen, Sijbers, Jan, Batenburg, K. Joost
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Springer International Publishing 2016
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5143361/
https://www.ncbi.nlm.nih.gov/pubmed/28018839
http://dx.doi.org/10.1186/s40679-016-0032-z
_version_ 1782472924477784064
author Palenstijn, Willem Jan
Bédorf, Jeroen
Sijbers, Jan
Batenburg, K. Joost
author_facet Palenstijn, Willem Jan
Bédorf, Jeroen
Sijbers, Jan
Batenburg, K. Joost
author_sort Palenstijn, Willem Jan
collection PubMed
description While iterative reconstruction algorithms for tomography have several advantages compared to standard backprojection methods, the adoption of such algorithms in large-scale imaging facilities is still limited, one of the key obstacles being their high computational load. Although GPU-enabled computing clusters are, in principle, powerful enough to carry out iterative reconstructions on large datasets in reasonable time, creating efficient distributed algorithms has so far remained a complex task, requiring low-level programming to deal with memory management and network communication. The ASTRA toolbox is a software toolbox that enables rapid development of GPU accelerated tomography algorithms. It contains GPU implementations of forward and backprojection operations for many scanning geometries, as well as a set of algorithms for iterative reconstruction. These algorithms are currently limited to using GPUs in a single workstation. In this paper, we present an extension of the ASTRA toolbox and its Python interface with implementations of forward projection, backprojection and the SIRT algorithm that can be distributed over multiple GPUs and multiple workstations, as well as the tools to write distributed versions of custom reconstruction algorithms, to make processing larger datasets with ASTRA feasible. As a result, algorithms that are implemented in a high-level conceptual script can run seamlessly on GPU-enabled computing clusters, up to 32 GPUs or more. Our approach is not limited to slice-based reconstruction, facilitating a direct portability of algorithms coded for parallel-beam synchrotron tomography to cone-beam laboratory tomography setups without making changes to the reconstruction algorithm.
format Online
Article
Text
id pubmed-5143361
institution National Center for Biotechnology Information
language English
publishDate 2016
publisher Springer International Publishing
record_format MEDLINE/PubMed
spelling pubmed-51433612016-12-23 A distributed ASTRA toolbox Palenstijn, Willem Jan Bédorf, Jeroen Sijbers, Jan Batenburg, K. Joost Adv Struct Chem Imaging Methodology While iterative reconstruction algorithms for tomography have several advantages compared to standard backprojection methods, the adoption of such algorithms in large-scale imaging facilities is still limited, one of the key obstacles being their high computational load. Although GPU-enabled computing clusters are, in principle, powerful enough to carry out iterative reconstructions on large datasets in reasonable time, creating efficient distributed algorithms has so far remained a complex task, requiring low-level programming to deal with memory management and network communication. The ASTRA toolbox is a software toolbox that enables rapid development of GPU accelerated tomography algorithms. It contains GPU implementations of forward and backprojection operations for many scanning geometries, as well as a set of algorithms for iterative reconstruction. These algorithms are currently limited to using GPUs in a single workstation. In this paper, we present an extension of the ASTRA toolbox and its Python interface with implementations of forward projection, backprojection and the SIRT algorithm that can be distributed over multiple GPUs and multiple workstations, as well as the tools to write distributed versions of custom reconstruction algorithms, to make processing larger datasets with ASTRA feasible. As a result, algorithms that are implemented in a high-level conceptual script can run seamlessly on GPU-enabled computing clusters, up to 32 GPUs or more. Our approach is not limited to slice-based reconstruction, facilitating a direct portability of algorithms coded for parallel-beam synchrotron tomography to cone-beam laboratory tomography setups without making changes to the reconstruction algorithm. Springer International Publishing 2016-12-07 2017 /pmc/articles/PMC5143361/ /pubmed/28018839 http://dx.doi.org/10.1186/s40679-016-0032-z Text en © The Author(s) 2016 Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
spellingShingle Methodology
Palenstijn, Willem Jan
Bédorf, Jeroen
Sijbers, Jan
Batenburg, K. Joost
A distributed ASTRA toolbox
title A distributed ASTRA toolbox
title_full A distributed ASTRA toolbox
title_fullStr A distributed ASTRA toolbox
title_full_unstemmed A distributed ASTRA toolbox
title_short A distributed ASTRA toolbox
title_sort distributed astra toolbox
topic Methodology
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5143361/
https://www.ncbi.nlm.nih.gov/pubmed/28018839
http://dx.doi.org/10.1186/s40679-016-0032-z
work_keys_str_mv AT palenstijnwillemjan adistributedastratoolbox
AT bedorfjeroen adistributedastratoolbox
AT sijbersjan adistributedastratoolbox
AT batenburgkjoost adistributedastratoolbox
AT palenstijnwillemjan distributedastratoolbox
AT bedorfjeroen distributedastratoolbox
AT sijbersjan distributedastratoolbox
AT batenburgkjoost distributedastratoolbox