A

ASTRA kernelkit: GPU-accelerated projectors for computed tomography using cupy

Applied Mathematics for Modern Challenges, vol. 2, pp. 70–92

Abstract

New computed tomography (CT) algorithms are commonly developed in high-level programming languages, such as Python or MATLAB, while low-level languages are used to support their computation-intensive operations. In the past decade, graphics processing units (GPUs) have become the de-facto standard for large parallel computations in areas such as computational imaging, image processing, and machine learning. Our fast-and-flexible CT reconstruction software, ASTRA Toolbox, therefore already implemented tomographic projectors, i.e., the core computational operations modeling the X-ray physics, using NVIDIA CUDA (Compute Unified Device Architecture), a low-level platform for computation on GPUs. However, the Python-C++ language barrier prevents high-level Python users from modifying these low-level projectors, and, as a consequence, research into new tomographic algorithms is more complex and time-consuming than necessary. With the ASTRA KernelKit, we lifted tomographic projectors to Python and leveraged CuPy, a numerical software like NumPy and SciPy that exposes CUDA to Python, to obtain a fine-grained control over their efficiency and implementation. In this article, we introduced our software and illustrated its importance for high-performance and data-driven applications using examples from deep learning, real-time X-ray CT, and kernel tuning.

Authors 4

  1. Adriaan Graas corresponding

    Centrum Wiskunde & Informatica

    Affiliation as printed

    Centrum Wiskunde & Informatica , Science Park 123 , 1098 XG , Amsterdam , The Netherlands

    Centrum Wiskunde & Informatica, Science Park 123, 1098 XG, Amsterdam, The Netherlands

  2. Leiden University

    Affiliation as printed

    Leiden Institute of Advanced Computer Science, Universiteit Leiden, Niels Bohrweg 1, 2333 CA, Leiden, The Netherlands

  3. Leiden University

    Affiliation as printed

    Leiden Institute of Advanced Computer Science, Universiteit Leiden, Niels Bohrweg 1, 2333 CA, Leiden, The Netherlands

  4. Felix F. Lucka corresponding

    Centrum Wiskunde & Informatica

    Affiliation as printed

    Centrum Wiskunde & Informatica, Science Park 123, 1098 XG, Amsterdam, The Netherlands

Cited by 2 stored of 2

2 results

No patents citing this paper on Lens.org (checked 2026-10-11).

References 46