Skip to content

Commit 9ac9fe4

Browse files
metaspaceojeda
authored andcommitted
NVMe driver: add v6.8 benchmarks
Signed-off-by: Andreas Hindborg <[email protected]>
1 parent 654a046 commit 9ac9fe4

File tree

4 files changed

+4170
-1
lines changed

4 files changed

+4170
-1
lines changed

book.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ create-missing = false
1111
git-repository-url = "https://github.com/Rust-for-Linux/rust-for-linux.com"
1212
edit-url-template = ""
1313
no-section-label = true
14+
mathjax-support = true
1415

1516
[output.html.fold]
1617
enable = true

src/NVMe-driver.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ implementation language for high performance device drivers.
77

88

99
The Linux Rust NVMe driver lives
10-
[here](https://github.com/metaspace/linux/tree/nvme). This branch is routinely
10+
[here](https://github.com/metaspace/linux/tree/rnvme). This branch is routinely
1111
rebased on upstream Linux releases. Please be aware that the `nvme` branch is
1212
force pushed without notice. The version based on the deprecated `rust` branch
1313
is available [here](https://github.com/metaspace/linux/tree/nvme-rust).
@@ -23,6 +23,29 @@ The driver is not currently suitable for general use.
2323
[slides](https://lpc.events/event/16/contributions/1180/attachments/1017/1961/deck.pdf)
2424
and [video](https://lpc.events/event/16/contributions/1180/attachments/1017/2249/go)
2525

26+
## 6.8 Rebase Performance ([`rnvme-v6.8`](https://github.com/metaspace/linux/tree/rnvme-v6.8))
27+
28+
### Setup
29+
30+
- AMD Ryzen 5 7600
31+
- 32 GB 4800 MT/s DDR5 on one channel
32+
- 1x Samsung 990 Pro 1TB (PCIe 4.0 x4 16 GT/S)
33+
- NixOS 23.11
34+
35+
### Results
36+
37+
- 40 samples
38+
- Difference of means modeled with t-distribution
39+
- P95 confidence intervals
40+
41+
![](rnvme/nvme-v6.8-absolute.svg)
42+
43+
![](rnvme/nvme-v6.8-relative.svg)
44+
45+
The graph shows \\( \frac{R-C}{C} \\) where C is IO/s for the C driver and R is
46+
IO/s for the Rust driver. Thus, negative means the C driver is faster while
47+
positive means the Rust driver is faster.
48+
2649
## 6.7 Rebase Performance ([`nvme-6.7`](https://github.com/metaspace/linux/tree/nvme-6.7))
2750

2851
### Setup

0 commit comments

Comments
 (0)