Skip to content

Commit 68251c7

Browse files
authored
feat: update benchmark results schema and enhance documentation (#116)
- Bumped the benchmark results schema version to 1.2.0, allowing for new optional fields. - Introduced stable identifiers for benchmark cases to improve compile-time safety. - Updated `ScanResistanceStats` and `AdaptationStats` structs to include new fields for better metrics tracking. - Enhanced the `OpModel` trait documentation to clarify its purpose and usage. - Added a policy selection guide in Markdown format to assist users in choosing appropriate cache policies based on use cases. These changes improve the clarity and usability of benchmark results, while also enhancing the observability of cache performance metrics.
1 parent 025230a commit 68251c7

11 files changed

Lines changed: 2265 additions & 1164 deletions

File tree

bench-support/src/bin/charts_template.html

Lines changed: 398 additions & 251 deletions
Large diffs are not rendered by default.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
| Use Case | Recommended Policy | Why |
2+
|----------|-------------------|-----|
3+
| **General purpose, skewed workloads** | LRU, LFU, S3-FIFO | Best hit rates on Zipfian/skewed patterns |
4+
| **Scan-heavy workloads** | S3-FIFO, Heap-LFU | Scan-resistant, protect hot entries |
5+
| **Low latency required** | LRU, Clock | Fast operations, near O(1) average overhead |
6+
| **Memory constrained** | LRU, Clock | Minimal metadata overhead |
7+
| **Frequency-aware** | LFU, Heap-LFU, LRU-K | Track access frequency for better decisions |
8+
| **Shifting patterns** | S3-FIFO, 2Q | Adapt to changing access patterns |
9+
| **Multi-access patterns** | 2Q, S3-FIFO | Handle mixed one-hit and frequent items |

0 commit comments

Comments
 (0)