Skip to content

Commit f8aaeb3

Browse files
apollo_network_benchmark: add RoundRobin mode to enum and round_duration_seconds arg
1 parent 6bed8fb commit f8aaeb3

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

crates/apollo_network_benchmark/src/bin/broadcast_network_stress_test_node/stress_test_node.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ impl BroadcastNetworkStressTestNode {
9898
/// Determines if this node should broadcast messages based on the mode
9999
pub fn should_broadcast(&self) -> bool {
100100
match self.args.user.mode {
101-
Mode::AllBroadcast => true,
101+
Mode::AllBroadcast | Mode::RoundRobin => true,
102102
Mode::OneBroadcast => {
103103
let broadcaster_id = Self::get_broadcaster_id(&self.args);
104104
self.args.runner.id == broadcaster_id

crates/apollo_network_benchmark/src/node_args.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ pub enum Mode {
1111
/// Only the node specified by --broadcaster broadcasts messages
1212
#[value(name = "one")]
1313
OneBroadcast,
14+
/// Nodes take turns broadcasting in round-robin fashion
15+
#[value(name = "rr")]
16+
RoundRobin,
1417
}
1518

1619
#[derive(Debug, Clone, ValueEnum, PartialEq, Eq, Serialize, Deserialize)]
@@ -83,6 +86,10 @@ pub struct UserArgs {
8386
#[arg(long, env, required_if_eq("mode", "one"))]
8487
pub broadcaster: Option<u64>,
8588

89+
/// Duration each node broadcasts before switching (in seconds) - for RoundRobin mode
90+
#[arg(long, env, default_value = "3")]
91+
pub round_duration_seconds: u64,
92+
8693
/// Size of StressTestMessage
8794
#[arg(long, env, default_value = "1024")]
8895
pub message_size_bytes: usize,

0 commit comments

Comments
 (0)