unidist 0.5.0
This release adds support for a shared object store for MPI backend,
which can be enabled with UNIDIST_MPI_SHARED_OBJECT_STORE environment variable,
contains a lot of performance enhancements, includes several features,
important documentation updates and a bunch of bugfixes.
Key Features and Updates
- Stability and Bugfixes
- FIX-#329: Allow remaining communication requests to complete (#330)
- FIX-#343: Get rid of the hacks in the MPI backend (#344)
- FIX-#345: Test both modes of MPI execution on Linux only (#346)
- FIX-#349: Remove the warning regarding MpiPickleThreshold (#350)
- FIX-#354: Fix unidist.wait for MPI backend (#355)
- FIX-#363: Fix DataID usage between different MPI processes (#364)
- FIX-#371: Fix check for out of bounds reserved memory in shared storage (#372)
- FIX-#375: Fix running an MPI cluster without using shared memory (#377)
- FIX-#340: Fix hangs at low UNIDIST_MPI_SHARED_OBJECT_STORE_THRESHOLD (#380)
- FIX-#376: Partition buffers of size larger than the _bigmpi.blocksize into blocks while sending and receiving with MPI (#383)
- FIX-#337: Fix MpiHosts parameter usage (#378)
- FIX-#000: Revert PR #387 (#388)
- FEAT-#392: Raise a warning if shared object storage is enabled but the MPI library does not support it (#393)
- FIX-#389: Revert async get changes made in #359 (#390)
- FIX-#394: Fix CI running on Windows (#395)
- FIX-#396: Fix Split_type call for Unidist on MSMPI (#397)
- Performance enhancements
- New Features
- Refactor Codebase
- REFACTOR-#000: Remove unnecessary build step in CI (#339)
- REFACTOR-#000: Introduce task_info metadata package (#348)
- REFACTOR-#000: Remove unncessary else branch in mpi init (#351)
- REFACTOR-#000: Change mpi_state.comm to mpi_state.global_comm (#379)
- REFACTOR-#000: Change IsMpiSpawnWorkers to MpiSpawn to make it more concise (#382)
- Documentation improvements