SYCL program reports (possibly misdetected) failed OpenCL link on a Vega 56 using ROCm + Ubuntu 20.04
- Dominant language
- LLVM
- Stars
- 1.5k
- Forks
- 854
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 137
Description
This issue is currently outlined [here](https://github.com/RadeonOpenCompute/ROCm/issues/1108) in the ROCm repository. I have a program which uses sycl to offload compute, and I can very it works as expected on the host, and both the CPU (when using the Intel compute runtime) and an Intel iGPU using the Neo OpenCL drivers from the 20.04 repos. However, the program fails to run on a Vega 56 using ROCm 3.3.0 on Ubuntu 20.04 (which is not officially supported yet by ROCm). The end of the trace is as follows:
```
...
amd_comgr_do_action:
ActionKind: AMD_COMGR_ACTION_LINK_RELOCATABLE_TO_EXECUTABLE
IsaName: amdgcn-amd-amdhsa--gfx900
Options: ""
Path:
Language: AMD_COMGR_LANGUAGE_NONE
COMGR::InProcessDriver::Execute argv: lld "/tmp/comgr-3efff3/input/linked.bc.o" "-shared" "-o" "/tmp/comgr-3efff3/output/a.so"
ReturnStatus: AMD_COMGR_STATUS_SUCCESS
OpenCL API failed. OpenCL API returns: -17 (CL_LINK_PROGRAM_FAILURE) -17 (CL_LINK_PROGRAM_FAILURE)
```
The last line is outputted by dpc++ (one of the daily builds). What's going on here? The link doesn't seem to have failed, judging by comgr's output.
Any help will greatly be appreciated.
Contributor guide
Assessment
This issue has not been assessed yet.