Skip to content

Commit 68505aa

Browse files
bench: current Wayland matrix reports
Retire the 0.5.0 baseline report in favor of fresh runs against the slimmed tree (same host, same methodology, vs awww 0.12.1).
1 parent 9a3d9a6 commit 68505aa

1 file changed

Lines changed: 35 additions & 35 deletions

File tree

benchmarks/wallr-vs-awww-20260916-152528.md renamed to benchmarks/wallr-vs-awww-20260918-093117.md

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
> Production benchmark report for wallpaper switching performance.
44
> Lower latency, RAM, and CPU values are better.
55
6-
- Date (UTC): 2026-09-16 15:25:28
6+
- Date (UTC): 2026-09-18 09:31:17
77
- Host: nyx
88
- Wallr client binary: `/home/programmersd/Projects/github/wallr/target/release/wallr`
9-
- Benchmark IPC socket: `/run/user/1000/wallr-benchmark-20260916-152528.sock`
10-
- Wallr version: wallr 0.5.0
9+
- Benchmark IPC socket: `/run/user/1000/wallr-benchmark-20260918-093117.sock`
10+
- Wallr version: wallr 0.6.0
1111
- awww version: awww 0.12.1
1212
- Wayland display: wayland-1
1313

@@ -26,16 +26,16 @@
2626

2727
| Program | RAM (MiB) | CPU | Threads |
2828
|:--|--:|--:|--:|
29-
| Wallr | 38.0 | 1.8% | 3 |
30-
| awww | 2.2 | 0.8% | 1 |
29+
| Wallr | 29.3 | 2.7% | 3 |
30+
| awww | 26.3 | 2.9% | 1 |
3131

3232
| Program | RSS (MiB) | PSS (MiB) | Anonymous (MiB) | Private (MiB) | Non-anonymous RSS (MiB) |
3333
|:--|--:|--:|--:|--:|--:|
34-
| Wallr | 38.0 | 32.0 | 5.7 | 30.7 | 32.4 |
35-
| awww | 2.2 | 0.2 | 0.1 | 0.2 | 2.1 |
34+
| Wallr | 29.3 | 21.7 | 5.5 | 19.5 | 23.8 |
35+
| awww | 26.3 | 16.4 | 0.2 | 8.4 | 26.1 |
3636

37-
> 🏆 Winner (idle baseline RAM): awww: 17.29× leaner than Wallr (2.2 MiB vs 38.0 MiB).
38-
> ℹ️ CPU snapshot (idle baseline): Wallr 1.7% vs awww 0.8% (instant sample, noisy).
37+
> 🏆 Winner (idle baseline RAM): awww: 1.11× leaner than Wallr (26.3 MiB vs 29.3 MiB).
38+
> ℹ️ CPU snapshot (idle baseline): Wallr 2.7% vs awww 2.9% (instant sample, noisy).
3939
4040
## ⚡ Hot same-image static latency
4141

@@ -44,10 +44,10 @@ This measures repeated static requests with transitions disabled.
4444

4545
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
4646
|:---|---:|---:|---:|---:|
47-
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_04.png' --duration 0 --no-theme` | 21.4 ± 1.9 | 18.6 | 25.9 | 1.00 |
48-
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_04.png'` | 24.6 ± 1.6 | 22.0 | 27.5 | 1.15 ± 0.13 |
47+
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_04.png' --duration 0 --no-theme` | 21.2 ± 2.6 | 17.3 | 27.6 | 1.00 |
48+
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_04.png'` | 25.8 ± 1.9 | 22.6 | 29.8 | 1.22 ± 0.17 |
4949

50-
> 🏆 Winner: Wallr: 1.15× faster than awww (21.4 ms vs 24.6 ms).
50+
> 🏆 Winner: Wallr: 1.22× faster than awww (21.2 ms vs 25.8 ms).
5151
5252
## 🚀 Zero-duration static path
5353

@@ -57,10 +57,10 @@ Wallr uses `wl_shm` when the output has not used the GPU presentation path; othe
5757

5858
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
5959
|:---|---:|---:|---:|---:|
60-
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_04.png' --duration 0 --no-theme` | 21.6 ± 2.5 | 18.7 | 27.8 | 1.00 |
61-
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_04.png'` | 24.9 ± 2.1 | 22.2 | 29.9 | 1.15 ± 0.17 |
60+
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_04.png' --duration 0 --no-theme` | 21.5 ± 2.6 | 16.9 | 25.8 | 1.00 |
61+
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_04.png'` | 26.0 ± 2.0 | 23.6 | 30.8 | 1.21 ± 0.17 |
6262

63-
> 🏆 Winner: Wallr: 1.15× faster than awww (21.6 ms vs 24.9 ms).
63+
> 🏆 Winner: Wallr: 1.21× faster than awww (21.5 ms vs 26.0 ms).
6464
6565
## 🔄 Distinct-image switch latency
6666

@@ -70,24 +70,24 @@ This measures changing to several different images.
7070
### 🖼️ image_04.png
7171
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
7272
|:---|---:|---:|---:|---:|
73-
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_04.png' --duration 0 --no-theme` | 24.3 ± 3.0 | 20.5 | 28.4 | 1.00 |
74-
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_04.png'` | 25.0 ± 2.6 | 23.1 | 29.4 | 1.03 ± 0.16 |
73+
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_04.png' --duration 0 --no-theme` | 19.0 ± 2.1 | 16.9 | 21.8 | 1.00 |
74+
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_04.png'` | 26.8 ± 1.5 | 25.0 | 28.9 | 1.41 ± 0.17 |
7575

76-
> 🏆 Winner: Wallr: 1.03× faster than awww (24.3 ms vs 25.0 ms).
76+
> 🏆 Winner: Wallr: 1.41× faster than awww (19.0 ms vs 26.8 ms).
7777
### 🖼️ image_05.png
7878
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
7979
|:---|---:|---:|---:|---:|
80-
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_05.png' --duration 0 --no-theme` | 42.2 ± 42.7 | 20.8 | 118.5 | 1.00 |
81-
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_05.png'` | 130.3 ± 1.0 | 128.9 | 131.4 | 3.09 ± 3.12 |
80+
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_05.png' --duration 0 --no-theme` | 18.2 ± 1.4 | 16.7 | 20.3 | 1.00 |
81+
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_05.png'` | 130.0 ± 3.4 | 127.8 | 135.8 | 7.13 ± 0.57 |
8282

83-
> 🏆 Winner: Wallr: 3.09× faster than awww (42.2 ms vs 130.3 ms).
83+
> 🏆 Winner: Wallr: 7.14× faster than awww (18.2 ms vs 130.0 ms).
8484
### 🖼️ image_06.png
8585
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
8686
|:---|---:|---:|---:|---:|
87-
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_06.png' --duration 0 --no-theme` | 25.8 ± 3.5 | 21.9 | 30.2 | 1.06 ± 0.20 |
88-
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_06.png'` | 24.3 ± 3.3 | 21.7 | 29.9 | 1.00 |
87+
| `wallr set '/home/programmersd/Projects/github/wallr/samples/image_06.png' --duration 0 --no-theme` | 19.7 ± 1.4 | 18.2 | 21.4 | 1.00 |
88+
| `awww img '/home/programmersd/Projects/github/wallr/samples/image_06.png'` | 25.0 ± 0.9 | 23.7 | 25.8 | 1.27 ± 0.10 |
8989

90-
> 🏆 Winner: awww: 1.06× faster than Wallr (24.3 ms vs 25.8 ms).
90+
> 🏆 Winner: Wallr: 1.27× faster than awww (19.7 ms vs 25.0 ms).
9191
9292
## 🎞️ Animated GIF submission latency
9393

@@ -97,27 +97,27 @@ smoothness and steady-state animation cost require a separate profiler.
9797

9898
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
9999
|:---|---:|---:|---:|---:|
100-
| `wallr set '/home/programmersd/Projects/github/wallr/samples/extra.gif' --duration 0 --no-theme` | 29.3 ± 9.6 | 21.5 | 45.3 | 1.00 |
101-
| `awww img '/home/programmersd/Projects/github/wallr/samples/extra.gif'` | 35.1 ± 6.4 | 28.6 | 44.0 | 1.20 ± 0.45 |
100+
| `wallr set '/home/programmersd/Projects/github/wallr/samples/extra.gif' --duration 0 --no-theme` | 26.3 ± 5.8 | 20.9 | 35.9 | 1.00 |
101+
| `awww img '/home/programmersd/Projects/github/wallr/samples/extra.gif'` | 35.9 ± 6.0 | 30.6 | 43.6 | 1.37 ± 0.38 |
102102

103-
> 🏆 Winner: Wallr: 1.20× faster than awww (29.3 ms vs 35.1 ms).
103+
> 🏆 Winner: Wallr: 1.37× faster than awww (26.3 ms vs 35.9 ms).
104104
105105
## 🧘 Post-workload resident state
106106

107107
This shows memory and CPU after all wallpaper changes finish.
108108

109109
| Program | RAM (MiB) | CPU | Threads |
110110
|:--|--:|--:|--:|
111-
| Wallr | 137.9 | 4.1% | 11 |
112-
| awww | 2.2 | 0.8% | 1 |
111+
| Wallr | 49.3 | 4.3% | 7 |
112+
| awww | 2.6 | 5.4% | 1 |
113113

114114
| Program | RSS (MiB) | PSS (MiB) | Anonymous (MiB) | Private (MiB) | Non-anonymous RSS (MiB) |
115115
|:--|--:|--:|--:|--:|--:|
116-
| Wallr | 137.9 | 124.1 | 75.7 | 116.9 | 62.1 |
117-
| awww | 2.2 | 0.2 | 0.1 | 0.2 | 2.1 |
116+
| Wallr | 49.3 | 41.2 | 16.1 | 38.8 | 33.2 |
117+
| awww | 2.6 | 0.6 | 0.2 | 0.5 | 2.4 |
118118

119-
> 🏆 Winner (post-workload RAM): awww: 62.46× leaner than Wallr (2.2 MiB vs 137.9 MiB).
120-
> ℹ️ CPU snapshot (post-workload): Wallr 4.1% vs awww 0.8% (instant sample, noisy).
119+
> 🏆 Winner (post-workload RAM): awww: 19.31× leaner than Wallr (2.6 MiB vs 49.3 MiB).
120+
> ℹ️ CPU snapshot (post-workload): Wallr 4.3% vs awww 5.4% (instant sample, noisy).
121121
122122
## 🩺 Daemon health
123123

@@ -127,7 +127,7 @@ This shows memory and CPU after all wallpaper changes finish.
127127

128128
## 🏁 Production verdict
129129

130-
> 🏆 Overall winner: Wallr: 5 round(s) won vs 3 for awww (0 tied).
130+
> 🏆 Overall winner: Wallr: 6 round(s) won vs 2 for awww (0 tied).
131131
132132
Wallr and awww are optimized for different trade-offs. This run measures
133133
Wallr's switching latency against awww's switching latency. It does not
@@ -141,4 +141,4 @@ Measured target: Wallr is optimized to lead in static switching,
141141
zero-duration compositor commits, distinct-image replacement, and
142142
duplicate-request handling. Other cases remain evidence-driven.
143143

144-
Report saved to: `/home/programmersd/Projects/github/wallr/benchmarks/wallr-vs-awww-20260916-152528.md`
144+
Report saved to: `/home/programmersd/Projects/github/wallr/benchmarks/wallr-vs-awww-20260918-093117.md`

0 commit comments

Comments
 (0)