Skip to content
Snippets Groups Projects

Allow the code to do i/o in serial while MPI is activated

Merged Matthieu Schaller requested to merge serial_io into master

Quite a big change. Main goal is to solve issue #29 (closed) and hence offer a workaround #22 (closed).

The old non-MPI code is now in single_io.[ch] and is called when WITH_MPI is not defined.

The old MPI code with parallel-HDF5 is called when WITH_MPI and HAVE_PARALLEL_HDF5 are both defined.

The new MPI code is in serial_io.[ch] and is celled when WITH_MPI is defined but HAVE_PARALLEL_HDF5 is not.

In this serial mode, the code forces the different MPI ranks to write to the same file one after the other, appending their particles at the end of the pre-existing set of particles.

This merge request also corrects issue #27 (closed) and a bug in the attributes of the arrays in HDF5 that got the wrong units.

SWIFT now runs with Platform-MPI !!

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • I have not updated the autotools to get HAVE_PARALLEL_HDF5 automatically generated by the configure script. But it seems like something like this has been prepared by @pdraper in 2ad24c19fade194da91336e59347b96cc69d76ed

  • @nnrw56, that might be interesting for you as well in order to debug the reshuffling problem #28 (closed).

  • Peter W. Draper Added 1 new commit:

    Added 1 new commit:

    • c14dc046 - Need MPI include as MPI structs in task.h
  • You should check this extra commit before I accept. Needed it when building against non-parallel HDF with MPI enabled (since WITH_MPI was defined we had some MPI structs leaking in). I've also tested against 2ad24c19 so will make a merge request for that when this is accepted.

Please register or sign in to reply
Loading