Skip to content

unidist 0.5.0

Compare
Choose a tag to compare
@YarShev YarShev released this 14 Nov 21:27
· 16 commits to master since this release
0.5.0
1ec811a

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
    • PERF-#365: Cache info about sent metadata of shared data (#366)
    • PERF-#360: Implement asyncronous get request (#359)
    • PERF-#367: Use std::fill to fill service shared buffer with a given value (#373)
  • New Features
    • FEAT-#285: Implement shared object storage for MPI backend (#286)
    • FEAT-#341: Add the ability to specify environment variables for MPI workers (#352)
    • FEAT-#347: Get rid of mpi4py-mpich dependency (#358)
    • FEAT-#386: Make MPI shared object store default option (#387)
  • 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
    • DOCS-#000: Update the workflow status badge (#332)
    • DOCS-#000: Add the downloads badge in readme (#333)
    • DOCS-#384: Fix warnings when building documentation (#385)
    • DOCS-#336: Add documentation about shared object storage (#391)

Contributors

@YarShev
@Retribution98
@arunjose696