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
Docs: DPC++ Compiler #17421
Docs: DPC++ Compiler #17421
Conversation
^^^^^^^^^^ | ||
SYCL/DPC++ | ||
^^^^^^^^^^ |
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 don't think this belongs in the "getting started" section.
Maybe it could go in the longer section on intel tools?
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.
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.
Wasn't sure, that section reads:
Vendor-Specific Compiler Configuration
With Spack, things usually “just work” with GCC. Not so for other compilers. This section provides details on how to get specific compilers working.
It sets up ICC, PGI and NAG compilers in detail and lacks so far details on how to set environment vars for them. I think its activation details are unique enough to add value for the section.
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 struggled with DPCPP just last week so this is well timed.
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.
@frankwillmore Can you look at the compilers.yaml?
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.
@rscohn2 That stanza looks pretty involved for an example. I've never had to add that much stuff, by ymmv.
I stopped naming the compiler as 'clang' a while back, in favor of 'oneapi', because I think it's important to distinguish the intel version, as with the cray version of it. All of the environment stuff may well be necessary and valid for that particular installation, and I don't see anything fundamentally wrong, but imho it looks a bit cluttered.
In my work, I've used icpx instead of dpcpp. afaik it will compile dpcpp code, just needs a few extra include paths. And I would set up the environment in a module, but this may just be a matter of taste.
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 also stopped using dpcpp driver and instead add -fsycl to compile and link. All the cmake docs discourage changing the driver.
Unfortunately, you may also need -fscyl-unnamed-lambda for compile, but I hope they make that unnecessary.
95243b4
to
4622e97
Compare
Document on how to set up the `dpcpp` compiler.
I don't use Spack much but my primary use for it in this case would be to get the PTX back-end without having to build it myself. Is that working (in Spack)? |
Here I am just trying to use the pre-built, distributed For building advanced binary variants of |
Co-authored-by: Robert Cohn <rscohn2@gmail.com>
Closing and re-opening this PR to see if the two required build and clingo will finally have their status reported (after re-running). |
Closing and re-opening again to see if we can get past the unreported results from required tests. |
I currently have no capacity to update this PR further and I think something similar was merged recently :) |
Document on how to set up the
dpcpp
compiler with spack.cc @becker33 @jeffhammond @rscohn2