XRT
XRT copied to clipboard
XRT crashes when accessed through both OpenCL and `xrt::`
AMD FPGA PCIe cards on Linux come with an OpenCL and XRT platform to control them. While probably nobody has ever tried, using SYCL on a machine will typically tries to use all the platforms and the devices available:
rkeryell@xsjsycl41:/var/tmp/rkeryell/SYCL/code$ $SYCL_HOME/llvm/build/bin/sycl-ls
[opencl:cpu:0] Intel(R) OpenCL, Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz 3.0 [2022.14.8.0.04_160000]
[opencl:acc:1] Intel(R) FPGA Emulation Platform for OpenCL(TM), Intel(R) FPGA Emulation Device 1.2 [2022.14.8.0.04_160000]
[opencl:gpu:2] AMD Accelerated Parallel Processing, gfx906:sramecc+:xnack- 2.0 [3486.0 (HSA1.1,LC)]
[opencl:acc:3] Xilinx, xilinx_u200_gen3x16_xdma_base_1 1.0 [1.0]
[ext_oneapi_cuda:gpu:0] NVIDIA CUDA BACKEND, Quadro P400 0.0 [CUDA 11.8]
[ext_oneapi_hip:gpu:0] AMD HIP BACKEND, AMD Radeon VII 0.0 [HIP 50322.6]
[xrt:acc:0] Xilinx XRT, xilinx_u200_gen3x16_xdma_base_1 0.0 [2.14.0]
Then an application using the platforms and releasing them will result in a crash.
A work around is to remove /etc/OpenCL/vendors/xilinx.icd to avoid OpenCL showing up and to focus on XRT only.