Skip to content
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

Enables compilation with nvhpc-sdk. #1067

Merged
merged 1 commit into from
Apr 30, 2024

Conversation

dmageeLANL
Copy link

Very minor change to avoid unrecognized flag when building with nvidia-hpc-sdk. This facilitates Venado Acceptance testing, but also should help vendors build parthenon for ats5 benchmarking.

Copy link
Collaborator

@Yurlungur Yurlungur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sufficiently minor I don't think we need to include in the changelog.

Does nvhpc automatically include the equivalent of relaxed-constexpr?

@Yurlungur Yurlungur self-assigned this Apr 30, 2024
@Yurlungur Yurlungur added the bug Something isn't working label Apr 30, 2024
@Yurlungur
Copy link
Collaborator

Also should this MR also be applied into parthenon develop?

@dmageeLANL
Copy link
Author

Also should this MR also be applied into parthenon develop?

Sure, I mean I don't see why not. I'm planning on using this branch for venado testing because I'm familiar with it from the DAT we had on Crossroads April 29 and it seems to ameliorate the startup MPI issues. That's my main motivation for the MR, but you may find it useful for running on chicoma/venado in general if you're planning on using nvc++.

@dmageeLANL
Copy link
Author

Sufficiently minor I don't think we need to include in the changelog.

Does nvhpc automatically include the equivalent of relaxed-constexpr?

I don't know what nvc++ is doing under the hood, but I know that adding that flag makes the build fail on Chicoma. I get these build errors:

$~ CC --expt-relaxed-constexpr
nvc++-Error-Unknown switch: --expt-relaxed-constexpr

@pgrete
Copy link
Collaborator

pgrete commented Apr 30, 2024

I think this is an nvcc flag, so the logic should probably be CUDA and (not clang or not NVHPC) [edit] nevermind, the original logic should be fine [/edit]
Alternatively, it might be worth to peek into what Kokkos does this with flag/feature and nvc++.

@Yurlungur
Copy link
Collaborator

Sufficiently minor I don't think we need to include in the changelog.
Does nvhpc automatically include the equivalent of relaxed-constexpr?

I don't know what nvc++ is doing under the hood, but I know that adding that flag makes the build fail on Chicoma. I get these build errors:

$~ CC --expt-relaxed-constexpr
nvc++-Error-Unknown switch: --expt-relaxed-constexpr

I have built succesfully on Chicoma with nvhpc, but it required a custom version of the kokkos wrapper. At the time, Kokkos did not support nvhpc as a compiler. Here's my build process on Chicoma:
lanl/phoebus#70

@Yurlungur
Copy link
Collaborator

Looks like cpplint is failing. Odd. I'm just going to click merge. @pgrete I suggest we keep this change in mind. But hold off on making it in develop until we have our hands on Venado (which should be soon for me).

@Yurlungur Yurlungur merged commit 9d5a909 into parthenon-hpc-lab:ats5 Apr 30, 2024
24 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants