Skip to content

Conversation

@dshulyak
Copy link
Contributor

i am using this binary for simulations, would like to merge so that it is easier to use it in various branches

@dshulyak dshulyak force-pushed the dmitry/latency-raptorcast branch from 9a5c66d to b8ebb41 Compare October 23, 2025 08:19
@dshulyak dshulyak changed the title raptorcast: added latency measurement example raptorcast: latency measurement binary Oct 23, 2025
@dshulyak dshulyak force-pushed the dmitry/latency-raptorcast branch 4 times, most recently from 9ad57fc to 85eeb89 Compare October 27, 2025 13:38
@dshulyak dshulyak force-pushed the dmitry/latency-raptorcast branch from 85eeb89 to b2b1b3d Compare October 27, 2025 13:45
@dshulyak dshulyak marked this pull request as ready for review October 27, 2025 14:32
Copilot AI review requested due to automatic review settings October 27, 2025 14:32
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a new latency measurement binary for RaptorCast simulations. The tool enables performance testing by measuring message propagation latency across a cluster of nodes in producer/consumer configurations.

Key Changes:

  • New latency.rs example binary with producer/consumer modes for latency measurement
  • Configuration generation utility for creating test clusters
  • Mock message implementation with timestamp-based latency tracking

Reviewed Changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.

File Description
monad-raptorcast/examples/latency.rs New latency measurement tool with producer/consumer modes and cluster config generation
monad-raptorcast/Cargo.toml Added dependencies for the latency example (jemalloc, toml, serde, humantime, byte-unit, eyre)
Cargo.toml Added workspace dependencies for byte-unit and humantime

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

let udp_addr = SocketAddr::V4(my_config.udp_addr);

let dataplane = DataplaneBuilder::new(&udp_addr, UDP_BW).build();
assert!(dataplane.block_until_ready(Duration::from_secs(2)));
Copy link

Copilot AI Oct 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The assertion provides no helpful error message when the dataplane fails to become ready. Consider replacing with an error that includes context: eyre::ensure!(dataplane.block_until_ready(Duration::from_secs(2)), \"dataplane failed to become ready within 2 seconds\")

Suggested change
assert!(dataplane.block_until_ready(Duration::from_secs(2)));
eyre::ensure!(
dataplane.block_until_ready(Duration::from_secs(2)),
"dataplane failed to become ready within 2 seconds"
);

Copilot uses AI. Check for mistakes.
@dshulyak dshulyak added this pull request to the merge queue Oct 28, 2025
Merged via the queue into master with commit 1952c2b Oct 28, 2025
3 checks passed
@dshulyak dshulyak deleted the dmitry/latency-raptorcast branch October 28, 2025 07:46
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.

4 participants