6 Commits

Author SHA1 Message Date
1b0e64a103 hack/perf/system-df.sh: add df benchmarks
The performance issue in #19467 drove me to add a benchmark for
system-df to avoid regressing on it in the future.

Comparing current HEAD to v4.6.0 yields

```
/home/vrothberg/containers/podman/bin/podman system df ran
201.47 times faster than /usr/bin/podman system df
```

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-08-23 14:17:27 +02:00
8aa3776981 hack/perf: cleanup after benchmarks
To leave not leave some artifacts arounds.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-02-02 16:53:30 +01:00
cb5a9e9f44 hack/perf/bz-2162111.sh: use custom network
Create the containers with a custom network.  It has an impact on the
speed of container creation.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-02-02 16:52:32 +01:00
1a786ea537 hack/perf/bz-2162111.sh: measure stop
Add benchmarks for stopping the containers as well.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-02-02 13:58:09 +01:00
61db1d5aa1 [CI:DOCS] hack/perf: add script for BZ 216111
Add a script with reproducers for bugzilla.redhat.com/show_bug.cgi?id=2162111.
The results are not much different compared to the already existing
scripts.  Podman is faster despite for container removal.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-01-30 16:43:14 +01:00
4ed46c9847 add hack/perf for comparing two container engines
Add a set of scripts using hyperfine for comparing two container
engines.  I am currently using the scripts for comparing Podman
and Docker, and with older versions of Podman.

These scripts are not meant for production usage but to aid in tracking
down performance regressions and bottlenecks.

Run the scripts via `sudo sh $script.sh`.

Use the following environment variables to change the default behavior:
* `ENGINE_A` to set container engine A (default `/usr/bin/podman`)
* `ENGINE_B` to set container engine B (default `/usr/bin/docker`)
* `RUNS` to change the runs/repetitions of each benchmarks (default `100`)
* `NUM_CONTAINERS` to change the number of created containers for some benchmarks (e.g., `ps`) (default `100`)
* `IMAGE` to change the default container image (default `docker.io/library/alpine:latest`)

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-01-23 16:38:12 +01:00