-
Notifications
You must be signed in to change notification settings - Fork 730
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
[CI] Enable FPGA on postcommit for Linux #12673
Conversation
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.
I think I found out the issue. We instantiate kernels with both 32bit and 64 bit datatypes. When the JIT compilation gets called the first time, all kernels get incorporated to the same module for compilation, triggering the issue.
-fsycl-device-code-split=per_kernel
splits each kernel into independent modules, which should fix the issue.
Edit: @aelovikov-intel the query is working as intended.
That should be handled by Optional Kernel Features (https://github.com/intel/llvm/blob/sycl/sycl/doc/design/OptionalDeviceFeatures.md), shouldn't it? In particular, I'd expect two device images created even without that option. I admit that I haven't worked closely with that feature, so maybe I'm missing something. |
@aelovikov-intel is right, the module-splitting done by sycl-post-commit should split kernels using atomic64 into a separate module. Since the failure seems to be coming from the online compiler and not from our runtime, which it should, I suspect we have a case of atomics on 64-bit values that aren't appropriately marked as I suggest you open an issue here on Github with it, add |
|
||
// TODO: Remove unsupported after fixing | ||
// https://github.com/intel/llvm/issues/12683 | ||
// UNSUPPORTED: accelerator |
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.
accelerator or fpga?
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.
I think it's accelerator only because that's what the name of the feature is (https://github.com/intel/llvm/blob/sycl/sycl/test-e2e/lit.cfg.py#L678) when fpga device is reported by sycl-ls.
The precommit failure in |
This PR enables testing on opencl::fpga for Linux in postcommit.
I have currently disabled the tests that were failing on the fpga and created another Github issue for the same: #12683. I am not very sure if the failures are because of some implementation bug or if that feature is not supported on fpga.