  Lattice QCD calculations require significant computational effort, with the
dominant fraction of resources typically spent in the numerical inversion of
the Dirac operator. One of the simplest methods to solve such large and sparse
linear systems is the conjugate gradient (CG) approach. In this work we present
an implementation of CG that can be executed on different devices, including
CPUs, GPUs, and FPGAs. This is achieved by using the SYCL/DPC++ framework,
which allows the execution of the same source code on heterogeneous systems.
