-
Notifications
You must be signed in to change notification settings - Fork 63
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(ci,cijoe): add configs, scripts and workflows for perf. eval.
This adds scripts to: * Prepare bdev-configurations on the target-system - This is bench_confs_generate.py - It utilizes the list of [['duts']] aka "device-under-test" * bdevperf.py - Wrap the execution of the SPDK benchmark tool bdevperf * bench_plotter.py - Produce plots from the output of 'bdevperf.py' - Auxiliary files 'plot-attributes-*.yaml' to style, label and limit graphs * bench_reporter.py - Produce a .pdf report using the graphs produced by bench_plotter.py * {fio,liburing,spdk}_build.py - Scripts to build and install fio, liburing, and SPDK from source todo... describe this... Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
- Loading branch information
Showing
28 changed files
with
2,202 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
--- | ||
# Reference implementations | ||
libaio-reference: | ||
legend: 'libaio ($\bf{reference}$)' | ||
color: "#084594" | ||
marker: "s" # square | ||
hatch: "." | ||
|
||
io_uring-reference: | ||
legend: 'io_uring ($\bf{reference}$)' | ||
color: "#2171b5" | ||
marker: "v" # triangle_down | ||
hatch: "." | ||
|
||
io_uring_cmd-reference: | ||
legend: 'io_uring_cmd ($\bf{reference}$)' | ||
color: "#2171b5" | ||
marker: "P" # plus | ||
hatch: "." | ||
|
||
# xNVMe implementations | ||
libaio-xnvme: | ||
legend: 'libaio ($\bf{xnvme}$)' | ||
color: "#005a32" | ||
marker: "p" # pentagon | ||
hatch: "." | ||
|
||
libaio-bdev_xnvme: | ||
legend: 'libaio ($\bf{bdev\_xnvme}$)' | ||
color: "#297373" | ||
marker: "X" # cross | ||
hatch: "O" | ||
|
||
libaio-bdev_xnvme_conserve_cpu: | ||
legend: 'libaio ($\bf{bdev\_xnvme}$) +conserve' | ||
color: "#E9D758" | ||
marker: "X" # cross | ||
hatch: "O" | ||
|
||
io_uring-xnvme: | ||
legend: 'io_uring ($\bf{xnvme}$)' | ||
color: "#41ab5d" | ||
marker: "*" # star | ||
hatch: "." | ||
|
||
io_uring-bdev_xnvme: | ||
legend: 'uring $\bf{bdev\_xnvme}$' | ||
color: "#297373" | ||
marker: "h" # hexagon1 | ||
hatch: "O" | ||
|
||
io_uring-bdev_xnvme_conserve_cpu: | ||
legend: 'uring $\bf{bdev\_xnvme}$ +conserve' | ||
color: "#E9D758" | ||
marker: "h" # hexagon1 | ||
hatch: "O" | ||
|
||
io_uring-bdev_xnvme_BATCH: | ||
legend: 'uring $\bf{bdev\_xnvme}$ +batch' | ||
color: "#FF8552" | ||
marker: "D" # diamond | ||
hatch: "*" | ||
|
||
io_uring-bdev_xnvme_conserve_cpu_BATCH: | ||
legend: 'uring $\bf{bdev\_xnvme}$ +conserve +batch' | ||
color: "#39393A" | ||
marker: "D" # diamond | ||
hatch: "*" | ||
|
||
io_uring_cmd-xnvme: | ||
legend: 'io_uring_cmd ($\bf{xnvme}$)' | ||
color: "#74c476" | ||
marker: "H" # hexagon2 | ||
hatch: "." | ||
|
||
io_uring_cmd-bdev_xnvme: | ||
legend: 'ucmd $\bf{bdev\_xnvme}$' | ||
color: "#297373" | ||
marker: "o" # circle | ||
hatch: "O" | ||
io_uring_cmd-bdev_xnvme_conserve_cpu: | ||
legend: 'ucmd $\bf{bdev\_xnvme}$ +conserve' | ||
color: "#E9D758" | ||
marker: "o" # circle | ||
hatch: "O" | ||
|
||
io_uring_cmd-bdev_xnvme_BATCH: | ||
legend: 'ucmd $\bf{bdev\_xnvme}$ +batch' | ||
color: "#FF8552" | ||
marker: "d" # thin_diamond | ||
hatch: "*" | ||
|
||
io_uring_cmd-bdev_xnvme_conserve_cpu_BATCH: | ||
legend: 'ucmd $\bf{bdev\_xnvme}$ +conserve +batch' | ||
color: "#39393A" | ||
marker: "d" # thin_diamond | ||
hatch: "*" | ||
|
||
# SPDK bdev implementations | ||
libaio-bdev_aio: | ||
legend: 'libaio ($\bf{bdev\_aio}$)' | ||
color: "#4a1486" | ||
marker: "D" # diamond | ||
hatch: "O" | ||
|
||
io_uring-bdev_uring: | ||
legend: 'uring $\bf{bdev\_uring}$' | ||
color: "#807dba" | ||
marker: "d" # thin_diamond | ||
hatch: "O" | ||
|
||
ioctl-xnvme: | ||
legend: 'ioctl ($\bf{xnvme}$)' | ||
color: "#807dba" | ||
marker: "d" # thin_diamond | ||
hatch: "O" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
# Limits on plots, this is to ensure that different plots are visually comparable | ||
barplot: | ||
y_lim: [0, 140000] | ||
lineplot: | ||
y_lim: [0, 1200000] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
# Limits on plots, this is to ensure that different plots are visually comparable | ||
barplot: | ||
y_lim: [0, 140000] | ||
lineplot: | ||
y_lim: [0, 2750000] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
# Limits on plots, this is to ensure that different plots are visually comparable | ||
barplot: | ||
y_lim: [0, 195000] | ||
lineplot: | ||
y_lim: [0, 2750000] |
Oops, something went wrong.