- 
                Notifications
    
You must be signed in to change notification settings  - Fork 292
 
raptorcast: latency measurement binary #2482
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
9a5c66d    to
    b8ebb41      
    Compare
  
    9ad57fc    to
    85eeb89      
    Compare
  
    85eeb89    to
    b2b1b3d      
    Compare
  
    There was a problem hiding this 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.rsexample 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))); | 
    
      
    
      Copilot
AI
    
    
    
      Oct 27, 2025 
    
  
There was a problem hiding this comment.
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\")
| 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" | |
| ); | 
i am using this binary for simulations, would like to merge so that it is easier to use it in various branches