-
Notifications
You must be signed in to change notification settings - Fork 795
[SYCL][PI] Restore CUDA and HIP plugin ABI #10518
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
During the port to UR the CUDA PI plugin ABI was unintentionally changed. This patch restores the expected ABI for the CUDA plugin.
During the port to UR the HIP PI plugin ABI was unintentionally changed. This patch restores the expected ABI for the HIP plugin.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! Would we be able to add symbol checks for HIP and CUDA or would it make no sense at this point?
I tried this out locally by copy pasting the Level Zero symbol check (changing the library path), using |
You should be able to generate the current symbols by using the same |
I think the script might need to be slightly modified as it doesn't output a |
Good point. Maybe it can be used to generate the initial version, but then we will have to maintain it without generating it through the script afterwards, like we do for L0 and OpenCL. I am also okay with having a new option for the checker, but I don't know if it makes sense for PI symbols that I assume we will remove eventually anyway. |
I've gone with using the script to generate the checks then manually adding |
|
I don't know what's don't wrong with this check... |
Looks like the Github unicorn strikes again! It was most likely just a github hiccup. |
76ad779 to
408be20
Compare
|
@intel/llvm-gatekeepers this is ready to merge now |
During the port to UR the CUDA and HIP PI plugin ABI's were unintentionally changed. There does not appear to be symbol checks for these plugins, unlike the [Level Zero symbol check](https://github.com/intel/llvm/blob/sycl/sycl/test/abi/pi_level_zero_symbol_check.dump) and [OpenCL symbol check](https://github.com/intel/llvm/blob/sycl/sycl/test/abi/pi_opencl_symbol_check.dump). As such, the ABI change went unnoticed until intel#10490 was opened using the same approach for the OpenCL port, which [failed](https://github.com/intel/llvm/actions/runs/5610646255/job/15200624025?pr=10490) the OpenCL symbol check. This PR restores the expected ABI for the CUDA and HIP plugins and introduces new CUDA and HIP symbol check tests.
During the port to UR the CUDA and HIP PI plugin ABI's were unintentionally changed. There does not appear to be symbol checks for these plugins, unlike the [Level Zero symbol check](https://github.com/intel/llvm/blob/sycl/sycl/test/abi/pi_level_zero_symbol_check.dump) and [OpenCL symbol check](https://github.com/intel/llvm/blob/sycl/sycl/test/abi/pi_opencl_symbol_check.dump). As such, the ABI change went unnoticed until intel#10490 was opened using the same approach for the OpenCL port, which [failed](https://github.com/intel/llvm/actions/runs/5610646255/job/15200624025?pr=10490) the OpenCL symbol check. This PR restores the expected ABI for the CUDA and HIP plugins and introduces new CUDA and HIP symbol check tests.
During the port to UR the CUDA and HIP PI plugin ABI's were unintentionally changed. There does not appear to be symbol checks for these plugins, unlike the [Level Zero symbol check](https://github.com/intel/llvm/blob/sycl/sycl/test/abi/pi_level_zero_symbol_check.dump) and [OpenCL symbol check](https://github.com/intel/llvm/blob/sycl/sycl/test/abi/pi_opencl_symbol_check.dump). As such, the ABI change went unnoticed until intel#10490 was opened using the same approach for the OpenCL port, which [failed](https://github.com/intel/llvm/actions/runs/5610646255/job/15200624025?pr=10490) the OpenCL symbol check. This PR restores the expected ABI for the CUDA and HIP plugins and introduces new CUDA and HIP symbol check tests.
Fixes #10518 Fixes #67914 Fixes #78388 Also addresses the second example in #49103 This patch is based on suggestion from @cor3ntin in llvm/llvm-project#67914 (comment)
During the port to UR the CUDA and HIP PI plugin ABI's were unintentionally changed. There does not appear to be symbol checks for these plugins, unlike the Level Zero symbol check and OpenCL symbol check. As such, the ABI change went unnoticed until #10490 was opened using the same approach for the OpenCL port, which failed the OpenCL symbol check.
This PR restores the expected ABI for the CUDA and HIP plugins and introduces new CUDA and HIP symbol check tests.