Productively accelerating positron emission tomography image reconstruction on graphics processing units with Julia.
Saved in:
| Title: | Productively accelerating positron emission tomography image reconstruction on graphics processing units with Julia. |
|---|---|
| Authors: | Van Gendt, Michiel1 (AUTHOR), Besard, Tim2 (AUTHOR), Vandenberghe, Stefaan1 (AUTHOR), De Sutter, Bjorn1 (AUTHOR) |
| Source: | International Journal of High Performance Computing Applications. May2022, Vol. 36 Issue 3, p320-336. 17p. |
| Subjects: | Positron emission tomography, Image reconstruction, Programming languages, Image reconstruction algorithms, Graphics processing units, Scientific language, Diagnostic imaging |
| Abstract: | Research in medical imaging is hampered by a lack of programming languages that support productive, flexible programming as well as high performance. In search for higher quality imaging, researchers can ideally experiment with novel algorithms using rapid-prototyping languages such as Python. However, to speed up image reconstruction, computational resources such as those of graphics processing units (GPUs) need to be used efficiently. Doing so requires re-programming the algorithms in lower-level programming languages such as CUDA C/C++ or rephrasing them in terms of existing implementations of established algorithms in libraries. The former has a detrimental impact on research productivity and requires system-level programming expertise, and the latter puts severe constraints on the flexibility to research novel algorithms. Here, we investigate the use of the Julia scientific programming language in the domain of PET image reconstruction as a means to obtain both high performance (portability) on GPUs and high programmer productivity and flexibility, all at once, without requiring expert GPU programming knowledge. Using rapid-prototyping features of Julia, we developed basic and performance-optimized GPU implementations of baseline maximum likelihood expectation maximization (MLEM) positron emission tomography (PET) image reconstruction algorithms, as well as multiple existing algorithmic extensions. Thus, we mimic the effort that researchers would have to invest to evaluate the quality and performance potential of algorithms. We evaluate the obtained performance and compare it to state-of-the-art existing implementations. We also analyse and compare the required programming effort. With the Julia implementations, performance in line with existing GPU implementations written in the low-level, unproductive programming language CUDA C is achieved, while requiring much less programming effort, even less than what is needed for much less performant CPU implementations in C++. Switching to Julia as the programming language of choice can therefore boost the productivity of research into medical imaging and deliver excellent performance at a low cost in terms of programming effort. [ABSTRACT FROM AUTHOR] |
| Copyright of International Journal of High Performance Computing Applications is the property of Sage Publications Inc. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.) | |
| Database: | Engineering Source |
| FullText | Text: Availability: 0 |
|---|---|
| Header | DbId: egs DbLabel: Engineering Source An: 156915794 AccessLevel: 6 PubType: Academic Journal PubTypeId: academicJournal PreciseRelevancyScore: 0 |
| IllustrationInfo | |
| Items | – Name: Title Label: Title Group: Ti Data: Productively accelerating positron emission tomography image reconstruction on graphics processing units with Julia. – Name: Author Label: Authors Group: Au Data: <searchLink fieldCode="AR" term="%22Van+Gendt%2C+Michiel%22">Van Gendt, Michiel</searchLink><relatesTo>1</relatesTo> (AUTHOR)<br /><searchLink fieldCode="AR" term="%22Besard%2C+Tim%22">Besard, Tim</searchLink><relatesTo>2</relatesTo> (AUTHOR)<br /><searchLink fieldCode="AR" term="%22Vandenberghe%2C+Stefaan%22">Vandenberghe, Stefaan</searchLink><relatesTo>1</relatesTo> (AUTHOR)<br /><searchLink fieldCode="AR" term="%22De+Sutter%2C+Bjorn%22">De Sutter, Bjorn</searchLink><relatesTo>1</relatesTo> (AUTHOR) – Name: TitleSource Label: Source Group: Src Data: <searchLink fieldCode="JN" term="%22International+Journal+of+High+Performance+Computing+Applications%22">International Journal of High Performance Computing Applications</searchLink>. May2022, Vol. 36 Issue 3, p320-336. 17p. – Name: Subject Label: Subjects Group: Su Data: <searchLink fieldCode="DE" term="%22Positron+emission+tomography%22">Positron emission tomography</searchLink><br /><searchLink fieldCode="DE" term="%22Image+reconstruction%22">Image reconstruction</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+languages%22">Programming languages</searchLink><br /><searchLink fieldCode="DE" term="%22Image+reconstruction+algorithms%22">Image reconstruction algorithms</searchLink><br /><searchLink fieldCode="DE" term="%22Graphics+processing+units%22">Graphics processing units</searchLink><br /><searchLink fieldCode="DE" term="%22Scientific+language%22">Scientific language</searchLink><br /><searchLink fieldCode="DE" term="%22Diagnostic+imaging%22">Diagnostic imaging</searchLink> – Name: Abstract Label: Abstract Group: Ab Data: Research in medical imaging is hampered by a lack of programming languages that support productive, flexible programming as well as high performance. In search for higher quality imaging, researchers can ideally experiment with novel algorithms using rapid-prototyping languages such as Python. However, to speed up image reconstruction, computational resources such as those of graphics processing units (GPUs) need to be used efficiently. Doing so requires re-programming the algorithms in lower-level programming languages such as CUDA C/C++ or rephrasing them in terms of existing implementations of established algorithms in libraries. The former has a detrimental impact on research productivity and requires system-level programming expertise, and the latter puts severe constraints on the flexibility to research novel algorithms. Here, we investigate the use of the Julia scientific programming language in the domain of PET image reconstruction as a means to obtain both high performance (portability) on GPUs and high programmer productivity and flexibility, all at once, without requiring expert GPU programming knowledge. Using rapid-prototyping features of Julia, we developed basic and performance-optimized GPU implementations of baseline maximum likelihood expectation maximization (MLEM) positron emission tomography (PET) image reconstruction algorithms, as well as multiple existing algorithmic extensions. Thus, we mimic the effort that researchers would have to invest to evaluate the quality and performance potential of algorithms. We evaluate the obtained performance and compare it to state-of-the-art existing implementations. We also analyse and compare the required programming effort. With the Julia implementations, performance in line with existing GPU implementations written in the low-level, unproductive programming language CUDA C is achieved, while requiring much less programming effort, even less than what is needed for much less performant CPU implementations in C++. Switching to Julia as the programming language of choice can therefore boost the productivity of research into medical imaging and deliver excellent performance at a low cost in terms of programming effort. [ABSTRACT FROM AUTHOR] – Name: AbstractSuppliedCopyright Label: Group: Ab Data: <i>Copyright of International Journal of High Performance Computing Applications is the property of Sage Publications Inc. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.) |
| PLink | https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=156915794 |
| RecordInfo | BibRecord: BibEntity: Identifiers: – Type: doi Value: 10.1177/10943420211067520 Languages: – Code: eng Text: English PhysicalDescription: Pagination: PageCount: 17 StartPage: 320 Subjects: – SubjectFull: Positron emission tomography Type: general – SubjectFull: Image reconstruction Type: general – SubjectFull: Programming languages Type: general – SubjectFull: Image reconstruction algorithms Type: general – SubjectFull: Graphics processing units Type: general – SubjectFull: Scientific language Type: general – SubjectFull: Diagnostic imaging Type: general Titles: – TitleFull: Productively accelerating positron emission tomography image reconstruction on graphics processing units with Julia. Type: main BibRelationships: HasContributorRelationships: – PersonEntity: Name: NameFull: Van Gendt, Michiel – PersonEntity: Name: NameFull: Besard, Tim – PersonEntity: Name: NameFull: Vandenberghe, Stefaan – PersonEntity: Name: NameFull: De Sutter, Bjorn IsPartOfRelationships: – BibEntity: Dates: – D: 01 M: 05 Text: May2022 Type: published Y: 2022 Identifiers: – Type: issn-print Value: 10943420 Numbering: – Type: volume Value: 36 – Type: issue Value: 3 Titles: – TitleFull: International Journal of High Performance Computing Applications Type: main |
| ResultId | 1 |