Merge pull request 'docs(readme): pin benchmark table to v0.1.1' (#3) from docs/bench-v0.1.1 into main
Reviewed-on: https://git.bnema.dev/bnema/kvconf/pulls/3
1 file · +6 -6
M README.md +6 -6
| @@ -110,18 +110,18 @@ skips saves that change no value. | |||
| 110 | 110 | ||
| 111 | 111 | ## Performance | |
| 112 | 112 | ||
| 113 | - | Measured at `v0.1.0` (`3b1b6ef`, 2026-10-10) with Go 1.27.1 on linux/amd64 | |
| 113 | + | Measured at `v0.1.1` (`ebc8127`, 2026-10-10) with Go 1.27.1 on linux/amd64 | |
| 114 | 114 | with an AMD Ryzen 9 7900X3D. Values are medians of 6 runs. The input is a | |
| 115 | 115 | realistic ~2.9 KB config of 100 lines with comments, 60 binds and 8 outputs. | |
| 116 | 116 | ||
| 117 | 117 | | Benchmark | Time/op | Throughput | Bytes/op | Allocs/op | | |
| 118 | 118 | |---|---:|---:|---:|---:| | |
| 119 | - | | `Parse` (file to entries) | 3.9 µs | 755 MB/s | 10.4 KiB | 5 | | |
| 120 | - | | `Unmarshal` (file to struct, maps included) | 12.5 µs | 232 MB/s | 21.7 KiB | 47 | | |
| 121 | - | | `Decode` (5 scalar entries) | 177 ns | | 112 B | 1 | | |
| 119 | + | | `Parse` (file to entries) | 3.9 µs | 744 MB/s | 10.4 KiB | 5 | | |
| 120 | + | | `Unmarshal` (file to struct, maps included) | 12.2 µs | 238 MB/s | 21.7 KiB | 47 | | |
| 121 | + | | `Decode` (5 scalar entries) | 171 ns | | 112 B | 1 | | |
| 122 | 122 | | `Marshal` (struct to file) | 11.6 µs | | 15.5 KiB | 19 | | |
| 123 | - | | `Set` (edit one key in place) | 2.4 µs | | 10.5 KiB | 5 | | |
| 124 | - | | `Watch` (one write to one report, inotify) | 5.5 µs | | 256 B | 2 | | |
| 123 | + | | `Set` (edit one key in place) | 2.5 µs | | 10.5 KiB | 5 | | |
| 124 | + | | `Watch` (one write to one report, inotify) | 5.3 µs | | 256 B | 2 | | |
| 125 | 125 | ||
| 126 | 126 | Reproduce with: | |
| 127 | 127 | ||
| @@ -110,18 +110,18 @@ skips saves that change no value. | |||||
| 110 | 110 | ||||
| 111 | ## Performance | 111 | ## Performance | ||
| 112 | 112 | ||||
| 113 | - | Measured at `v0.1.0` (`3b1b6ef`, 2026-10-10) with Go 1.27.1 on linux/amd64 | 113 | + | Measured at `v0.1.1` (`ebc8127`, 2026-10-10) with Go 1.27.1 on linux/amd64 |
| 114 | with an AMD Ryzen 9 7900X3D. Values are medians of 6 runs. The input is a | 114 | with an AMD Ryzen 9 7900X3D. Values are medians of 6 runs. The input is a | ||
| 115 | realistic ~2.9 KB config of 100 lines with comments, 60 binds and 8 outputs. | 115 | realistic ~2.9 KB config of 100 lines with comments, 60 binds and 8 outputs. | ||
| 116 | 116 | ||||
| 117 | | Benchmark | Time/op | Throughput | Bytes/op | Allocs/op | | 117 | | Benchmark | Time/op | Throughput | Bytes/op | Allocs/op | | ||
| 118 | |---|---:|---:|---:|---:| | 118 | |---|---:|---:|---:|---:| | ||
| 119 | - | | `Parse` (file to entries) | 3.9 µs | 755 MB/s | 10.4 KiB | 5 | | 119 | + | | `Parse` (file to entries) | 3.9 µs | 744 MB/s | 10.4 KiB | 5 | |
| 120 | - | | `Unmarshal` (file to struct, maps included) | 12.5 µs | 232 MB/s | 21.7 KiB | 47 | | 120 | + | | `Unmarshal` (file to struct, maps included) | 12.2 µs | 238 MB/s | 21.7 KiB | 47 | |
| 121 | - | | `Decode` (5 scalar entries) | 177 ns | | 112 B | 1 | | 121 | + | | `Decode` (5 scalar entries) | 171 ns | | 112 B | 1 | |
| 122 | | `Marshal` (struct to file) | 11.6 µs | | 15.5 KiB | 19 | | 122 | | `Marshal` (struct to file) | 11.6 µs | | 15.5 KiB | 19 | | ||
| 123 | - | | `Set` (edit one key in place) | 2.4 µs | | 10.5 KiB | 5 | | 123 | + | | `Set` (edit one key in place) | 2.5 µs | | 10.5 KiB | 5 | |
| 124 | - | | `Watch` (one write to one report, inotify) | 5.5 µs | | 256 B | 2 | | 124 | + | | `Watch` (one write to one report, inotify) | 5.3 µs | | 256 B | 2 | |
| 125 | 125 | ||||
| 126 | Reproduce with: | 126 | Reproduce with: | ||
| 127 | 127 | ||||