Skip to content
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

parsec/perf: consensus only sync events (up to 90%) #273

Merged
merged 3 commits into from Mar 12, 2019
Merged
Diff settings

Always

Just for now

perf/parsec: process_event for sync event only (Up to 89%)

Process our graphs as if it only had sync events (Requesting/Request/
Response) and these events contained all the observations in the chain
of self parent until the previous sync event.

This provide a significant part of the benefits that would have come
from bundling all observation together without the problematic changes
to the structure of Observation and Vote. It also open further
improvments for remaining efficiencies. And improve both SuperMajority
and Single ConsensusMode.

Note:
Except for the self last ancestor, all the last_ancestor are Requesting
or Request sync events: Only the use of self parent need to be special
cased to find the self_sync_parent.

Note on benchmarks:
Benchmarks for different number of peers for 1924 and 8192 events
simulate a constent per network gossip event rate. This means that
a peer in a 4 node network will see 8 times more event between its
gossip request than a peer in a 32 node network. This probably explain
why the larger network get a smaller improvment. It also mean that with
higer event rate, the larger network will see that improvment.

time cargo bench --features=testing -- --baseline=pr270

Most interesting:
a_node4_opaque_evt1024 - bench_section_size_evt1024_interleave
                        time:   [34.225 ms 36.167 ms 36.547 ms]
                        change: [-63.495% -62.111% -61.027%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node8_opaque_evt1024 - bench_section_size_evt1024_interleave
                        time:   [63.649 ms 63.937 ms 64.551 ms]
                        change: [-67.051% -66.822% -66.584%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node16_opaque_evt1024 - bench_section_size_evt1024_interleave
                        time:   [146.67 ms 147.18 ms 148.20 ms]
                        change: [-53.128% -52.322% -51.294%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node32_opaque_evt1024 - bench_section_size_evt1024_interleave
                        time:   [414.51 ms 422.52 ms 426.94 ms]
                        change: [-17.420% -15.272% -13.147%] (p = 0.03 < 0.05)
                        Performance has improved.

a_node4_opaque_evt8192 - bench_section_size_evt8192_interleave
                        time:   [486.23 ms 487.95 ms 494.42 ms]
                        change: [-85.447% -85.233% -85.030%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node8_opaque_evt8192 - bench_section_size_evt8192_interleave
                        time:   [941.50 ms 944.90 ms 950.27 ms]
                        change: [-89.063% -89.016% -88.953%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node16_opaque_evt8192 - bench_section_size_evt8192_interleave
                        time:   [1.8589 s 1.8634 s 1.8654 s]
                        change: [-79.882% -79.832% -79.785%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node32_opaque_evt8192 - bench_section_size_evt8192_interleave
                        time:   [3.3108 s 3.3142 s 3.3333 s]
                        change: [-39.731% -39.528% -39.294%] (p = 0.02 < 0.05)
                        Performance has improved.

Other results:
minimal - benches       time:   [863.75 us 865.74 us 868.51 us]
                        change: [-12.561% -12.084% -11.501%] (p = 0.02 < 0.05)
                        Performance has improved.
static - benches        time:   [2.9964 ms 3.0166 ms 3.0234 ms]
                        change: [-16.762% -12.236% -9.4093%] (p = 0.03 < 0.05)
                        Change within noise threshold.
dynamic - benches       time:   [2.1336 ms 2.1678 ms 2.3269 ms]
                        change: [-16.184% -11.844% -7.3155%] (p = 0.03 < 0.05)
                        Change within noise threshold.

a_node4_opaque_evt8 - bench_section_size_evt8
                        time:   [1.0932 ms 1.1058 ms 1.1124 ms]
                        change: [-22.677% -21.470% -20.252%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node4_opaque_evt8 - bench_section_size_evt8_single
                        time:   [958.76 us 974.01 us 1.0071 ms]
                        change: [-14.934% -11.627% -8.1626%] (p = 0.02 < 0.05)
                        Change within noise threshold.
a_node8_opaque_evt8 - bench_section_size_evt8
                        time:   [4.3838 ms 4.4863 ms 4.6149 ms]
                        change: [-21.485% -13.778% -7.3450%] (p = 0.05 > 0.05)
                        No change in performance detected.
a_node8_opaque_evt8 - bench_section_size_evt8_single
                        time:   [5.8706 ms 5.8805 ms 5.9326 ms]
                        change: [-8.1477% -6.7443% -5.4966%] (p = 0.02 < 0.05)
                        Change within noise threshold.
a_node16_opaque_evt8 - bench_section_size_evt8
                        time:   [22.615 ms 23.299 ms 24.866 ms]
                        change: [-3.4956% +0.4349% +6.0293%] (p = 0.91 > 0.05)
                        No change in performance detected.
a_node16_opaque_evt8 - bench_section_size_evt8_single
                        time:   [16.088 ms 16.310 ms 16.982 ms]
                        change: [-4.6727% -1.8646% +0.5703%] (p = 0.29 > 0.05)
                        No change in performance detected.
a_node32_opaque_evt8 - bench_section_size_evt8
                        time:   [200.34 ms 205.51 ms 216.85 ms]
                        change: [-17.264% -9.1455% +0.1371%] (p = 0.20 > 0.05)
                        No change in performance detected.
a_node32_opaque_evt8 - bench_section_size_evt8_single
                        time:   [94.832 ms 101.22 ms 106.51 ms]
                        change: [-22.803% -17.463% -11.818%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node48_opaque_evt8 - bench_section_size_evt8
                        time:   [390.80 ms 391.79 ms 400.77 ms]
                        change: [-15.324% -10.462% -6.5824%] (p = 0.03 < 0.05)
                        Change within noise threshold.
a_node48_opaque_evt8 - bench_section_size_evt8_single
                        time:   [319.57 ms 326.45 ms 333.85 ms]
                        change: [-13.801% -11.611% -9.5961%] (p = 0.02 < 0.05)
                        Change within noise threshold.

a_node4_opaque_evt16 - bench_section_size_evt16
                        time:   [1.3346 ms 1.3367 ms 1.3407 ms]
                        change: [-29.416% -28.526% -27.025%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node4_opaque_evt16 - bench_section_size_evt16_single
                        time:   [1.0017 ms 1.0022 ms 1.0086 ms]
                        change: [-32.463% -31.021% -29.568%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node8_opaque_evt16 - bench_section_size_evt16
                        time:   [7.5234 ms 7.5367 ms 7.5693 ms]
                        change: [-16.962% -15.763% -14.077%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node8_opaque_evt16 - bench_section_size_evt16_single
                        time:   [4.0923 ms 4.1153 ms 4.1342 ms]
                        change: [-7.4917% -6.9419% -6.5670%] (p = 0.02 < 0.05)
                        Change within noise threshold.
a_node16_opaque_evt16 - bench_section_size_evt16
                        time:   [30.776 ms 30.884 ms 30.928 ms]
                        change: [-11.310% -11.015% -10.718%] (p = 0.03 < 0.05)
                        Performance has improved.
a_node16_opaque_evt16 - bench_section_size_evt16_single
                        time:   [18.011 ms 18.015 ms 18.040 ms]
                        change: [-16.933% -13.834% -11.874%] (p = 0.02 < 0.05)
                        Performance has improved.
a_node32_opaque_evt16 - bench_section_size_evt16
                        time:   [149.16 ms 149.49 ms 151.27 ms]
                        change: [-8.9866% -7.2361% -5.7857%] (p = 0.02 < 0.05)
                        Change within noise threshold.
a_node32_opaque_evt16 - bench_section_size_evt16_single
                        time:   [146.74 ms 148.35 ms 149.14 ms]
                        change: [-5.1797% -3.7823% -2.1465%] (p = 0.03 < 0.05)
                        Change within noise threshold.
a_node48_opaque_evt16 - bench_section_size_evt16
                        time:   [792.21 ms 807.59 ms 887.43 ms]
                        change: [-16.255% -9.0132% -1.0866%] (p = 0.14 > 0.05)
                        No change in performance detected.
a_node48_opaque_evt16 - bench_section_size_evt16_single
                        time:   [199.52 ms 199.87 ms 202.69 ms]
                        change: [-0.9024% +2.1478% +4.3763%] (p = 0.25 > 0.05)
                        No change in performance detected.

PublicIdname754598-001 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [98.431 ms 98.856 ms 99.746 ms]
                        change: [-6.7036% -3.6814% -1.4846%] (p = 0.07 > 0.05)
                        No change in performance detected.
PublicIdname754598-002 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [210.17 ms 211.22 ms 213.73 ms]
                        change: [-2.5255% -1.7659% -0.8347%] (p = 0.03 < 0.05)
                        Change within noise threshold.
PublicIdname754598-003 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [9.1307 ms 9.1523 ms 9.1818 ms]
                        change: [-5.8631% -4.7028% -3.8745%] (p = 0.02 < 0.05)
                        Change within noise threshold.
PublicIdname93b63e-001 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [96.557 ms 97.063 ms 98.219 ms]
                        change: [-4.2174% -3.1694% -2.1104%] (p = 0.02 < 0.05)
                        Change within noise threshold.
PublicIdname93b63e-002 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [165.38 ms 165.80 ms 166.68 ms]
                        change: [-1.5194% -1.1500% -0.7799%] (p = 0.02 < 0.05)
                        Change within noise threshold.
PublicIdname93b63e-003 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [28.050 ms 28.090 ms 28.157 ms]
                        change: [-7.7499% -7.0346% -6.3209%] (p = 0.02 < 0.05)
                        Change within noise threshold.
PublicIdname93b63e-004 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [19.703 ms 19.725 ms 19.896 ms]
                        change: [-10.512% -8.0772% -5.8919%] (p = 0.02 < 0.05)
                        Change within noise threshold.
PublicIdname93b63e-005 - bench_routing/mock_crust_merge_merge_three_sections_...
                        time:   [8.7149 ms 8.7765 ms 8.8017 ms]
                        change: [-5.0975% -4.4885% -4.1496%] (p = 0.02 < 0.05)
                        Change within noise threshold.
  • Loading branch information...
jeanphilippeD committed Mar 12, 2019
commit 0121acc87419b811b1c7035a0f1197b0be4c5ce0
/// cause: Request
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 513, PublicIdname5c8502: 546, PublicIdname70ccc7: 464, PublicIdname754598: 571, PublicIdname93b63e: 559, PublicIdnamee2d762: 274, PublicIdnamee5945a: 106, PublicIdnamee870b5: 204}

"PublicIdname5c_547" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdname5c_547" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdname5c_547</td></tr>
<tr><td colspan="6">OpaquePayload(5a06fde420Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(5a06fde420Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(5a06fde420Sectio))
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 513, PublicIdname5c8502: 547, PublicIdname70ccc7: 464, PublicIdname754598: 571, PublicIdname93b63e: 559, PublicIdnamee2d762: 274, PublicIdnamee5945a: 106, PublicIdnamee870b5: 204}

"PublicIdname5c_548" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdname5c_548" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdname5c_548</td></tr>
<tr><td colspan="6">OpaquePayload(75f3e55401Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(75f3e55401Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(75f3e55401Sectio))
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 513, PublicIdname5c8502: 548, PublicIdname70ccc7: 464, PublicIdname754598: 571, PublicIdname93b63e: 559, PublicIdnamee2d762: 274, PublicIdnamee5945a: 106, PublicIdnamee870b5: 204}

"PublicIdname5c_549" [fillcolor=white, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdname5c_549" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdname5c_549</td></tr>
</table>>]
<tr><td colspan="6">[OpaquePayload(5a06fde420Sectio), OpaquePayload(75f3e55401Sectio)]</td></tr></table>>]
/// cause: Response
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 518, PublicIdname5c8502: 549, PublicIdname70ccc7: 464, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 106, PublicIdnamee870b5: 209}

/// cause: Request
/// last_ancestors: {PublicIdname48840d: 355, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 109, PublicIdnamee870b5: 211}

"PublicIdnamee5_110" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdnamee5_110" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdnamee5_110</td></tr>
<tr><td colspan="6">OpaquePayload(75f3e55401Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(75f3e55401Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(75f3e55401Sectio))
/// last_ancestors: {PublicIdname48840d: 355, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 110, PublicIdnamee870b5: 211}

"PublicIdnamee5_111" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdnamee5_111" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdnamee5_111</td></tr>
<tr><td colspan="6">OpaquePayload(5a06fde420Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(5a06fde420Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(5a06fde420Sectio))
/// last_ancestors: {PublicIdname48840d: 355, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 111, PublicIdnamee870b5: 211}

"PublicIdnamee5_112" [fillcolor=white, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdnamee5_112" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdnamee5_112</td></tr>
</table>>]
<tr><td colspan="6">[OpaquePayload(75f3e55401Sectio), OpaquePayload(5a06fde420Sectio)]</td></tr></table>>]
/// cause: Response
/// last_ancestors: {PublicIdname48840d: 357, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 574, PublicIdname93b63e: 567, PublicIdnamee2d762: 276, PublicIdnamee5945a: 112, PublicIdnamee870b5: 211}

/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279

/// round_hashes: {
/// PublicIdname48840d -> [
/// interesting_events: {
/// PublicIdname48840d -> ["PublicIdname48_368", "PublicIdname48_372"]
/// PublicIdname4b4fb9 -> ["PublicIdname4b_531"]
/// PublicIdname5c8502 -> ["PublicIdname5c_547", "PublicIdname5c_548", "PublicIdname5c_554"]
/// PublicIdname5c8502 -> ["PublicIdname5c_549", "PublicIdname5c_554"]
/// PublicIdname70ccc7 -> ["PublicIdname70_470", "PublicIdname70_477"]
/// PublicIdname754598 -> ["PublicIdname75_589", "PublicIdname75_590"]
/// PublicIdname93b63e -> ["PublicIdname93_572", "PublicIdname93_577"]
/// PublicIdnamecdfb7c -> ["PublicIdnamecd_9"]
/// PublicIdnamee2d762 -> ["PublicIdnamee2_284", "PublicIdnamee2_288"]
/// PublicIdnamee5945a -> ["PublicIdnamee5_110", "PublicIdnamee5_111", "PublicIdnamee5_118"]
/// PublicIdnamee5945a -> ["PublicIdnamee5_112", "PublicIdnamee5_118"]
/// PublicIdnamee870b5 -> ["PublicIdnamee8_219", "PublicIdnamee8_221"]
/// }
/// all_voters: {PublicIdname48840d, PublicIdname4b4fb9, PublicIdname5c8502, PublicIdname70ccc7, PublicIdname754598, PublicIdname93b63e, PublicIdnamecdfb7c, PublicIdnamee2d762, PublicIdnamee5945a, PublicIdnamee870b5}
/// 0/1 f - - -
/// }
/// }
/// PublicIdname5c_547 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(5a06fde420Sectio)]
/// }
/// PublicIdname5c_548 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(75f3e55401Sectio)]
/// }
/// PublicIdname5c_549 -> {
/// observees: {}
/// interesting_content: []
/// interesting_content: [OpaquePayload(5a06fde420Sectio), OpaquePayload(75f3e55401Sectio)]
/// }
/// PublicIdname5c_550 -> {
/// observees: {}
/// 0/1 f - - -
/// }
/// }
/// PublicIdnamee5_110 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(75f3e55401Sectio)]
/// }
/// PublicIdnamee5_111 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(5a06fde420Sectio)]
/// }
/// PublicIdnamee5_112 -> {
/// observees: {}
/// interesting_content: []
/// interesting_content: [OpaquePayload(75f3e55401Sectio), OpaquePayload(5a06fde420Sectio)]
/// }
/// PublicIdnamee5_113 -> {
/// observees: {}
/// cause: Request
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 513, PublicIdname5c8502: 546, PublicIdname70ccc7: 464, PublicIdname754598: 571, PublicIdname93b63e: 559, PublicIdnamee2d762: 274, PublicIdnamee5945a: 106, PublicIdnamee870b5: 204}

"PublicIdname5c_547" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdname5c_547" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdname5c_547</td></tr>
<tr><td colspan="6">OpaquePayload(5a06fde420Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(5a06fde420Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(5a06fde420Sectio))
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 513, PublicIdname5c8502: 547, PublicIdname70ccc7: 464, PublicIdname754598: 571, PublicIdname93b63e: 559, PublicIdnamee2d762: 274, PublicIdnamee5945a: 106, PublicIdnamee870b5: 204}

"PublicIdname5c_548" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdname5c_548" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdname5c_548</td></tr>
<tr><td colspan="6">OpaquePayload(75f3e55401Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(75f3e55401Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(75f3e55401Sectio))
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 513, PublicIdname5c8502: 548, PublicIdname70ccc7: 464, PublicIdname754598: 571, PublicIdname93b63e: 559, PublicIdnamee2d762: 274, PublicIdnamee5945a: 106, PublicIdnamee870b5: 204}

"PublicIdname5c_549" [fillcolor=white, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdname5c_549" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdname5c_549</td></tr>
</table>>]
<tr><td colspan="6">[OpaquePayload(5a06fde420Sectio), OpaquePayload(75f3e55401Sectio)]</td></tr></table>>]
/// cause: Response
/// last_ancestors: {PublicIdname48840d: 358, PublicIdname4b4fb9: 518, PublicIdname5c8502: 549, PublicIdname70ccc7: 464, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 106, PublicIdnamee870b5: 209}

/// cause: Request
/// last_ancestors: {PublicIdname48840d: 355, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 109, PublicIdnamee870b5: 211}

"PublicIdnamee5_110" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdnamee5_110" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdnamee5_110</td></tr>
<tr><td colspan="6">OpaquePayload(75f3e55401Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(75f3e55401Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(75f3e55401Sectio))
/// last_ancestors: {PublicIdname48840d: 355, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 110, PublicIdnamee870b5: 211}

"PublicIdnamee5_111" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdnamee5_111" [style=filled, fillcolor=cyan, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdnamee5_111</td></tr>
<tr><td colspan="6">OpaquePayload(5a06fde420Sectio)</td></tr>
<tr><td colspan="6">[OpaquePayload(5a06fde420Sectio)]</td></tr></table>>]
</table>>]
/// cause: Observation(OpaquePayload(5a06fde420Sectio))
/// last_ancestors: {PublicIdname48840d: 355, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 573, PublicIdname93b63e: 559, PublicIdnamee2d762: 276, PublicIdnamee5945a: 111, PublicIdnamee870b5: 211}

"PublicIdnamee5_112" [fillcolor=white, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
"PublicIdnamee5_112" [style=filled, fillcolor=crimson, shape=rectangle, label=<<table border="0" cellborder="0" cellpadding="0" cellspacing="0">
<tr><td colspan="6">PublicIdnamee5_112</td></tr>
</table>>]
<tr><td colspan="6">[OpaquePayload(75f3e55401Sectio), OpaquePayload(5a06fde420Sectio)]</td></tr></table>>]
/// cause: Response
/// last_ancestors: {PublicIdname48840d: 357, PublicIdname4b4fb9: 512, PublicIdname5c8502: 543, PublicIdname70ccc7: 462, PublicIdname754598: 574, PublicIdname93b63e: 567, PublicIdnamee2d762: 276, PublicIdnamee5945a: 112, PublicIdnamee870b5: 211}

/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279
/// c4db2f62d1c1586f6ff062b8b25c05f9684e09f2c3cf251a5818612dcf9ab895
/// d8c072dd52ed41636bf3dbdd997d57400aadd05f0d57793a3149a3a79dbe4279

/// round_hashes: {
/// PublicIdname48840d -> [
/// interesting_events: {
/// PublicIdname48840d -> ["PublicIdname48_368", "PublicIdname48_372"]
/// PublicIdname4b4fb9 -> ["PublicIdname4b_531"]
/// PublicIdname5c8502 -> ["PublicIdname5c_547", "PublicIdname5c_548", "PublicIdname5c_554"]
/// PublicIdname5c8502 -> ["PublicIdname5c_549", "PublicIdname5c_554"]
/// PublicIdname70ccc7 -> ["PublicIdname70_470", "PublicIdname70_477"]
/// PublicIdname754598 -> ["PublicIdname75_589", "PublicIdname75_590"]
/// PublicIdname93b63e -> ["PublicIdname93_572", "PublicIdname93_577"]
/// PublicIdnamecdfb7c -> ["PublicIdnamecd_9"]
/// PublicIdnamee2d762 -> ["PublicIdnamee2_284", "PublicIdnamee2_288"]
/// PublicIdnamee5945a -> ["PublicIdnamee5_110", "PublicIdnamee5_111", "PublicIdnamee5_118"]
/// PublicIdnamee5945a -> ["PublicIdnamee5_112", "PublicIdnamee5_118"]
/// PublicIdnamee870b5 -> ["PublicIdnamee8_219", "PublicIdnamee8_221"]
/// }
/// all_voters: {PublicIdname48840d, PublicIdname4b4fb9, PublicIdname5c8502, PublicIdname70ccc7, PublicIdname754598, PublicIdname93b63e, PublicIdnamecdfb7c, PublicIdnamee2d762, PublicIdnamee5945a, PublicIdnamee870b5}
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname48_360 -> {
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname48_361 -> {
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname48_362 -> {
/// observees: {}
/// interesting_content: []
/// 0/1 f - - -
/// }
/// }
/// PublicIdname5c_547 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(5a06fde420Sectio)]
/// }
/// PublicIdname5c_548 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(75f3e55401Sectio)]
/// }
/// PublicIdname5c_549 -> {
/// observees: {}
/// interesting_content: []
/// interesting_content: [OpaquePayload(5a06fde420Sectio), OpaquePayload(75f3e55401Sectio)]
/// }
/// PublicIdname5c_550 -> {
/// observees: {}
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname70_466 -> {
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname70_467 -> {
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname70_468 -> {
/// observees: {}
/// interesting_content: []
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname75_576 -> {
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname75_577 -> {
/// observees: {}
/// interesting_content: []
/// }
/// PublicIdname75_578 -> {
/// observees: {}
/// interesting_content: []
/// 0/1 f - - -
/// }
/// }
/// PublicIdnamee5_110 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(75f3e55401Sectio)]
/// }
/// PublicIdnamee5_111 -> {
/// observees: {}
/// interesting_content: [OpaquePayload(5a06fde420Sectio)]
/// }
/// PublicIdnamee5_112 -> {
/// observees: {}
/// interesting_content: []
/// interesting_content: [OpaquePayload(75f3e55401Sectio), OpaquePayload(5a06fde420Sectio)]
/// }
/// PublicIdnamee5_113 -> {
/// observees: {}
Oops, something went wrong.
ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.