Citation:
IEEE Transactions on Nuclear Science, vol. 58, n. 5, october 2011. Pp. 2257-2263
ISSN:
0018-9499
DOI:
10.1109/TNS.2011.2158113
Sponsor:
This work was supported in part by AMIT Project funded by CDTI (CENIT Programme), UCM (Grupos UCM, 910059), CPAN (Consolider-Ingenio 2010, CSPD-2007-00042), RECAVA- RETIC network, Comunidad de Madrid (ARTEMIS S2009/DPI-1802), Ministerio de Ciencia e Innovación, Spanish Government (ENTEPRASE grant, PSE-300000-2009-5 and TEC2007-64731/TCM), and European Regional funds.
This work presents a graphics processing unit (GPU)-
based implementation of a fully 3-D PET iterative reconstruction
code, FIRST (Fast Iterative Reconstruction Software for [PET] Tomography),
which was developed by our group. We describe the
main steps foThis work presents a graphics processing unit (GPU)-
based implementation of a fully 3-D PET iterative reconstruction
code, FIRST (Fast Iterative Reconstruction Software for [PET] Tomography),
which was developed by our group. We describe the
main steps followed to convert the FIRST code (which can run on
several CPUs using the message passing interface [MPI] protocol)
into a code where the main time-consuming parts of the reconstruction
process (forward and backward projection) are massively parallelized
on a GPU. Our objective was to obtain significant acceleration
of the reconstruction without compromising the image
quality or the flexibility of the CPU implementation. Therefore,
we implemented a GPU version using an abstraction layer for the
GPU, namely, CUDA C. The code reconstructs images from sinogram
data, and with the same System Response Matrix obtained
from Monte Carlo simulations than the CPU version. The use of
memory was optimized to ensure good performance in the GPU.
The code was adapted for the VrPET small-animal PET scanner.
The CUDA version is more than 70 times faster than the original
code running in a single core of a high-end CPU, with no loss of
accuracy.[+][-]