  High-energy physics (HEP) experiments have developed millions of lines of
code over decades that are optimized to run on traditional x86 CPU systems.
However, we are seeing a rapidly increasing fraction of floating point
computing power in leadership-class computing facilities and traditional data
centers coming from new accelerator architectures, such as GPUs. HEP
experiments are now faced with the untenable prospect of rewriting millions of
lines of x86 CPU code, for the increasingly dominant architectures found in
these computational accelerators. This task is made more challenging by the
architecture-specific languages and APIs promoted by manufacturers such as
NVIDIA, Intel and AMD. Producing multiple, architecture-specific
implementations is not a viable scenario, given the available person power and
code maintenance issues.
  The Portable Parallelization Strategies team of the HEP Center for
Computational Excellence is investigating the use of Kokkos, SYCL, OpenMP,
std::execution::parallel and alpaka as potential portability solutions that
promise to execute on multiple architectures from the same source code, using
representative use cases from major HEP experiments, including the DUNE
experiment of the Long Baseline Neutrino Facility, and the ATLAS and CMS
experiments of the Large Hadron Collider. This cross-cutting evaluation of
portability solutions using real applications will help inform and guide the
HEP community when choosing their software and hardware suites for the next
generation of experimental frameworks. We present the outcomes of our studies,
including performance metrics, porting challenges, API evaluations, and build
system integration.
