Skip to content

Commit a99dc5f

Browse files
authored
reactivate status badge (#592)
* reactivate status badge and fix minor issues in readme.md * Update and rename README.rst to README.md Highlighting and formatting ist done by markdown (MD) instead of ReStructuredText (RST). * Change enumeration * Rename README.rst to README.MD in setup.py
1 parent 8c70d38 commit a99dc5f

File tree

2 files changed

+49
-43
lines changed

2 files changed

+49
-43
lines changed

README.rst renamed to README.md

Lines changed: 47 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,46 @@
11
mpi-sppy
22
========
33

4-
Optimization under uncertainty for `Pyomo <https://pyomo.org>`_ models.
4+
Optimization under uncertainty for [Pyomo](https://pyomo.org) models.
55

6-
`Documentation is available at readthedocs <https://mpi-sppy.readthedocs.io/en/latest/>`_ and
7-
a there is a `paper <https://link.springer.com/article/10.1007/s12532-023-00247-3>`_
6+
[Documentation is available at readthedocs](https://mpi-sppy.readthedocs.io/en/latest/) and
7+
there is a [paper](https://link.springer.com/article/10.1007/s12532-023-00247-3).
88

99
Status for internal tests
10-
^^^^^^^^^^^^^^^^^^^^^^^^^
11-
12-
.. image:: https://github.com/Pyomo/mpi-sppy/workflows/pyotracker/badge.svg
13-
:target: https://github.com/Pyomo/mpi-sppy/actions/workflows/pyotracker.yml
10+
-------------------------
1411

12+
[![pyo tracker](https://github.com/Pyomo/mpi-sppy/actions/workflows/pyotracker.yml/badge.svg)](https://github.com/Pyomo/mpi-sppy/actions/workflows/pyotracker.yml)
1513

1614
MPI
17-
^^^
15+
---
1816

1917
A recent version of MPI and a compatible version of mpi4py are needed.
2018

2119
Here are two methods that seem to work well for installation, at least when considering non-HPC platforms.
2220

23-
#. Install OpenMPI and mpi4py using conda.
24-
25-
* ``conda install openmpi; conda install mpi4py`` (in that order)
26-
27-
#. If you already have an existing version of MPI, it may be better compile mpi4py against it. This can be done by installing mpi4py though pip.
28-
29-
* ``pip install mpi4py``
30-
31-
#. It is also possible to automate mpi4py installation through pip as an optional dependency when installing mpi-sppy from pip or from source by adding the `[mpi]` extras flag.
32-
33-
* ``pip install -e .[mpi]`` (after cloning and moving to the repo root directory)
34-
35-
To test
36-
your installation, cd to the directory where you installed mpi-sppy
21+
1. Install OpenMPI and mpi4py using conda. Keep the order.
22+
```
23+
conda install openmpi
24+
conda install mpi4py
25+
```
26+
2. If you already have an existing version of MPI, it may be better compile mpi4py against it.
27+
This can be done by installing mpi4py though pip.
28+
```
29+
pip install mpi4py
30+
```
31+
3. It is also possible to automate mpi4py installation through pip as an optional dependency when
32+
installing mpi-sppy from pip or from source by adding the `[mpi]` extras flag.
33+
```shell
34+
pip install -e .[mpi]
35+
```
36+
Run the line aborve after cloning and moving to the repo root directory.
37+
38+
To test your installation, cd to the directory where you installed mpi-sppy
3739
(it is called ``mpi-sppy``) and then give this command.
3840

39-
``mpirun -n 2 python -m mpi4py mpi_one_sided_test.py``
41+
```
42+
mpirun -n 2 python -m mpi4py mpi_one_sided_test.py
43+
```
4044

4145
If you don't see any error messages, you might have an MPI
4246
installation that will work well. Note that even if there is
@@ -45,30 +49,29 @@ results. Per the comment below, the run-times may just be
4549
unnecessarily inflated.
4650

4751
Installing mpi-sppy
48-
^^^^^^^^^^^^^^^^^^^
52+
-------------------
4953

5054
It is possible to pip install mpi-sppy; however, most users are better off
51-
getting the software from github because it is under active development.
55+
getting the software from Github because it is under active development.
5256

5357
Citing mpi-sppy
54-
^^^^^^^^^^^^^^^
55-
If you find mpi-sppy useful in your work, we kindly request that you cite the following `paper <https://link.springer.com/article/10.1007/s12532-023-00247-3>`_:
56-
57-
::
58-
59-
@article{mpi-sppy,
60-
title={A Parallel Hub-and-Spoke System for Large-Scale Scenario-Based Optimization Under Uncertainty},
61-
author={Bernard Knueven and David Mildebrath and Christopher Muir and John D Siirola and Jean-Paul Watson and David L Woodruff},
62-
journal = {Math. Prog. Comp.},
63-
volume = {15},
64-
pages = {591-–619},
65-
year={2023}
66-
}
67-
68-
58+
---------------
59+
If you find mpi-sppy useful in your work, we kindly request that you cite the following
60+
[paper](https://link.springer.com/article/10.1007/s12532-023-00247-3):
61+
62+
```
63+
@article{mpi-sppy,
64+
title={A Parallel Hub-and-Spoke System for Large-Scale Scenario-Based Optimization Under Uncertainty},
65+
author={Bernard Knueven and David Mildebrath and Christopher Muir and John D Siirola and Jean-Paul Watson and David L Woodruff},
66+
journal = {Math. Prog. Comp.},
67+
volume = {15},
68+
pages = {591-–619},
69+
year={2023}
70+
}
71+
```
6972

7073
AN IMPORTANT NOTE FOR MPICH USERS ON HPC PLATFORMS
71-
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
74+
--------------------------------------------------
7275

7376
At least on some US Department of Energy (e.g., at Lawrence Livermore
7477
National Laboratory) compute clusters, users of mpi-sppy that are
@@ -77,7 +80,9 @@ order for both (1) proper execution of the one-sided test referenced
7780
above and (2) rapid results when running any of the algorithms shipped
7881
with mpi-sppy:
7982

83+
```
8084
export MPICH_ASYNC_PROGRESS=1
85+
```
8186

8287
Without this setting, we have observed run-times increase by a factor
8388
of between 2 and 4, due to non-blocking point-to-point calls
@@ -88,7 +93,7 @@ ranks (e.g., >> 10), we have observed mpi-sppy stalling once scenario
8893
instances are created.
8994

9095
2022 NOTICE
91-
^^^^^^^^^^^
96+
-----------
9297

9398
There was a disruptive change on August 11, 2022 concerning how
9499
options are accessed. See the file ``disruptions.txt`` for more

setup.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
packages = find_packages()
2222

2323
this_directory = Path(__file__).parent
24-
long_description = (this_directory / "README.rst").read_text()
24+
long_description = (this_directory / "README.md").read_text()
2525

2626
# intentionally leaving out mpi4py to help readthedocs
2727
setup(
@@ -43,6 +43,7 @@
4343
extras_require={
4444
'doc': [
4545
'sphinx_rtd_theme',
46+
'sphinx-copybutton',
4647
'sphinx',
4748
]
4849
},

0 commit comments

Comments
 (0)