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

Newalarm #121

Closed
wants to merge 207 commits into from
Closed

Newalarm #121

wants to merge 207 commits into from

Conversation

danrosen25
Copy link
Member

@danrosen25 danrosen25 commented Jan 31, 2023

ISSUES:
https://github.com/esmf-org/esmf-support/issues/11
POSSIBLE CONFLICT/DUPLICATE PR:
#29

@danrosen25 danrosen25 assigned danrosen25 and unassigned danrosen25 Jan 31, 2023
theurich and others added 6 commits July 25, 2023 15:43
With these changes, I can successfully build PIO. I tested a standalone
PIO build (i.e., outside of an ESMF build) with:

CC=clang FC=gfortran cmake -DPIO_USE_MPISERIAL=ON -DPIO_ENABLE_TIMING=OFF -DPIO_ENABLE_EXAMPLES=OFF -DPIO_ENABLE_FORTRAN=OFF -DMPISERIAL_PATH=/Users/sacks/esmf/esmf1/src/Infrastructure/stubs/mpiuni -DPIO_ENABLE_TESTS=OFF .

make VERBOSE=1
According to MPI documentation, most MPI routines check sendbuf, but
some (MPI_Scatter, MPI_Scatterv and maybe others; note that these are
not yet implemented yet in mpiuni) check recvbuf, and some (e.g.,
MPI_Sendrecv_replace) don't check for MPI_IN_PLACE at all. To make
mpiuni respect the MPI standard in this respect, I have added an
argument to MPIUNI_Memcpy saying whether to check the source (sendbuf),
dest (recvbuf) or neither for equality with MPI_IN_PLACE.

(We could probably get away with keeping things simpler by always
checking both a and b for equality with MPI_IN_PLACE, but following the
MPI standard in this respect seems marginally safer.)
uturuncoglu and others added 26 commits May 17, 2024 13:12
I saw this issue with the nvhpc compiler; I'm not sure if other
compilers would also have problems using 0 for the seed.
Enable PIO with mpiuni

This PR enables building and running with the internal PIO when using mpiuni. This is especially relevant for people using ESMPy, since ESMPy is sometimes built without mpi – and this is apparently needed on many HPC systems (see also conda-forge/esmpy-feedstock#70). This resolves #131 .
Resolved Conflicts:
	src/Infrastructure/TimeMgr/src/ESMCI_Alarm.C
@billsacks billsacks self-assigned this Dec 26, 2024
@billsacks
Copy link
Member

billsacks commented Dec 26, 2024

I have updated this branch to v8.7.0b08, which is the latest point on develop that was easy to update to. (v8.7.0b09 brings in the new repeat capability to the ESMF Clock that @oehmke implemented; this involves conflicts with this branch.)

The list of commits and changed files is much larger than I expect to see in this PR. I'm going to try opening a new PR for this branch in the hopes that it appears cleaner, like I expect.

EDIT 2024-12-26: The new PR is #340. Indeed, that looks cleaner.

@billsacks billsacks closed this Dec 26, 2024
@billsacks billsacks mentioned this pull request Dec 26, 2024
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.