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

Switch to openmpi on macOS, update spack (merge spack authoritative updates as of 2022/04/04) #112

Merged
merged 28 commits into from
Apr 12, 2022

Conversation

climbfuji
Copy link
Collaborator

@climbfuji climbfuji commented Apr 4, 2022

  • Update submodule pointer for spack for the changes described in Update jcsda emc spack stack from authoritative 20220404 spack#50 (Update jcsda emc spack stack from authoritative 20220404).
  • Switch macOS reference configs and CI tests from mpich to openmpi.
  • Fix Intel CI tests - set LD_LIBRARY_PATH instead of using --dirty flag for installing

Fixes #109
Fixes #28

Tested on macOS Monterey with llvm clang and mpich, and also with llvm clang and openmpi.

All CI tests passed (see https://github.com/NOAA-EMC/spack-stack/actions).

.gitmodules Outdated
@@ -2,5 +2,7 @@
path = spack
#url = https://github.com/spack/spack
#branch = develop
url = https://github.com/NOAA-EMC/spack.git
branch = jcsda_emc_spack_stack
#url = https://github.com/NOAA-EMC/spack.git
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

For CI testing only, will be reverted prior to merging

.gitmodules Outdated
@@ -2,5 +2,7 @@
path = spack
#url = https://github.com/spack/spack
#branch = develop
url = https://github.com/NOAA-EMC/spack.git
branch = jcsda_emc_spack_stack
#url = https://github.com/NOAA-EMC/spack.git
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

For CI testing only, will be reverted prior to merging

@climbfuji climbfuji marked this pull request as ready for review April 7, 2022 22:39
@climbfuji climbfuji changed the title DRAFT - Switch to openmpi on macOS, update spack (merge spack authoritative updates as of 2022/04/04) Switch to openmpi on macOS, update spack (merge spack authoritative updates as of 2022/04/04) Apr 7, 2022
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch from a68b91b to 21ce595 Compare April 8, 2022 21:57
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch 5 times, most recently from 7d42381 to 375a15f Compare April 11, 2022 14:35
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch 2 times, most recently from 832b9d6 to c42e55f Compare April 11, 2022 14:42
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch 4 times, most recently from 4a4e2f9 to 342d34c Compare April 11, 2022 15:36
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch 3 times, most recently from 3a5f152 to bad06e5 Compare April 11, 2022 16:13
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch 3 times, most recently from 2522394 to 01825bc Compare April 11, 2022 17:10
@climbfuji climbfuji force-pushed the feature/switch_to_openmpi_on_macos branch from 8b8c2d8 to 62114e9 Compare April 11, 2022 17:41
@climbfuji
Copy link
Collaborator Author

@kgerheiser Ready for review.

Comment on lines +159 to +176
elif [[ "${{ inputs.mpi }}" == "mpich"* ]]; then
mpich_ver=${MPICH_VERSION}
echo "" >> ${SPACK_ENV}/spack.yaml
echo " packages:" >> ${SPACK_ENV}/spack.yaml
echo " mpich:" >> ${SPACK_ENV}/spack.yaml
echo " buildable: False" >> ${SPACK_ENV}/spack.yaml
echo " externals:" >> ${SPACK_ENV}/spack.yaml
echo " - spec: mpich@${mpich_ver}" >> ${SPACK_ENV}/spack.yaml
echo " prefix: $HOME/mpi" >> ${SPACK_ENV}/spack.yaml
elif [[ "${{ inputs.mpi }}" == "openmpi"* ]]; then
openmpi_ver=${OPENMPI_VERSION}
echo "" >> ${SPACK_ENV}/spack.yaml
echo " packages:" >> ${SPACK_ENV}/spack.yaml
echo " openmpi:" >> ${SPACK_ENV}/spack.yaml
echo " buildable: False" >> ${SPACK_ENV}/spack.yaml
echo " externals:" >> ${SPACK_ENV}/spack.yaml
echo " - spec: openmpi@${openmpi_ver}" >> ${SPACK_ENV}/spack.yaml
echo " prefix: $HOME/mpi" >> ${SPACK_ENV}/spack.yaml
Copy link
Contributor

Choose a reason for hiding this comment

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

Given the option of externally finding it, I would search for OpenMPI and MPICH instead of this.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Good point. Now that I am using spack external find --all, it should be able to find it.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I'll try this in the next set of PRs.

Comment on lines +36 to +37
# upload-artifact does not allow filenames that contain '?'
rm -vf `find cache/source_cache -name '*\?*'`
Copy link
Contributor

Choose a reason for hiding this comment

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

Much better

@climbfuji climbfuji merged commit 5abb6f5 into develop Apr 12, 2022
@climbfuji climbfuji deleted the feature/switch_to_openmpi_on_macos branch April 12, 2022 17:12
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.

gcc+mpich bugs with FMS and ufs-weather-model Fix Intel build in Github Action
2 participants