WIP
A new implementation of Span tracking https://github.com/rchain/rchain/pull/2569
to enable:
rnode.server.metrics.zipkin = true kamon.trace.sampler = "always" |
and to avoid StackTraceExceptions: (until it's fixed: )
-J-Xss5M |
https://github.com/rchain/rchain/blob/dev/rholang/examples/vault_demo/3.transfer_funds.rho
The whole flow of proposal is captured in two stages
Significant observations:
very little is run in parallel because the execution is dependent on itself
A more detailed view
Reset and restore installs
Produce + create checkpoint
https://github.com/rchain/rchain/blob/dev/rholang/examples/vault_demo/3.transfer_funds.rho
500 transfers done (of 1 rev instead of 100).
It seems that the length of the chain affected the transfer execution by a factor of 3.
https://github.com/rchain/perf-harness/blob/master/contracts/wide_a_setup.rho
https://github.com/rchain/perf-harness/blob/master/contracts/wide_b_run.rho
A dedicated implementation of span tracking was used in these measurements: https://github.com/dzajkowski/rchain/tree/metrics/replace-task-local-spans-with-explicit-traceid-2
High level execution
Create block
Reset
Soft checkpoint
<1ms
Deserialisation of 100 terms
Task ordering
A dedicated implementation of span tracking was used in these measurements: https://github.com/dzajkowski/rchain/tree/metrics/replace-task-local-spans-with-explicit-traceid-2
High level execution
Create block
Reset
Soft checkpoint
<1ms
Deserialisation of 1000 terms
Task ordering