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>
This commit is contained in:
Valentin Rothberg
2023-01-23 14:01:57 +01:00
parent 0428730bd4
commit 4ed46c9847
8 changed files with 113 additions and 0 deletions

8
hack/perf/create.sh Executable file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env sh
source ./helpers.bash
setup
echo_bold "Create $RUNS containers"
hyperfine --warmup 10 --runs $RUNS \
"$ENGINE_A create $IMAGE" \
"$ENGINE_B create $IMAGE"