English

Performance Portable Back-projection Algorithms on CPUs: Agnostic Data Locality and Vectorization Optimizations

Distributed, Parallel, and Cluster Computing 2021-04-28 v1

Abstract

Computed Tomography (CT) is a key 3D imaging technology that fundamentally relies on the compute-intense back-projection operation to generate 3D volumes. GPUs are typically used for back-projection in production CT devices. However, with the rise of power-constrained micro-CT devices, and also the emergence of CPUs comparable in performance to GPUs, back-projection for CPUs could become favorable. Unlike GPUs, extracting parallelism for back-projection algorithms on CPUs is complex given that parallelism and locality are not explicitly defined and controlled by the programmer, as is the case when using CUDA for instance. We propose a collection of novel back-projection algorithms that reduce the arithmetic computation, robustly enable vectorization, enforce a regular memory access pattern, and maximize the data locality. We also implement the novel algorithms as efficient back-projection kernels that are performance portable over a wide range of CPUs. Performance evaluation using a variety of CPUs from different vendors and generations demonstrates that our back-projection implementation achieves on average 5.2x speedup over the multi-threaded implementation of the most widely used, and optimized, open library. With a state-of-the-art CPU, we reach performance that rivals top-performing GPUs.

Keywords

Cite

@article{arxiv.2104.13248,
  title  = {Performance Portable Back-projection Algorithms on CPUs: Agnostic Data Locality and Vectorization Optimizations},
  author = {Peng Chen and Mohamed Wahib and Xiao Wang and Shinichiro Takizawa and Takahiro Hirofuchi and Hirotaka Ogawa and Satoshi Matsuoka},
  journal= {arXiv preprint arXiv:2104.13248},
  year   = {2021}
}

Comments

ACM International Conference on Supercomputing 2021 (ICS'21)

R2 v1 2026-06-24T01:33:59.626Z