Skip to content

[forge] Add mainnet-like P90 latency test as land blocking default#19302

Closed
danielxiangzl wants to merge 2 commits into
mainfrom
daniel/latency-p90-forge-test
Closed

[forge] Add mainnet-like P90 latency test as land blocking default#19302
danielxiangzl wants to merge 2 commits into
mainfrom
daniel/latency-p90-forge-test

Conversation

@danielxiangzl
Copy link
Copy Markdown
Contributor

Summary

  • Replaces the land_blocking forge suite with a latency-focused test that uses a mainnet-representative validator distribution (~70% EU, ~20% NA, ~10% Asia)
  • The previous default used an even 4-way split (25% each region), which over-weights Asia and under-weights EU relative to actual mainnet (~70% EU, ~25% NA, ~2% Asia)
  • The new distribution causes EU proposers to dominate rounds as they do on mainnet, exercising the actual P90 latency bottlenecks (distant proposers racing with EU batch arrival)
  • Asia is intentionally over-represented (2% → 10%) so inter-continental tail latency is exercised even with only 20 validators

Test plan

  • Trigger Actions → Adhoc Forge with default FORGE_TEST_SUITE=land_blocking to validate the test runs and latency thresholds are reasonable (P50 ≤1.5s, P90 ≤2.5s, P99 ≤4.0s at 3500 TPS)

🤖 Generated with Claude Code

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@danielxiangzl danielxiangzl force-pushed the daniel/latency-p90-forge-test branch from 16dc6a9 to 91a64aa Compare April 2, 2026 02:22
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@danielxiangzl danielxiangzl added CICD:build-failpoints-images Build failpoints docker image CICD:run-forge-e2e-perf Run the e2e perf forge only and removed CICD:run-forge-e2e-perf Run the e2e perf forge only CICD:build-failpoints-images Build failpoints docker image labels Apr 3, 2026
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

danielxiangzl and others added 2 commits April 3, 2026 13:11
Replaces the land_blocking forge suite with a latency-focused test that
uses a mainnet-representative validator distribution (~70% EU, ~20% NA,
~10% Asia) instead of the previous even 25%/25%/25%/25% four-region split.

The even split over-weights Asia (25% vs ~2% on mainnet) and under-weights
EU, making P90 thresholds misleading. The new distribution causes EU
proposers to dominate rounds as they do on mainnet, exercising the actual
latency bottlenecks (distant proposers racing with EU batch arrival).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@danielxiangzl danielxiangzl force-pushed the daniel/latency-p90-forge-test branch from 7f216b8 to 825c202 Compare April 3, 2026 20:11
@github-actions

This comment has been minimized.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 3, 2026

✅ Forge suite realistic_env_max_load success on 825c202056fc22720d13fc2cfd68722f16de2a92

performance benchmark : committed: 3499.99 txn/s, latency: 281.60 ms, (p50: 200 ms, p70: 300, p90: 300 ms, p99: 800 ms), latency samples: 28540
Latency breakdown for phase 0: ["MempoolToBlockCreation: max: 0.140, avg: 0.104", "ConsensusProposalToOrdered: max: 0.090, avg: 0.088", "ConsensusOrderedToCommit: max: 0.017, avg: 0.015", "ConsensusProposalToCommit: max: 0.107, avg: 0.103"]
Max non-epoch-change gap was: 1 rounds at version 5415 (avg 0.00) [limit 10], 1.12s no progress at version 788501 (avg 0.05s) [limit 30].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 10], 0.00s no progress at version 0 (avg 0.00s) [limit 30].
Test Ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD:run-forge-e2e-perf Run the e2e perf forge only

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant