Skip to content

Measure pacing and rtt spread#24

Merged
Alan-Jowett merged 1 commit into
mainfrom
measure_pacing
Dec 5, 2025
Merged

Measure pacing and rtt spread#24
Alan-Jowett merged 1 commit into
mainfrom
measure_pacing

Conversation

@Alan-Jowett

Copy link
Copy Markdown
Owner

This pull request adds support for tracking and reporting inter-packet pacing statistics in addition to the existing round-trip time (RTT) metrics in the client. The changes include collecting per-worker pacing samples, merging them, and outputting pacing percentiles alongside RTT percentiles in both console and JSON output.

Pacing statistics collection and reporting:

  • Added a per-worker TDigest for collecting inter-packet pacing intervals (in milliseconds), along with a timestamp for calculating intervals in client_worker_context and global pacing digests (g_worker_pacing_tdigests, g_overall_pacing_tdigest).
  • Implemented a new post_pacing function to record pacing samples and rotate the per-worker pacing digest when a threshold is reached.
  • Updated the worker thread to compute and record pacing intervals for each packet sent, posting pacing digests at the end of the worker's run. [1] [2]
  • Modified the digest merge logic to include merging of pacing digests into the overall pacing digest.

Output enhancements:

  • Updated console output to print pacing percentiles (every 10% and high percentiles) alongside RTT percentiles.
  • Extended JSON output to include pacing percentiles (every 10% and high percentiles) in addition to RTT percentiles.

Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
@Alan-Jowett
Alan-Jowett merged commit e09a2b0 into main Dec 5, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant