GitHub user x-at-01 added a comment to the discussion: Sharing benchmark 
observations on decimal floating-point compression in IoT time-series: 
comparing integer mapping with Gorilla/Chimp

Thank you @HTHou for the detailed and constructive review. Your points 
regarding workload equivalence and measurement rigor are spot on, and I 
appreciate you taking the time to examine the benchmark specifics.

Here is the updated breakdown and clarifications addressing each point:

1. Workload equivalence and timestamp isolation:
You are completely right that the previous graupel wrapper bundled timestamps 
into Point(ts, val) structs, which created asymmetric overhead for Gorilla and 
Chimp in both throughput and bits/value calculation. To eliminate this 
distortion, I have decoupled the benchmarks to operate strictly on raw 
floating-point slices (&[f64] and &[f32]), ensuring that all codecs process 
identical byte payloads without timestamp baggage or allocation artifacts.

2. Cold sampled encoding vs warm cached encoding:
To make the distinction explicit, I now report cold and warm encoding 
throughput separately across the 37 standard datasets from the ACM SIGMOD 2024 
ALP benchmark:
- Cold end-to-end encoding (full parameter sampling, bit-width search, and 
compression): 4.87 GB/s on Apple M2 Max / modern 64-bit cores.
- Warm pure kernel encoding (reusing cached parameters without sampling): 6.02 
GB/s.
- Decompression throughput: reached 32.53 GB/s in the latest fastalp v0.1.37 
release (a 14.7% increase from 28.36 GB/s), compared to reference C++ ALP at 
~20.0 GB/s.

3. Compression ratio across 37 datasets:
Across all 37 public time-series datasets from the SIGMOD 2024 benchmark, the 
total compressed size in v0.1.37 has dropped from 104,465 bytes to 93,909 
bytes. This represents a 10.1% footprint reduction and an 11.2% increase in 
overall compression ratio (reaching 3.23x overall and 6.99x geometric mean, 
compared to 5.93x for C++ ALP). For smooth IoT and sensor data with small 
first-order deltas, relaxing the Delta evaluation threshold allows compression 
ratios up to 431x on near-constant series.

4. Bounded expansion clarification:
I agree with your observation regarding negative expansion. Because fastalp 
prepends a 1-byte self-describing header before raw fallback payloads, 
incompressible data incurs a 1-byte framing overhead (e.g., 8,192 raw bytes 
become 8,193 bytes). Calling it bounded expansion (with at most 1 byte overhead 
per block) is mathematically precise and accurate.

5. Reproducibility:
The standalone benchmark harness, dataset loader, and test suite are available 
in [fastalp](https://github.com/webc-site/wedb_embed/tree/main/fastalp) and 
published on [crates.io](https://crates.io/crates/fastalp). The C++ comparison 
target and dataset reproducer are maintained at https://github.com/x-at-01/ALP.

Thank you again for the feedback; it directly helped improve the clarity and 
rigor of these benchmarks.

GitHub link: 
https://github.com/apache/iotdb/discussions/18581#discussioncomment-18280352

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]

Reply via email to