-
Notifications
You must be signed in to change notification settings - Fork 17
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
Detect serial build of ESMF? #2553
Comments
@tclune I'm not seeing anything in the API, either looking at the ESMF_VMGet or when you call ESM_Init, unless somehow if you don't build with MPI that maybe the MPIcommunicaor returned from ESMF_VMGet is always null? @mathomp4 do we have a no/ MPIESMF build of baselibs we could play with? |
Well, you can't. But the error that you get early on is not very informative. And happens when doing analysis about cores-per-node or some such. One possibility is just to change that message to indicate that MPIUNI is a likely culprit. |
Let's consider two ways: build-time detection and run-time detection. At build-time, from my staring at So then perhaps at run-time? But for that I probably need to invoke the names of @theurich and @oehmke and see if they have thoughts? Maybe there is some Or maybe we add a CMake style |
We can query the VM and get Hopefully @theurich has a better solution. We could ask for some patch to ESMF for this but that seems heavy for one problem by one student using a non GMAO application ... |
ESMF_VMGet() <http://earthsystemmodeling.org/docs/nightly/develop/ESMF_refdoc/node6.html#SECTION0601361800000000000000> has the argument esmfComm which is a string that contains the value of the ESMF_COMM build environment variable. You could use that to check for: mpiuni
… On Jan 25, 2024, at 2:47 PM, Tom Clune ***@***.***> wrote:
We can query the VM and get numPets. Not sure that works with MPIUNI, but by the interface we would expect a result of 1. The question then is what if we run say doubly-periodic on 1 core for testing purposes ....
Hopefully @theurich <https://github.com/theurich> has a better solution. We could ask for some patch to ESMF for this but that seems heavy for one problem by one student using a non GMAO application ...
—
Reply to this email directly, view it on GitHub <#2553 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AE6A7U5RT246HDEHBGGX2CTYQLHGZAVCNFSM6AAAAABCJHHGISVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJRGA2TAOJQHA>.
You are receiving this because you were mentioned.
|
Ooh. Thanks @oehmke! I'll test it out with an mpiuni Baselibs I have around. |
You’re welcome! Let me know if it doesn’t do what you want.
… On Jan 25, 2024, at 4:17 PM, Matthew Thompson ***@***.***> wrote:
Ooh. Thanks @oehmke <https://github.com/oehmke>! I'll test it out with an mpiuni Baselibs I have around.
—
Reply to this email directly, view it on GitHub <#2553 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AE6A7U6XF37PZFQKPN2DL73YQLRWZAVCNFSM6AAAAABCJHHGISVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJRGE2DQNZZG4>.
You are receiving this because you were mentioned.
|
@oehmke I have a PR that seems to do it: #2556 But new question: how much do I need to belt-and-suspender this? For example, do I need to first call Also, is there a preference between using I ask only because I rarely do ESMF coding and I figure I should do it "right" when I do. 😄 |
@mathomp4 - you are guaranteed a valid global VM after |
@theurich Oooh. Nice. One less call is always good! Thanks! |
…piuni Fixes #2553. Detect mpiuni builds of ESMF
A recent GCHP issue might have been resolved more quickly if MAPL did a check to verify that ESMF has been built with MPI. Please check to see if there is some query we could do (and then throw an error).
The text was updated successfully, but these errors were encountered: