diff options
Diffstat (limited to 'src/simtest/soak.rs')
| -rw-r--r-- | src/simtest/soak.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/simtest/soak.rs b/src/simtest/soak.rs index c9c9c19..2a9272a 100644 --- a/src/simtest/soak.rs +++ b/src/simtest/soak.rs @@ -140,6 +140,11 @@ async fn soak_with_churn() { SYNC_REPLY_TIMEOUT, crate::transport::sim::DELIVERY_LIMIT, ); + // With `SIM_TOPOLOGY=hyparview`, HyParView's 5, as in production + // (`config::derive_defaults`). + if config.topology == crate::swarm::topology::Kind::Hyparview { + config.neighbours_k = 5; + } }; let genesis = ids[0].as_str(); let mut nodes = vec![sim.start_with(genesis, &[], Start::Genesis, timing)]; @@ -289,14 +294,19 @@ async fn soak_with_churn() { .metrics() .num_alive_tasks(); println!( - "soak with churn: {writes} writes, {away_turn} times away, {restart_turn} restarts; \ + "soak with churn ({}, {}): {writes} writes, {away_turn} times away, {restart_turn} restarts; \ propagation: {} changes, mean {} ms, p99 within {}", + nodes[0].topology().name(), + nodes[0].dissemination().name(), propagation.count, propagation.sum_ms / propagation.count.max(1), percentile_bound(&propagation, 0.99) .map_or("more than an hour".to_owned(), |ms| format!("{ms} ms")), ); super::bench::sent_kept(&mut out, &nodes).await; + // For PlumTree and HyParView: their links and views at the end (nothing otherwise). + super::bench::eager_links(&mut out, &nodes, &sim.net); + super::bench::active_views(&mut out, &nodes); print!("{out}"); println!( " per node at most: {peers} peers, round trips of {rtts}, throughput of \ |
