pytest-isolate-mpi allows for MPI-parallel tests being executed in a segfault and MPI_Abort safe manner
Project description
pytest-isolate-mpi is a plugin for Pytest to enable the test of MPI-parallel Python software. MPI-parallel tests are executed in forked MPI jobs with the help of mpirun to isolate the tests from each other. Thus, a crash in test only aborts the test, not the whole test suite. Similarly, deadlocks can be treated with timeouts for tests to prevent a test suite from never being able to finish:
import pytest @pytest.mark.mpi(ranks=2, timeout=10, unit="s") def test_with_mpi(mpi_ranks): assert True # replace with actual, MPI-parallel test code
Installation
pytest-isolate-mpi is available on pypi.org and can be installed with pip:
pip install pytest-mpi-isolate
Documentation
For the full documentation, please see https://pytest-isolate-mpi.readthedocs.io/.
Contributing
Please refer to the Contributor Guide for instructions on how to contribute to pytest-isolate-mpi.
License
This work is licensed under the conditions of the BSD license, see LICENSE.
The software is provided as is. We sincerely welcome your feedback on issues, bugs and possible improvements. Please use the issue tracker of the project for the corresponding communication or make a fork. Our priority and time line for working on the issues depend on the project and its follow ups. This may lead to issue and tickets, which are not pursued. In case you need an urgent fix, please contact us directly for discussing possible forms of collaboration (direct contribution, projects, contracting, …): Institute of Software Methods for Product Virtualization.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pytest_isolate_mpi-0.1.tar.gz
.
File metadata
- Download URL: pytest_isolate_mpi-0.1.tar.gz
- Upload date:
- Size: 300.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 492fc32ba4c603be0e7ea91ab360c0fc0d4977665c1cf44638582662cb4dd3a0 |
|
MD5 | 1aaefee1d5e6af3b836a9f19255f0caf |
|
BLAKE2b-256 | fc43a4ce903c806c5c7482f4daa74f3b71cab02464b2475ee73763c4e8f73c52 |
File details
Details for the file pytest_isolate_mpi-0.1-py2.py3-none-any.whl
.
File metadata
- Download URL: pytest_isolate_mpi-0.1-py2.py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 520706b5703aaf7832061eb398e7a33fa82290d7b3e21a54e8814117e30c1b92 |
|
MD5 | 4202afb960ec9b70c01f8575607825a6 |
|
BLAKE2b-256 | 62cf3a870598b3493afb84c0ee726a04233a60139f6c3cd56b1f78092a3a7ff6 |