Commit 80b7b7e
Ship rpc_dist_v2.json and add p99_9/p99_99 percentile support
Summary:
The original rpc_dist.json (sampled from prod multifeed_aggregator) only carried percentiles up to p99 plus max. With per-method max latencies as high as 28 seconds (mock_handler_actual measurements), linear interpolation between p99 and max severely overstates the latency in the 99th-99.99th percentile band: for streamData, p99=6.8ms but max=26.5s, so a uniform sample at p=0.995 lands on ~13s instead of the actual ~10ms territory. The result is that the leaf-side fanout (issueOutboundFanout collectAll) ends up dominated by these inflated tail samples on a sizable fraction of requests, which is what the v1 mock_services experiments observed (fanout_total p50 ≤ 16.7s on BGM).
This commit:
* Replaces rpc_dist.json with rpc_dist_v2.json, which carries explicit p99_9 and p99_99 buckets for every distribution. The narrower interpolation bands give a much more faithful reproduction of the prod tail without being dominated by single-digit outlier samples.
* Adds "p99_9" (0.9990) and "p99_99" (0.9999) to PercentileSampler::kPercentiles() so the loader picks them up. Order is preserved ascending so std::lower_bound continues to work without re-sorting.
* Updates the doc comment to reflect the new keys and explain the rationale.
Differential Revision: D1051192281 parent a9e5733 commit 80b7b7e
3 files changed
Lines changed: 1309 additions & 1070 deletions
File tree
- packages/feedsim
- third_party/src/workloads/ranking
0 commit comments