-
Notifications
You must be signed in to change notification settings - Fork 20
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
Compiler crash with named function object #28
Comments
Oh, by the way (don't want to open a new issue for this): Ubuntu 18.10's support will end in a few weeks. Can I safely upgrade to 19.04 and still use the SYCL toolchain? |
Nice to see that the compiler crashed in For the Ubuntu 18.10 story, we are working on it. Just waiting for a colleague to provide me a new machine with a new FPGA card to ease the transition... Thanks. |
Thanks for the report, this #29 should fix it, but it's a fair bit passed the end of the work day here so probably won't be merged till tomorrow. It is just a one line fix though inside the script so shouldn't be difficult to self apply (sorry for the trouble). Just swaps the ASFixer and O3 pass around which allows your test to compile in sw emu on my machine! I believe this is because the ASFixer pass was never intended to be ran after O3 optimizations as Intels implementation targets SPIRV which doesn't use the usual opt pass pipeline (ASFixer comes from the upstream implementation, rather than us in this case). As an aside, if you want to debug things to do with xocc or add new xocc specific passes this script is the place to do it. Unfortunately there appears to be an error in your example at the moment so it doesn't execute correctly, a runtime assertion is hit for both Intel and Xilinx compilation (it also deadlocks in the Upstream SYCL master branch which has a new scheduler). I'd imagine it's something to do with incorrect usage of the accessors rather than a bug with the SYCL implementation though (but if it is a bug feel free to open up an issue, although it may be better suited to the Intel Upstream implementation in this case), I was tempted to try fix it but it's a bit late in the day sadly! The SYCL spec references here: intel/llvm#143 might be useful as I made a mistake myself recently with accessors/buffers and incorrectly opened an issue! We'd be interested (and thankful) in adding that test to our current set of tests if you'd be interested in doing so, once you've completed it (just some minor alterations and a pull request should be enough!)? As it's quite a nice test, complex and concise! If not then that's no problem though. |
Issue should be fixed with merge of: #29 if I am mistaken and it's not feel free to reopen the issue! |
Sorry for the delay, other work got in the way the past days. I can confirm that the compiler no longer crashes.
I'll be happy to contribute once everything works. I originally intended to use this code for playing around with the Xilinx extensions (pipelining). Would you be interested in the (present) vanilla version or the one with extensions? |
The extensions variant sounds like it would be most interesting, but whenever you feel the example is complete to your satisfaction is great. Thank you! |
@j-stephan We have a new machine with Ubuntu 19.04 and a Xilinx Alveo U200 board now. |
Great, thank you! |
I am trying to compile the attached code (simple N-body) with the current versions of the compiler (up-to-date
sycl/unified/master
) and SDAccel (2018.3) and a self-compiled XRT (up-to-date2018.3
), OS is Ubuntu 18.10. After starting the compilation the compiler crashed almost immediately with the following message:I suppose something is still wrong with my code but I assume that a compiler crash isn't the intended behaviour here ;-)
nbody.zip
The text was updated successfully, but these errors were encountered: