Skip to content

Commit

Permalink
[minor] Move installation instructions up the readme
Browse files Browse the repository at this point in the history
  • Loading branch information
stephane-caron committed Dec 11, 2023
1 parent 30ee2dd commit 6388eae
Showing 1 changed file with 18 additions and 18 deletions.
36 changes: 18 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,22 @@ Benchmark for quadratic programming (QP) solvers available in Python.

The objective is to compare and select the best QP solvers for given use cases. The benchmarking methodology is open to [discussions](https://github.com/qpsolvers/qpbenchmark/discussions). Standard and community [test sets](#test-sets) are available: all of them can be processed using the ``qpbenchmark`` command-line tool, resulting in standardized reports evaluating all [metrics](#metrics) across all QP solvers available on the test machine.

New test sets are welcome! The benchmark is designed so that each test set comes in a standalone directory. Check out the existing test sets below, and feel free to create a new one that better matches your particular use cases.
## Installation

The recommended process is to install the benchmark and all solvers in an isolated environment using ``conda``:

```console
conda env create -f environment.yaml
conda activate qpbenchmark
```

Alternatively, you can install the benchmarking tool individually using ``pip``:

```console
pip install qpbenchmark
```

In that case, the benchmark will run all supported solvers it finds. (Quick way to install open source solvers from PyPI: ``pip install qpsolvers[open_source_solvers]``.)

## Test sets

Expand All @@ -20,6 +35,8 @@ The benchmark comes with standard and community test sets to represent different
| **Maros-Meszaros dense** | 62 | Subset of Maros-Meszaros restricted to smaller dense problems. |
| **GitHub free-for-all** | 12 | Community-built, new problems [are welcome](https://github.com/qpsolvers/qpbenchmark/issues/new?template=new_problem.md)! |

New test sets are welcome! The benchmark is designed so that each test set comes in a standalone directory. Check out the existing test sets below, and feel free to create a new one that better matches your particular use cases.

## Solvers

| Solver | Keyword | Algorithm | Matrices | License |
Expand Down Expand Up @@ -83,23 +100,6 @@ Here are some known areas of improvement for this benchmark:

Check out the [issue tracker](https://github.com/qpsolvers/qpbenchmark/issues) for ongoing works and future improvements.

## Installation

The recommended process is to install the benchmark and all solvers in an isolated environment using ``conda``:

```console
conda env create -f environment.yaml
conda activate qpbenchmark
```

Alternatively, you can install the benchmarking tool individually using ``pip``:

```console
pip install qpbenchmark
```

In that case, the benchmark will run all supported solvers it finds. (Quick way to install open source solvers from PyPI: ``pip install qpsolvers[open_source_solvers]``.)

## Running the benchmark

Once the benchmark is installed, you will be able to run the ``qpbenchmark`` command. Provide it with the script corresponding to the [test set](#test-sets) you want to run, followed by a benchmark command such as "run". For instance, let's run the "dense" subset of the Maros-Meszaros test set:
Expand Down

0 comments on commit 6388eae

Please sign in to comment.