exasim-project / NeoFOAM

WIP Prototype of a modern CFD core
19 stars 1 forks source link

78 mpi infrastructure #79

Closed bevanwsjones closed 4 days ago

bevanwsjones commented 4 weeks ago

Adds basic MPI wrapping infrastructure: Basic operations like all reduce (so we can sync time step sizes and other globals) and some 'point to point' send and receives.

see https://github.com/exasim-project/NeoFOAM/issues/78

bevanwsjones commented 3 weeks ago

Just some quick comments. Maybe also creat a stacked PR.

  1. for the implementation
  2. the test
  3. documentation

For the moment I would like to try to keep the PR size down and keep it 'bundled' and focused, if it becomes unmanageable we can then stack it. I don't plan on adding much more than what is currently here (i.e. just need to doc it and test it).

bevanwsjones commented 3 weeks ago

Ok I still need to write the .rst file and probably fix a few minor things. However, it's tested, insource doxed and working. So it's mostly ready for review and I can work on corrections + documentation at the same time.

I think naming will probably need some work, maybe a bit of 'where' to place things also.

We need to update the actions (feel free to just work on the branch), so we can test with MPI, currently I test with 3 ranks. After this PR I think we create an issue for MPI with GPU support.

bevanwsjones commented 1 week ago

@MarcelKoch @greole @HenningScheufler Docs are finished, I am pretty sure we are ready for merge.

-> Was working in my laptop so the unit tests need to be run again to make sure they are passing. I can do this tomorrow afternoon when I am back home. -> How do we get the tests to pass? -> There is a formatting issue with the bit masking I am doing so not sure how to fix that. -> Some checks don't work because it won't compile.

Feel free to pull and update as needed to get it to pass, I am not 100% clued up on the actions.

Also are we US or UK spelling ;)

bevanwsjones commented 6 days ago

All working, and tests are passing locally. We just need a way to test MPI.

MarcelKoch commented 5 days ago

Regarding the tests, I think I can fit that into #82

bevanwsjones commented 5 days ago

Ok I will pull those files which fail now and place them onto the 82 branch.

greole commented 4 days ago

Also are we US or UK spelling ;)

@bevanwsjones I think US spelling needs fewer letters, so it fits in our philosophy of typing less.