Skip to content

Commit edd6625

Browse files
Dandandanclaude
andcommitted
Fix latency distributions to match target percentiles
GET: P50≈32ms, P90≈110ms, P99≈200ms LIST: P50≈65ms, P90≈180ms, P99≈400ms Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
1 parent f894ac1 commit edd6625

1 file changed

Lines changed: 11 additions & 5 deletions

File tree

‎benchmarks/src/util/latency_object_store.rs‎

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,20 @@ use object_store::{
3737

3838
/// GET latency distribution, inspired by S3 latencies.
3939
/// Deterministic but shuffled to avoid artificial patterns.
40-
/// Distribution: P50 ~30ms, P75-P90 ~100ms, P99 ~200ms.
41-
const GET_LATENCIES_MS: &[u64] =
42-
&[30, 150, 28, 100, 35, 200, 30, 85, 120, 25, 110, 32, 180, 70];
40+
/// 20 values: 11x P50 (~25-35ms), 5x P75-P90 (~70-110ms), 2x P95 (~120-150ms), 2x P99 (~180-200ms)
41+
/// Sorted: 25,25,28,28,30,30,30,30,32,32,35, 70,85,100,100,110, 130,150, 180,200
42+
/// P50≈32ms, P90≈110ms, P99≈200ms
43+
const GET_LATENCIES_MS: &[u64] = &[
44+
30, 100, 25, 85, 32, 200, 28, 130, 35, 70, 30, 150, 30, 110, 28, 180, 32, 25, 100, 30,
45+
];
4346

4447
/// LIST latency distribution, generally higher than GET.
45-
/// Distribution: P50 ~55ms, P75-P90 ~150ms, P99 ~400ms.
48+
/// 20 values: 11x P50 (~40-70ms), 5x P75-P90 (~120-180ms), 2x P95 (~200-250ms), 2x P99 (~300-400ms)
49+
/// Sorted: 40,40,50,50,55,55,60,60,65,65,70, 120,140,160,160,180, 210,250, 300,400
50+
/// P50≈65ms, P90≈180ms, P99≈400ms
4651
const LIST_LATENCIES_MS: &[u64] = &[
47-
55, 250, 40, 160, 70, 400, 50, 140, 200, 60, 180, 65, 300, 120,
52+
55, 160, 40, 140, 65, 400, 50, 210, 70, 120, 60, 250, 55, 180, 50, 300, 65, 40, 160,
53+
60,
4854
];
4955

5056
/// An ObjectStore wrapper that injects simulated latency on get and list calls.

0 commit comments

Comments
 (0)