SYCL allows to write applications or accelerators that are functionally portable between FPGAs, CPUs and GPUs. For oneAPI, plugins by Codeplay allow to target NVIDIA and AMD GPUs and are installed on Noctua 2.
NVIDIA GPUs
For a simple SYCL application as described at https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedGuide.md, you can use the corresponding setup as follows.
ml fpga intel/oneapi-llvm system/CUDA clang++ -fsycl -fsycl-targets=nvptx64-nvidia-cuda simple-sycl-app.cpp -o simple-sycl-app-cuda ## execution requires a gpu node ./simple-sycl-app-cuda
Supported Version Combinations
oneAPI | CUDA |
---|---|
24.1.0, 24.0.0, 23.2.0, 23.1.0, 23.0.0 | >=12.0 |