-
Notifications
You must be signed in to change notification settings - Fork 3
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
macOS questions, suggestions, relative to JOSS #22
Comments
Apple Clang: fixed in #25 OpenMPI: There's no particular reason we recommend MPICH. For simplicitly it would be good to recommend a single implementation for Linux and macOS. It seems Ubuntu doesn't favour one over the other judging from the packages for mpich vs openmpi. Is there some statement where it says that Homebrew recommends Open MPI? In general, I'm happy to switch to Open MPI and change the CI accordingly. Brewfile: Good idea, though if you do it for macOS you should do it for other systems as well, and there it gets more chaotic. In the end using a Brewfile would replace one line in the dependency installation docs with another. Are you sure this is beneficial? Publishing to Homebrew: It makes sense for the future, but likely only after WRF-CMake is merged upstream, because ideally this should be driven by the UCAR folks and not rely on our fork. I think our pre-built binaries are already lowering the barrier considerably for users. Putting it in Homebrew would be the cherry on the top. |
With regards to the choice of MPI implementation, I think that the main reason we originally chose to go with MPICH was mainly because of two reasons:
The points above and more info can be found here. |
no 😉
I completely agree, that is a task/topic for the future, not for now.
|
I completely agree with your reasoning. I personally prefer MPICH, as well. However, I think that if you are asking macOS users to install dependencies with Homebrew you should ask them to use OpenMPI. If they have a package like FWIW, I don't necessarily see an issue with recommending one implementation on one OS and another implementation on another OS. On linux you should keep MPICH, IMO. But users may stub their toes if you tell them to install w/ mpich on macOS. In theory, standard conforming MPIs should be interchangeable. |
@zbeekman this makes sense and we can definitively change the line in the readme but we will need to handle the binaries differently as these were compiled with MPICH. |
Yes, I think a note in the releases for the binaries should be fine. The user base is still small, so I don't expect a wave of complaints. |
Do your distributed binaries package dependencies too? Or is there linkage to, e.g., If you can tell CMake to get mpi from I just checked the output of This comment has no real connection to the JOSS review, I'm just trying to wrap my head around your binary distributions. I guess I should just download one and test drive it, so far I've been testing from source installations. |
@zbeekman The distributed binaries are fully self-contained and contain dependencies as well (I guess the only real exception is the |
@zbeekman I gave it a try and created my first formula! I tested it on Linuxbrew only at the moment, but it should work on macOS as well: brew install https://raw.githubusercontent.com/WRF-CMake/WRF/letmaik/brew-formula/wrf.rb It has a |
Looks pretty good! I have a few comments that I've made on the commits:
As far as the installation layout goes, in the future it would be fairly easy and straight forwards to add a flag to install it into a more canonical directory layout. |
@zbeekman Thanks for reviewing this. I switched to open-mpi, makes sense. I also removed the forced non-parallel build. It's nasty when it happens, you get an internal compiler error. I'll move the formula over to the homebrew-wrf repo. |
Yes, I think this issue can be closed. Thanks! |
Also, as far as the JOSS review goes, when I say "consider" that is just a suggestion. Right now the only things that I feel I have not investigated in enough detail yet are:
Also, if the other reviewer showed up, that would certainly light a fire under me to ensure I'm not the bottleneck, but I'll wrapt things up soon. I think point 3. above is all that's left where I need some input/guidance/changes from you guys. (I'll have to double check the review checklist, to make sure.) EDIT: |
Sounds good, we'll have the minimal example ready soon, which should give you enough to play around with. |
@zbeekman thanks. #24 (comment) should allow you to carry out 2 and 3. |
It would be awesome to see WRF make it into the homebrew package manager system in the future. This would lower the barrier to entry for researchers and tinkerers. But there are some potential issues that might prevent that. The purpose of this issue is to discuss those potential issues, and further improving ease of use on macOS.
This issue will likely conclude my comments about installation on macOS.
Here are some example
Brewfile
s that you may wish to use.MPICH (less prefered)
OpenMPI
The text was updated successfully, but these errors were encountered: