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

Update ncrc-intel.mk to use avx2 ISA instead of xsse2 #43

Closed
wants to merge 5 commits into from

Conversation

ceblanton
Copy link
Contributor

@ceblanton ceblanton commented Jun 9, 2022

#42

Proposed updates from @nikizadehgfdl and @bensonr

  1. -xsse2 to -march=core-avx2. This changes the ISA from xsse2 to avx2, and provides generic hardware support. It's believed avx2 can now support run-to-run reproducibility.
  2. Separate ncrc-intel.mk into ncrc-intel-classic.mk and ncrc-intel-oneapi.mk for clarity and expectation that compiler options for Intel oneapi and classic will continue to diverge
  3. For intel-classic, add -qno-opt-dynamic-align, needed for run-to-run reproducibility when using vector ISAs.
  4. For both, add -qopt-report-phase=vec and -qopt-report=2 to CFLAGS and FLAGS when VERBOSE is used
  5. For intel-oneapi, remove -sox from FFLAGS as ifx does not support it

These updates are proposed, too:

  1. For intel-oneapi, remove -ftrapuv from CFLAGS_DEBUG as icx (clang) does not support it
  2. For intel-oneapi, set HAVE_GETTID macro (possibly, C5's environment contains its own gettid Linux system call)

@ceblanton ceblanton force-pushed the 42.gaea-c5-intel-update branch from 4c5088b to de44138 Compare June 23, 2022 17:42
- rename ncrc-intel.mk to ncrc-intel-classic.mk for clarity, and create new ncrc-intel-oneapi.mk
- For both, change -xsse2 to -march=core-avx2. This changes the ISA from xsse2 to avx2, and provides generic hardware support. It's believed the avx2 ISA can now support run-to-run reproducibility.
- For intel-classic, add -qno-opt-dynamic-align, needed for run-to-run reproducibility when using vector ISAs.
- For both, add -qopt-report-phase=vec and -qopt-report=2 to CFLAGS and FLAGS when VERBOSE is used
- For intel-oneapi, remove -sox from FFLAGS as ifx does not support it
@ceblanton ceblanton force-pushed the 42.gaea-c5-intel-update branch from de44138 to 26294a5 Compare June 23, 2022 17:43
@ceblanton ceblanton marked this pull request as ready for review June 23, 2022 17:57
@ceblanton
Copy link
Contributor Author

Closing this, will reopen with a cleaned-up branch with the ifort/ifx template

@ceblanton ceblanton closed this Jul 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant