docs: tools to measure how a range reader would read HDF5

inventory.py counts the functions and call sites that take the whole
file as &[u8]; range-trace (standalone crate, x86-64 Linux) records every
load clawhdf5 makes from a file by mprotect + single-step, unchanged
library code; libhdf5_reads.py counts libhdf5's reads through h5py's
fileobj driver and prints a dataset's chunk extents.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
osobh
2026-09-26 10:17:02 -05:00
co-authored by Claude Opus 5.5
parent de2a53f613
commit c5cd14c2b2
4 changed files with 621 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
[package]
name = "range-trace"
version = "0.1.0"
edition = "2024"
rust-version = "1.92"
publish = false
description = "Records which byte ranges of an HDF5 file the clawhdf5 facade reads (docs/design/range-reads.md)"
# Outside the main workspace on purpose: a measurement tool for a design
# document, never built by `cargo test --workspace`. x86-64 Linux only.
[workspace]
[dependencies]
# Default features minus nothing: `parallel` is off by default, and the tracer
# relies on every read happening on the main thread.
clawhdf5 = { path = "../../../../crates/clawhdf5" }
libc = "0.2"