Pshmem

Latest version: v1.1.0

Safety actively analyzes 621173 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 5

1.1.0

In order to resolve portability challenges with use of shared memory, switch to using `multiprocessing.shared_memory.SharedMemory` from the standard library. This fixes tests on MacOS. One workaround is still needed to manually disable resource tracking, but that monkey patch will not be needed after `python-3.13.0`. One possible concern with this approach is that the `resource_tracker` code used by this python package spawns a helper process. Historically, some MPI implementations were very unhappy with this. However, I tested this with OpenMPI on Linux and MacOS, and also with Cray MPICH, running across multiple nodes. No problems observed so far.

1.0.5

- Unit test failures were not triggering a non-zero return to the calling shell. Now fixed.
- Moved the pre-deletion of the shared memory segment until after all processes have wrapped the buffer in a numpy array, ensuring that the buffer is not released too early. This fixes a failure on macos.

1.0.4

The `posix_ipc` module is not available on conda-forge. This release moves the codebase to using `sysv_ipc`, which is available.

1.0.3

- Fix a typo

1.0.2

- Bump python versions for tests and requirements.
- Fix use of dtype `np.int_` in tests.
- Use concurrency in github actions rather than cancel-workflow action.
- Update versioneer for python 3.12 compatibility.

1.0.1

Even in the MPI case, if there is only one process in the node shared communicator, then use a simple numpy array. This reduces the total number of shared memory segments, which is limited by the kernel in terms of maximum number of open files (since shared memory segments appear as files to userspace).

Page 1 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.