stratum-mining / stratum

stratum
https://stratumprotocol.org
Other
224 stars 130 forks source link

Allow altering messages exchanged by roles in test env #1228

Closed jbesraa closed 1 week ago

jbesraa commented 1 month ago

resolves #1227

codecov[bot] commented 1 month ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 19.63%. Comparing base (e650561) to head (bd27d9b). Report is 3 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #1228 +/- ## ========================================== + Coverage 19.30% 19.63% +0.33% ========================================== Files 164 153 -11 Lines 10849 10029 -820 ========================================== - Hits 2094 1969 -125 + Misses 8755 8060 -695 ``` | [Flag](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | Coverage Δ | | |---|---|---| | [binary_codec_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [binary_serde_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `3.65% <ø> (ø)` | | | [binary_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `5.46% <ø> (ø)` | | | [bip32_derivation-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [buffer_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `25.02% <ø> (ø)` | | | [codec_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.01% <ø> (ø)` | | | [common_messages_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.13% <ø> (ø)` | | | [const_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [error_handling-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [framing_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.29% <ø> (ø)` | | | [jd_client-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [jd_server-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `7.79% <ø> (ø)` | | | [job_declaration_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [key-utils-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `2.39% <ø> (ø)` | | | [mining-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `2.51% <ø> (ø)` | | | [mining_device-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [mining_proxy_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.70% <ø> (ø)` | | | [noise_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `4.35% <ø> (ø)` | | | [pool_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `1.38% <ø> (ø)` | | | [protocols](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `24.72% <ø> (ø)` | | | [roles](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `3.64% <ø> (-2.92%)` | :arrow_down: | | [roles_logic_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `8.06% <ø> (ø)` | | | [sv2_ffi-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [template_distribution_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `0.00% <ø> (ø)` | | | [translator_sv2-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `?` | | | [utils](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `25.13% <ø> (ø)` | | | [v1-coverage](https://app.codecov.io/gh/stratum-mining/stratum/pull/1228/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining) | `2.47% <ø> (ø)` | | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=stratum-mining#carryforward-flags-in-the-pull-request-comment) to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


🚨 Try these New Features:

github-actions[bot] commented 1 month ago

🐰 Bencher Report

Branch1228/merge
Testbedsv1

⚠️ WARNING: The following Measure does not have a Threshold. Without a Threshold, no Alerts will ever be generated!

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds CLI flag.

Click to view all benchmark results
BenchmarkLatencynanoseconds (ns)
client-submit-serialize📈 view plot
⚠️ NO THRESHOLD
6,540.80
client-submit-serialize-deserialize📈 view plot
⚠️ NO THRESHOLD
7,579.40
client-submit-serialize-deserialize-handle/client-submit-serialize-deserialize-handle📈 view plot
⚠️ NO THRESHOLD
8,181.50
client-sv1-authorize-serialize-deserialize-handle/client-sv1-authorize-serialize-deserialize-handle📈 view plot
⚠️ NO THRESHOLD
932.93
client-sv1-authorize-serialize-deserialize/client-sv1-authorize-serialize-deserialize📈 view plot
⚠️ NO THRESHOLD
724.19
client-sv1-authorize-serialize/client-sv1-authorize-serialize📈 view plot
⚠️ NO THRESHOLD
253.31
client-sv1-get-authorize/client-sv1-get-authorize📈 view plot
⚠️ NO THRESHOLD
155.98
client-sv1-get-submit📈 view plot
⚠️ NO THRESHOLD
6,358.60
client-sv1-get-subscribe/client-sv1-get-subscribe📈 view plot
⚠️ NO THRESHOLD
273.47
client-sv1-subscribe-serialize-deserialize-handle/client-sv1-subscribe-serialize-deserialize-handle📈 view plot
⚠️ NO THRESHOLD
771.18
client-sv1-subscribe-serialize-deserialize/client-sv1-subscribe-serialize-deserialize📈 view plot
⚠️ NO THRESHOLD
634.92
client-sv1-subscribe-serialize/client-sv1-subscribe-serialize📈 view plot
⚠️ NO THRESHOLD
206.43
🐰 View full continuous benchmarking report in Bencher
github-actions[bot] commented 1 month ago

🐰 Bencher Report

Branch1228/merge
Testbedsv2

⚠️ WARNING: The following Measures do not have a Threshold. Without a Threshold, no Alerts will ever be generated!

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds CLI flag.

Click to view all benchmark results
BenchmarkEstimated Cyclesestimated cyclesInstructionsinstructionsL1 AccessesaccessesL2 AccessesaccessesRAM Accessesaccesses
client_sv2_handle_message_common📈 view plot
⚠️ NO THRESHOLD
2,083.00📈 view plot
⚠️ NO THRESHOLD
473.00📈 view plot
⚠️ NO THRESHOLD
738.00📈 view plot
⚠️ NO THRESHOLD
3.00📈 view plot
⚠️ NO THRESHOLD
38.00
client_sv2_handle_message_mining📈 view plot
⚠️ NO THRESHOLD
8,208.00📈 view plot
⚠️ NO THRESHOLD
2,137.00📈 view plot
⚠️ NO THRESHOLD
3,158.00📈 view plot
⚠️ NO THRESHOLD
37.00📈 view plot
⚠️ NO THRESHOLD
139.00
client_sv2_mining_message_submit_standard📈 view plot
⚠️ NO THRESHOLD
6,281.00📈 view plot
⚠️ NO THRESHOLD
1,750.00📈 view plot
⚠️ NO THRESHOLD
2,551.00📈 view plot
⚠️ NO THRESHOLD
18.00📈 view plot
⚠️ NO THRESHOLD
104.00
client_sv2_mining_message_submit_standard_serialize📈 view plot
⚠️ NO THRESHOLD
14,628.00📈 view plot
⚠️ NO THRESHOLD
4,694.00📈 view plot
⚠️ NO THRESHOLD
6,763.00📈 view plot
⚠️ NO THRESHOLD
40.00📈 view plot
⚠️ NO THRESHOLD
219.00
client_sv2_mining_message_submit_standard_serialize_deserialize📈 view plot
⚠️ NO THRESHOLD
27,460.00📈 view plot
⚠️ NO THRESHOLD
10,585.00📈 view plot
⚠️ NO THRESHOLD
15,405.00📈 view plot
⚠️ NO THRESHOLD
80.00📈 view plot
⚠️ NO THRESHOLD
333.00
client_sv2_open_channel📈 view plot
⚠️ NO THRESHOLD
4,387.00📈 view plot
⚠️ NO THRESHOLD
1,461.00📈 view plot
⚠️ NO THRESHOLD
2,157.00📈 view plot
⚠️ NO THRESHOLD
12.00📈 view plot
⚠️ NO THRESHOLD
62.00
client_sv2_open_channel_serialize📈 view plot
⚠️ NO THRESHOLD
13,944.00📈 view plot
⚠️ NO THRESHOLD
5,064.00📈 view plot
⚠️ NO THRESHOLD
7,329.00📈 view plot
⚠️ NO THRESHOLD
35.00📈 view plot
⚠️ NO THRESHOLD
184.00
client_sv2_open_channel_serialize_deserialize📈 view plot
⚠️ NO THRESHOLD
22,699.00📈 view plot
⚠️ NO THRESHOLD
8,027.00📈 view plot
⚠️ NO THRESHOLD
11,674.00📈 view plot
⚠️ NO THRESHOLD
77.00📈 view plot
⚠️ NO THRESHOLD
304.00
client_sv2_setup_connection📈 view plot
⚠️ NO THRESHOLD
4,681.00📈 view plot
⚠️ NO THRESHOLD
1,502.00📈 view plot
⚠️ NO THRESHOLD
2,276.00📈 view plot
⚠️ NO THRESHOLD
12.00📈 view plot
⚠️ NO THRESHOLD
67.00
client_sv2_setup_connection_serialize📈 view plot
⚠️ NO THRESHOLD
16,106.00📈 view plot
⚠️ NO THRESHOLD
5,963.00📈 view plot
⚠️ NO THRESHOLD
8,666.00📈 view plot
⚠️ NO THRESHOLD
39.00📈 view plot
⚠️ NO THRESHOLD
207.00
client_sv2_setup_connection_serialize_deserialize📈 view plot
⚠️ NO THRESHOLD
35,496.00📈 view plot
⚠️ NO THRESHOLD
14,855.00📈 view plot
⚠️ NO THRESHOLD
21,821.00📈 view plot
⚠️ NO THRESHOLD
96.00📈 view plot
⚠️ NO THRESHOLD
377.00
🐰 View full continuous benchmarking report in Bencher
github-actions[bot] commented 1 month ago

🐰 Bencher Report

Branch1228/merge
Testbedsv2

⚠️ WARNING: The following Measure does not have a Threshold. Without a Threshold, no Alerts will ever be generated!

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds CLI flag.

Click to view all benchmark results
BenchmarkLatencynanoseconds (ns)
client_sv2_handle_message_common📈 view plot
⚠️ NO THRESHOLD
44.91
client_sv2_handle_message_mining📈 view plot
⚠️ NO THRESHOLD
73.14
client_sv2_mining_message_submit_standard📈 view plot
⚠️ NO THRESHOLD
14.65
client_sv2_mining_message_submit_standard_serialize📈 view plot
⚠️ NO THRESHOLD
267.73
client_sv2_mining_message_submit_standard_serialize_deserialize📈 view plot
⚠️ NO THRESHOLD
592.70
client_sv2_open_channel📈 view plot
⚠️ NO THRESHOLD
147.54
client_sv2_open_channel_serialize📈 view plot
⚠️ NO THRESHOLD
285.45
client_sv2_open_channel_serialize_deserialize📈 view plot
⚠️ NO THRESHOLD
376.01
client_sv2_setup_connection📈 view plot
⚠️ NO THRESHOLD
160.54
client_sv2_setup_connection_serialize📈 view plot
⚠️ NO THRESHOLD
456.92
client_sv2_setup_connection_serialize_deserialize📈 view plot
⚠️ NO THRESHOLD
978.28
🐰 View full continuous benchmarking report in Bencher
github-actions[bot] commented 1 month ago

🐰 Bencher Report

Branch1228/merge
Testbedsv1

⚠️ WARNING: The following Measures do not have a Threshold. Without a Threshold, no Alerts will ever be generated!

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds CLI flag.

Click to view all benchmark results
BenchmarkEstimated Cyclesestimated cyclesInstructionsinstructionsL1 AccessesaccessesL2 AccessesaccessesRAM Accessesaccesses
get_authorize📈 view plot
⚠️ NO THRESHOLD
8,515.00📈 view plot
⚠️ NO THRESHOLD
3,772.00📈 view plot
⚠️ NO THRESHOLD
5,295.00📈 view plot
⚠️ NO THRESHOLD
7.00📈 view plot
⚠️ NO THRESHOLD
91.00
get_submit📈 view plot
⚠️ NO THRESHOLD
95,430.00📈 view plot
⚠️ NO THRESHOLD
59,522.00📈 view plot
⚠️ NO THRESHOLD
85,510.00📈 view plot
⚠️ NO THRESHOLD
45.00📈 view plot
⚠️ NO THRESHOLD
277.00
get_subscribe📈 view plot
⚠️ NO THRESHOLD
8,034.00📈 view plot
⚠️ NO THRESHOLD
2,848.00📈 view plot
⚠️ NO THRESHOLD
3,984.00📈 view plot
⚠️ NO THRESHOLD
12.00📈 view plot
⚠️ NO THRESHOLD
114.00
serialize_authorize📈 view plot
⚠️ NO THRESHOLD
12,298.00📈 view plot
⚠️ NO THRESHOLD
5,343.00📈 view plot
⚠️ NO THRESHOLD
7,458.00📈 view plot
⚠️ NO THRESHOLD
9.00📈 view plot
⚠️ NO THRESHOLD
137.00
serialize_deserialize_authorize📈 view plot
⚠️ NO THRESHOLD
24,897.00📈 view plot
⚠️ NO THRESHOLD
9,920.00📈 view plot
⚠️ NO THRESHOLD
14,017.00📈 view plot
⚠️ NO THRESHOLD
34.00📈 view plot
⚠️ NO THRESHOLD
306.00
serialize_deserialize_handle_authorize📈 view plot
⚠️ NO THRESHOLD
30,435.00📈 view plot
⚠️ NO THRESHOLD
12,097.00📈 view plot
⚠️ NO THRESHOLD
17,140.00📈 view plot
⚠️ NO THRESHOLD
55.00📈 view plot
⚠️ NO THRESHOLD
372.00
serialize_deserialize_handle_submit📈 view plot
⚠️ NO THRESHOLD
126,589.00📈 view plot
⚠️ NO THRESHOLD
73,363.00📈 view plot
⚠️ NO THRESHOLD
105,189.00📈 view plot
⚠️ NO THRESHOLD
115.00📈 view plot
⚠️ NO THRESHOLD
595.00
serialize_deserialize_handle_subscribe📈 view plot
⚠️ NO THRESHOLD
28,017.00📈 view plot
⚠️ NO THRESHOLD
9,666.00📈 view plot
⚠️ NO THRESHOLD
13,677.00📈 view plot
⚠️ NO THRESHOLD
61.00📈 view plot
⚠️ NO THRESHOLD
401.00
serialize_deserialize_submit📈 view plot
⚠️ NO THRESHOLD
115,479.00📈 view plot
⚠️ NO THRESHOLD
68,223.00📈 view plot
⚠️ NO THRESHOLD
97,934.00📈 view plot
⚠️ NO THRESHOLD
65.00📈 view plot
⚠️ NO THRESHOLD
492.00
serialize_deserialize_subscribe📈 view plot
⚠️ NO THRESHOLD
23,439.00📈 view plot
⚠️ NO THRESHOLD
8,225.00📈 view plot
⚠️ NO THRESHOLD
11,589.00📈 view plot
⚠️ NO THRESHOLD
39.00📈 view plot
⚠️ NO THRESHOLD
333.00
serialize_submit📈 view plot
⚠️ NO THRESHOLD
99,827.00📈 view plot
⚠️ NO THRESHOLD
61,566.00📈 view plot
⚠️ NO THRESHOLD
88,352.00📈 view plot
⚠️ NO THRESHOLD
48.00📈 view plot
⚠️ NO THRESHOLD
321.00
serialize_subscribe📈 view plot
⚠️ NO THRESHOLD
11,375.00📈 view plot
⚠️ NO THRESHOLD
4,195.00📈 view plot
⚠️ NO THRESHOLD
5,840.00📈 view plot
⚠️ NO THRESHOLD
15.00📈 view plot
⚠️ NO THRESHOLD
156.00
🐰 View full continuous benchmarking report in Bencher
plebhash commented 4 weeks ago

after discussing with @jbesraa on the call today, we will potentially pivot this approach towards adding a new primitive (aside to the Sniffer) that is simplified and just "mocks" a dummy role, essentially expecting predefined messages and also responding with predefined messages

plebhash commented 4 weeks ago

(let's assume this new primitive will be called Mock, final name could be changed later)

Mock is created in a way that it has some predefined stack of pair messages, where each pair has:

this stack is represented as a Vec<(AnyMessage, AnyMessage)>


as discussed in the call, here's a dummy test (pseudocode) that could be used to drive the development of this new primitive, at least from a conceptual perspective

the scenario here is:

#[tokio::test]
async fn test_tp_mock_setup_connection_error() {
    let mock_tp_addr = common::get_available_address();
    let sniffer_addr = common::get_available_address();
    let pool_addr = common::get_available_address();

    let mock_tp_expected_setup_connection = ...
    let mock_tp_response_setup_connection_error = ...

    let mock_tp_message_pair = (mock_tp_expected_setup_connection, mock_tp_response_setup_connection_error);

    // this is a very simple test where we only have one pair
    // but the generic case could have multiple pairs
    // the order of each (expected, response) pair within the Vec is also important
    let mock_tp_message_pair_vec = vec![mock_tp_message_pair];

    let mut mock = common::start_mock(mock_tp_addr, mock_tp_message_pair_vec).await;

    let sniffer = common::start_sniffer(sniffer_addr, mock_tp_addr).await;
    let pool = common::start_pool(Some(pool_addr), Some(sniffer_addr)).await;

    assert_common_message!(&sniffer.next_downstream_message(), SetupConnection);

    // this specific assertion is essentially proving that mock_tp is behaving as expected
    assert_common_message!(&sniffer.next_upstream_message(), SetupConnectionError);

   // here it could be interesting to assert the internal state of pool after receiveing SetupConnectionError
   // but essentially this is somewhat outside of the scope of this PR, since we just want to add a new primitive to the IT framework and not necessarily improve testing around the pool role implementation
   // if this assertion proves too challenging, it can be left for some future work
}
jbesraa commented 1 week ago

@plebhash This is ready for review

github-actions[bot] commented 1 week ago

🐰 Bencher Report

Branch2024-10-18-allow-sniffer-to-alter-msgs
Testbedsv2
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Δ%)
Upper Boundary
nanoseconds (ns)
(Limit %)
client_sv2_handle_message_common📈 view plot
🚷 view threshold
44.22
(-0.76%)
46.80
(94.47%)
client_sv2_handle_message_mining📈 view plot
🚷 view threshold
74.67
(-0.60%)
83.08
(89.88%)
client_sv2_mining_message_submit_standard📈 view plot
🚷 view threshold
14.65
(-0.13%)
14.81
(98.90%)
client_sv2_mining_message_submit_standard_serialize📈 view plot
🚷 view threshold
273.89
(+2.96%)
317.12
(86.37%)
client_sv2_mining_message_submit_standard_serialize_deserialize📈 view plot
🚷 view threshold
601.83
(-0.53%)
720.48
(83.53%)
client_sv2_open_channel📈 view plot
🚷 view threshold
167.11
(+10.20%)
191.76
(87.15%)
client_sv2_open_channel_serialize📈 view plot
🚷 view threshold
283.45
(-0.34%)
309.93
(91.45%)
client_sv2_open_channel_serialize_deserialize📈 view plot
🚷 view threshold
399.95
(+5.49%)
418.85
(95.49%)
client_sv2_setup_connection📈 view plot
🚷 view threshold
164.43
(+2.12%)
174.31
(94.33%)
client_sv2_setup_connection_serialize📈 view plot
🚷 view threshold
474.70
(+1.94%)
542.07
(87.57%)
client_sv2_setup_connection_serialize_deserialize📈 view plot
🚷 view threshold
990.61
(+1.53%)
1,050.97
(94.26%)
🐰 View full continuous benchmarking report in Bencher
github-actions[bot] commented 1 week ago

🐰 Bencher Report

Branch2024-10-18-allow-sniffer-to-alter-msgs
Testbedsv1
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Δ%)
Upper Boundary
nanoseconds (ns)
(Limit %)
client-submit-serialize📈 view plot
🚷 view threshold
6,796.90
(+0.87%)
7,132.34
(95.30%)
client-submit-serialize-deserialize📈 view plot
🚷 view threshold
7,632.80
(-0.24%)
7,930.01
(96.25%)
client-submit-serialize-deserialize-handle/client-submit-serialize-deserialize-handle📈 view plot
🚷 view threshold
8,272.90
(+0.76%)
8,545.25
(96.81%)
client-sv1-authorize-serialize-deserialize-handle/client-sv1-authorize-serialize-deserialize-handle📈 view plot
🚷 view threshold
857.94
(-1.63%)
934.91
(91.77%)
client-sv1-authorize-serialize-deserialize/client-sv1-authorize-serialize-deserialize📈 view plot
🚷 view threshold
662.15
(-1.33%)
711.07
(93.12%)
client-sv1-authorize-serialize/client-sv1-authorize-serialize📈 view plot
🚷 view threshold
249.68
(+0.38%)
261.12
(95.62%)
client-sv1-get-authorize/client-sv1-get-authorize📈 view plot
🚷 view threshold
156.17
(-0.73%)
163.32
(95.62%)
client-sv1-get-submit📈 view plot
🚷 view threshold
6,594.20
(+0.94%)
7,176.06
(91.89%)
client-sv1-get-subscribe/client-sv1-get-subscribe📈 view plot
🚷 view threshold
290.34
(+3.45%)
311.70
(93.15%)
client-sv1-subscribe-serialize-deserialize-handle/client-sv1-subscribe-serialize-deserialize-handle📈 view plot
🚷 view threshold
728.48
(-1.02%)
800.39
(91.02%)
client-sv1-subscribe-serialize-deserialize/client-sv1-subscribe-serialize-deserialize📈 view plot
🚷 view threshold
594.19
(-0.54%)
642.84
(92.43%)
client-sv1-subscribe-serialize/client-sv1-subscribe-serialize📈 view plot
🚷 view threshold
207.24
(+0.38%)
221.54
(93.54%)
🐰 View full continuous benchmarking report in Bencher
github-actions[bot] commented 1 week ago

🐰 Bencher Report

Branch2024-10-18-allow-sniffer-to-alter-msgs
Testbedsv2
Click to view all benchmark results
BenchmarkEstimated CyclesBenchmark Result
estimated cycles
(Result Δ%)
Upper Boundary
estimated cycles
(Limit %)
InstructionsBenchmark Result
instructions
(Result Δ%)
Upper Boundary
instructions
(Limit %)
L1 AccessesBenchmark Result
accesses
(Result Δ%)
Upper Boundary
accesses
(Limit %)
L2 AccessesBenchmark Result
accesses
(Result Δ%)
Upper Boundary
accesses
(Limit %)
RAM AccessesBenchmark Result
accesses
(Result Δ%)
Upper Boundary
accesses
(Limit %)
client_sv2_handle_message_common📈 view plot
🚷 view threshold
2,099.00
(+0.21%)
2,207.71
(95.08%)
📈 view plot
🚷 view threshold
473.00
(-0.07%)
488.51
(96.82%)
📈 view plot
🚷 view threshold
734.00
(-0.27%)
757.26
(96.93%)
📈 view plot
🚷 view threshold
7.00
(+30.42%)
13.84
(50.60%)
📈 view plot
🚷 view threshold
38.00
(-0.14%)
41.19
(92.25%)
client_sv2_handle_message_mining📈 view plot
🚷 view threshold
8,200.00
(-0.04%)
8,282.29
(99.01%)
📈 view plot
🚷 view threshold
2,137.00
(-0.03%)
2,143.08
(99.72%)
📈 view plot
🚷 view threshold
3,160.00
(-0.03%)
3,170.57
(99.67%)
📈 view plot
🚷 view threshold
35.00
(-1.39%)
41.94
(83.46%)
📈 view plot
🚷 view threshold
139.00
(+0.01%)
140.82
(98.71%)
client_sv2_mining_message_submit_standard📈 view plot
🚷 view threshold
6,323.00
(+0.68%)
6,394.82
(98.88%)
📈 view plot
🚷 view threshold
1,750.00
(-0.05%)
1,766.87
(99.05%)
📈 view plot
🚷 view threshold
2,548.00
(-0.22%)
2,575.62
(98.93%)
📈 view plot
🚷 view threshold
20.00
(+18.35%)
24.33
(82.21%)
📈 view plot
🚷 view threshold
105.00
(+0.91%)
107.22
(97.93%)
client_sv2_mining_message_submit_standard_serialize📈 view plot
🚷 view threshold
14,720.00
(-0.05%)
14,953.30
(98.44%)
📈 view plot
🚷 view threshold
4,694.00
(-0.02%)
4,710.87
(99.64%)
📈 view plot
🚷 view threshold
6,755.00
(-0.06%)
6,781.80
(99.60%)
📈 view plot
🚷 view threshold
46.00
(+5.96%)
52.92
(86.93%)
📈 view plot
🚷 view threshold
221.00
(-0.22%)
227.44
(97.17%)
client_sv2_mining_message_submit_standard_serialize_deserialize📈 view plot
🚷 view threshold
27,806.00
(+0.98%)
27,819.68
(99.95%)
📈 view plot
🚷 view threshold
10,645.00
(+0.58%)
10,654.37
(99.91%)
📈 view plot
🚷 view threshold
15,506.00
(+0.68%)
15,515.58
(99.94%)
📈 view plot
🚷 view threshold
87.00
(+6.97%)
89.64
(97.05%)
📈 view plot
🚷 view threshold
339.00
(+1.16%)
341.79
(99.18%)
client_sv2_open_channel📈 view plot
🚷 view threshold
4,413.00
(+0.44%)
4,594.83
(96.04%)
📈 view plot
🚷 view threshold
1,461.00
(-0.02%)
1,476.51
(98.95%)
📈 view plot
🚷 view threshold
2,158.00
(-0.09%)
2,184.18
(98.80%)
📈 view plot
🚷 view threshold
10.00
(+13.37%)
17.07
(58.58%)
📈 view plot
🚷 view threshold
63.00
(+0.70%)
67.95
(92.71%)
client_sv2_open_channel_serialize📈 view plot
🚷 view threshold
14,020.00
(-0.22%)
14,401.30
(97.35%)
📈 view plot
🚷 view threshold
5,064.00
(-0.01%)
5,079.51
(99.69%)
📈 view plot
🚷 view threshold
7,325.00
(-0.02%)
7,351.62
(99.64%)
📈 view plot
🚷 view threshold
37.00
(+5.62%)
43.08
(85.89%)
📈 view plot
🚷 view threshold
186.00
(-0.60%)
197.23
(94.31%)
client_sv2_open_channel_serialize_deserialize📈 view plot
🚷 view threshold
22,884.00
(+0.97%)
22,915.54
(99.86%)
📈 view plot
🚷 view threshold
8,040.00
(+0.23%)
8,073.25
(99.59%)
📈 view plot
🚷 view threshold
11,689.00
(+0.16%)
11,750.82
(99.47%)
📈 view plot
🚷 view threshold
83.00
(+11.57%)
85.32
(97.28%)
📈 view plot
🚷 view threshold
308.00
(+1.49%)
311.29
(98.94%)
client_sv2_setup_connection📈 view plot
🚷 view threshold
4,689.00
(+0.09%)
4,774.28
(98.21%)
📈 view plot
🚷 view threshold
1,502.00
(-0.02%)
1,517.51
(98.98%)
📈 view plot
🚷 view threshold
2,274.00
(-0.20%)
2,299.20
(98.90%)
📈 view plot
🚷 view threshold
14.00
(+46.64%)
16.60
(84.33%)
📈 view plot
🚷 view threshold
67.00
(-0.57%)
69.79
(96.01%)
client_sv2_setup_connection_serialize📈 view plot
🚷 view threshold
16,152.00
(-0.10%)
16,443.09
(98.23%)
📈 view plot
🚷 view threshold
5,963.00
(-0.01%)
5,978.51
(99.74%)
📈 view plot
🚷 view threshold
8,662.00
(-0.02%)
8,691.37
(99.66%)
📈 view plot
🚷 view threshold
42.00
(+5.54%)
52.81
(79.53%)
📈 view plot
🚷 view threshold
208.00
(-0.34%)
215.89
(96.34%)
client_sv2_setup_connection_serialize_deserialize📈 view plot
🚷 view threshold
35,760.00
(+0.58%)
35,767.21
(99.98%)
📈 view plot
🚷 view threshold
14,888.00
(+0.25%)
14,909.61
(99.86%)
📈 view plot
🚷 view threshold
21,880.00
(+0.29%)
21,922.94
(99.80%)
📈 view plot
🚷 view threshold
95.00
(+3.01%)
111.51
(85.20%)
📈 view plot
🚷 view threshold
383.00
(+0.98%)
384.75
(99.55%)
🐰 View full continuous benchmarking report in Bencher
github-actions[bot] commented 1 week ago

🐰 Bencher Report

Branch2024-10-18-allow-sniffer-to-alter-msgs
Testbedsv1
Click to view all benchmark results
BenchmarkEstimated CyclesBenchmark Result
estimated cycles
(Result Δ%)
Upper Boundary
estimated cycles
(Limit %)
InstructionsBenchmark Result
instructions
(Result Δ%)
Upper Boundary
instructions
(Limit %)
L1 AccessesBenchmark Result
accesses
(Result Δ%)
Upper Boundary
accesses
(Limit %)
L2 AccessesBenchmark Result
accesses
(Result Δ%)
Upper Boundary
accesses
(Limit %)
RAM AccessesBenchmark Result
accesses
(Result Δ%)
Upper Boundary
accesses
(Limit %)
get_authorize📈 view plot
🚷 view threshold
8,324.00
(-1.68%)
8,731.08
(95.34%)
📈 view plot
🚷 view threshold
3,671.00
(-2.10%)
3,854.85
(95.23%)
📈 view plot
🚷 view threshold
5,124.00
(-2.54%)
5,422.02
(94.50%)
📈 view plot
🚷 view threshold
10.00
(+38.38%)
13.11
(76.30%)
📈 view plot
🚷 view threshold
90.00
(-0.70%)
95.15
(94.59%)
get_submit📈 view plot
🚷 view threshold
95,214.00
(-0.23%)
95,892.88
(99.29%)
📈 view plot
🚷 view threshold
59,271.00
(-0.32%)
59,679.25
(99.32%)
📈 view plot
🚷 view threshold
85,094.00
(-0.36%)
85,752.78
(99.23%)
📈 view plot
🚷 view threshold
43.00
(-4.11%)
63.61
(67.59%)
📈 view plot
🚷 view threshold
283.00
(+1.02%)
289.23
(97.85%)
get_subscribe📈 view plot
🚷 view threshold
7,879.00
(-1.80%)
8,274.54
(95.22%)
📈 view plot
🚷 view threshold
2,766.00
(-2.45%)
2,935.76
(94.22%)
📈 view plot
🚷 view threshold
3,844.00
(-2.99%)
4,116.80
(93.37%)
📈 view plot
🚷 view threshold
16.00
(+33.42%)
20.77
(77.02%)
📈 view plot
🚷 view threshold
113.00
(-1.14%)
118.53
(95.34%)
serialize_authorize📈 view plot
🚷 view threshold
12,063.00
(-1.79%)
12,566.28
(95.99%)
📈 view plot
🚷 view threshold
5,248.00
(-1.38%)
5,422.49
(96.78%)
📈 view plot
🚷 view threshold
7,298.00
(-1.65%)
7,580.41
(96.27%)
📈 view plot
🚷 view threshold
8.00
(-12.40%)
16.30
(49.07%)
📈 view plot
🚷 view threshold
135.00
(-1.90%)
142.64
(94.64%)
serialize_deserialize_authorize📈 view plot
🚷 view threshold
24,508.00
(-0.74%)
25,229.39
(97.14%)
📈 view plot
🚷 view threshold
9,794.00
(-0.99%)
10,031.10
(97.64%)
📈 view plot
🚷 view threshold
13,803.00
(-1.16%)
14,181.14
(97.33%)
📈 view plot
🚷 view threshold
34.00
(-1.83%)
43.57
(78.04%)
📈 view plot
🚷 view threshold
301.00
(-0.16%)
315.18
(95.50%)
serialize_deserialize_handle_authorize📈 view plot
🚷 view threshold
30,273.00
(-0.17%)
30,752.86
(98.44%)
📈 view plot
🚷 view threshold
11,997.00
(-0.71%)
12,200.68
(98.33%)
📈 view plot
🚷 view threshold
16,963.00
(-0.86%)
17,287.99
(98.12%)
📈 view plot
🚷 view threshold
58.00
(+4.42%)
67.36
(86.10%)
📈 view plot
🚷 view threshold
372.00
(+0.64%)
381.66
(97.47%)
serialize_deserialize_handle_submit📈 view plot
🚷 view threshold
126,306.00
(-0.13%)
126,895.71
(99.54%)
📈 view plot
🚷 view threshold
73,117.00
(-0.23%)
73,507.35
(99.47%)
📈 view plot
🚷 view threshold
104,761.00
(-0.29%)
105,431.18
(99.36%)
📈 view plot
🚷 view threshold
116.00
(+8.37%)
133.08
(87.17%)
📈 view plot
🚷 view threshold
599.00
(+0.44%)
605.14
(98.99%)
serialize_deserialize_handle_subscribe📈 view plot
🚷 view threshold
27,833.00
(-0.02%)
28,605.35
(97.30%)
📈 view plot
🚷 view threshold
9,585.00
(-0.67%)
9,749.78
(98.31%)
📈 view plot
🚷 view threshold
13,533.00
(-0.85%)
13,802.70
(98.05%)
📈 view plot
🚷 view threshold
67.00
(+5.55%)
75.98
(88.18%)
📈 view plot
🚷 view threshold
399.00
(+0.66%)
416.85
(95.72%)
serialize_deserialize_submit📈 view plot
🚷 view threshold
114,907.00
(-0.29%)
115,802.29
(99.23%)
📈 view plot
🚷 view threshold
67,894.00
(-0.31%)
68,392.66
(99.27%)
📈 view plot
🚷 view threshold
97,372.00
(-0.37%)
98,218.23
(99.14%)
📈 view plot
🚷 view threshold
63.00
(+0.46%)
78.22
(80.54%)
📈 view plot
🚷 view threshold
492.00
(+0.15%)
498.40
(98.71%)
serialize_deserialize_subscribe📈 view plot
🚷 view threshold
23,112.00
(-0.64%)
23,992.63
(96.33%)
📈 view plot
🚷 view threshold
8,137.00
(-0.83%)
8,305.30
(97.97%)
📈 view plot
🚷 view threshold
11,442.00
(-1.00%)
11,708.53
(97.72%)
📈 view plot
🚷 view threshold
38.00
(+2.03%)
44.41
(85.58%)
📈 view plot
🚷 view threshold
328.00
(-0.32%)
347.86
(94.29%)
serialize_submit📈 view plot
🚷 view threshold
99,561.00
(-0.29%)
100,299.82
(99.26%)
📈 view plot
🚷 view threshold
61,333.00
(-0.28%)
61,712.99
(99.38%)
📈 view plot
🚷 view threshold
87,956.00
(-0.33%)
88,587.05
(99.29%)
📈 view plot
🚷 view threshold
46.00
(-1.64%)
64.44
(71.39%)
📈 view plot
🚷 view threshold
325.00
(+0.08%)
333.71
(97.39%)
serialize_subscribe📈 view plot
🚷 view threshold
11,248.00
(-1.37%)
11,676.82
(96.33%)
📈 view plot
🚷 view threshold
4,119.00
(-1.53%)
4,279.14
(96.26%)
📈 view plot
🚷 view threshold
5,708.00
(-1.92%)
5,969.77
(95.62%)
📈 view plot
🚷 view threshold
16.00
(+24.12%)
20.87
(76.66%)
📈 view plot
🚷 view threshold
156.00
(-1.09%)
163.20
(95.59%)
🐰 View full continuous benchmarking report in Bencher