Aarhus University Seal / Aarhus Universitets segl

GPU accelerated simulation of channeling radiation of relativistic particles

Publikation: Bidrag til tidsskrift/Konferencebidrag i tidsskrift /Bidrag til avisTidsskriftartikelForskningpeer review

Standard

GPU accelerated simulation of channeling radiation of relativistic particles. / Nielsen, C. F.

I: Computer Physics Communications, Bind 252, 107128, 07.2020.

Publikation: Bidrag til tidsskrift/Konferencebidrag i tidsskrift /Bidrag til avisTidsskriftartikelForskningpeer review

Harvard

APA

CBE

MLA

Vancouver

Author

Bibtex

@article{a4b39ae6c49a47e58282dedfc63d7cae,
title = "GPU accelerated simulation of channeling radiation of relativistic particles",
abstract = "In this paper we describe and demonstrate a C++ code written to determine the trajectory of particles traversing oriented single crystals and a CUDA code written to evaluate the radiation spectra from charged particles with arbitrary trajectories. The CUDA/C++ code can evaluate both classical and quantum mechanical radiation spectra for spin 0 and 1/2 particles. We include multiple Coulomb scattering and energy loss due to radiation emission which produces radiation spectra in agreement with experimental spectra for both positrons and electrons. We also demonstrate how GPUs can be used to speed up calculations by several orders of magnitude. This will allow research groups with limited funding or sparse access to super computers to do numerical calculations as if it were a super computer. We show that one Titan V GPU can replace up to 100 Xeon 36 core CPUs running in parallel. We also show that choosing a GPU for a specific job will have great impact on the performance, as some GPUs have better double precision performance than others. Program summary: Program Title: Radiation From Charged Particles Penetrating Oriented Crystals Program Files doi: http://dx.doi.org/10.17632/zp9gskrbvg.1 Licensing provisions: MIT license Programming language: C++ and CUDA Nature of problem: Solving the problem of calculating the radiation spectrum emitted from charged particles penetrating oriented single crystals. Exact solutions are not possible analytically, but with Monte Carlo simulations we achieve the closest agreements with experiments. This problem is particularly difficult because of the amount of integrals needed to evaluate the entire radiation spectrum. Solution method: By moving the evaluation of each radiation integral to a thread on a GPU, we are able to parallelize the problem massively, and thereby decrease computation times by several orders of magnitude. Each thread in a Kernel call to the GPU then handles one integral. As Kernel calls can be queued, and the time to evaluate the trajectory of a particle is relatively long, each thread on the CPU evaluates its own trajectory and calls a kernel to evaluate the radiation from that specific particle. In this way we minimize the downtime of the GPU, as there will always be a few CPU threads with a Kernel call ready to be evaluated on the GPU.",
keywords = "Channeling, Crystal channeling, CUDA, Radiation, Radiation emission",
author = "Nielsen, {C. F.}",
year = "2020",
month = jul,
doi = "10.1016/j.cpc.2019.107128",
language = "English",
volume = "252",
journal = "Computer Physics Communications",
issn = "0010-4655",
publisher = "Elsevier BV",

}

RIS

TY - JOUR

T1 - GPU accelerated simulation of channeling radiation of relativistic particles

AU - Nielsen, C. F.

PY - 2020/7

Y1 - 2020/7

N2 - In this paper we describe and demonstrate a C++ code written to determine the trajectory of particles traversing oriented single crystals and a CUDA code written to evaluate the radiation spectra from charged particles with arbitrary trajectories. The CUDA/C++ code can evaluate both classical and quantum mechanical radiation spectra for spin 0 and 1/2 particles. We include multiple Coulomb scattering and energy loss due to radiation emission which produces radiation spectra in agreement with experimental spectra for both positrons and electrons. We also demonstrate how GPUs can be used to speed up calculations by several orders of magnitude. This will allow research groups with limited funding or sparse access to super computers to do numerical calculations as if it were a super computer. We show that one Titan V GPU can replace up to 100 Xeon 36 core CPUs running in parallel. We also show that choosing a GPU for a specific job will have great impact on the performance, as some GPUs have better double precision performance than others. Program summary: Program Title: Radiation From Charged Particles Penetrating Oriented Crystals Program Files doi: http://dx.doi.org/10.17632/zp9gskrbvg.1 Licensing provisions: MIT license Programming language: C++ and CUDA Nature of problem: Solving the problem of calculating the radiation spectrum emitted from charged particles penetrating oriented single crystals. Exact solutions are not possible analytically, but with Monte Carlo simulations we achieve the closest agreements with experiments. This problem is particularly difficult because of the amount of integrals needed to evaluate the entire radiation spectrum. Solution method: By moving the evaluation of each radiation integral to a thread on a GPU, we are able to parallelize the problem massively, and thereby decrease computation times by several orders of magnitude. Each thread in a Kernel call to the GPU then handles one integral. As Kernel calls can be queued, and the time to evaluate the trajectory of a particle is relatively long, each thread on the CPU evaluates its own trajectory and calls a kernel to evaluate the radiation from that specific particle. In this way we minimize the downtime of the GPU, as there will always be a few CPU threads with a Kernel call ready to be evaluated on the GPU.

AB - In this paper we describe and demonstrate a C++ code written to determine the trajectory of particles traversing oriented single crystals and a CUDA code written to evaluate the radiation spectra from charged particles with arbitrary trajectories. The CUDA/C++ code can evaluate both classical and quantum mechanical radiation spectra for spin 0 and 1/2 particles. We include multiple Coulomb scattering and energy loss due to radiation emission which produces radiation spectra in agreement with experimental spectra for both positrons and electrons. We also demonstrate how GPUs can be used to speed up calculations by several orders of magnitude. This will allow research groups with limited funding or sparse access to super computers to do numerical calculations as if it were a super computer. We show that one Titan V GPU can replace up to 100 Xeon 36 core CPUs running in parallel. We also show that choosing a GPU for a specific job will have great impact on the performance, as some GPUs have better double precision performance than others. Program summary: Program Title: Radiation From Charged Particles Penetrating Oriented Crystals Program Files doi: http://dx.doi.org/10.17632/zp9gskrbvg.1 Licensing provisions: MIT license Programming language: C++ and CUDA Nature of problem: Solving the problem of calculating the radiation spectrum emitted from charged particles penetrating oriented single crystals. Exact solutions are not possible analytically, but with Monte Carlo simulations we achieve the closest agreements with experiments. This problem is particularly difficult because of the amount of integrals needed to evaluate the entire radiation spectrum. Solution method: By moving the evaluation of each radiation integral to a thread on a GPU, we are able to parallelize the problem massively, and thereby decrease computation times by several orders of magnitude. Each thread in a Kernel call to the GPU then handles one integral. As Kernel calls can be queued, and the time to evaluate the trajectory of a particle is relatively long, each thread on the CPU evaluates its own trajectory and calls a kernel to evaluate the radiation from that specific particle. In this way we minimize the downtime of the GPU, as there will always be a few CPU threads with a Kernel call ready to be evaluated on the GPU.

KW - Channeling

KW - Crystal channeling

KW - CUDA

KW - Radiation

KW - Radiation emission

UR - http://www.scopus.com/inward/record.url?scp=85077383944&partnerID=8YFLogxK

U2 - 10.1016/j.cpc.2019.107128

DO - 10.1016/j.cpc.2019.107128

M3 - Journal article

AN - SCOPUS:85077383944

VL - 252

JO - Computer Physics Communications

JF - Computer Physics Communications

SN - 0010-4655

M1 - 107128

ER -