Drops-of-Diamond / diamond_drops

WIP on sharding and Ethereum 2.0 with enshrined-in-consensus data availability and Rust: a fast, safe, concurrent and practical programming language
The Unlicense
57 stars 14 forks source link

Write benchmarks for existing code, e.g. blob serialization #84

Open jamesray1 opened 6 years ago

jamesray1 commented 6 years ago

Is your feature request related to a problem? Please describe.

geth-sharding had results (see the below link) of 80000 ns/op roundtrip serializing/deserializing a blob to a collation body and back for their benchmark, while other results ranged from 100th to less than half of this. Note that we will need to do #78 first before this is done, so this might be a task suited for @tcsiwula when done with #78, if he's up for it?

Describe the solution you'd like

Write bench tests and compare with other results e.g. in the geth-sharding issue below, to decide whether further optimizations are needed. Writing bench tests are a nightly feature, see https://doc.rust-lang.org/stable/unstable-book/library-features/test.html FMI. If results indicate a large improvement is needed, e.g. worse than XML, then fixing this would be a more immediate priority, otherwise it could be postponed until e.g. post-production.

Describe alternatives you've considered

Additional context https://github.com/prysmaticlabs/geth-sharding/issues/139

Cute Animal Picture

put a cute animal picture link inside the parentheses

jamesray1 commented 6 years ago

@samparsky, interested? On second thought, as noted above, this task needs #78 first which @tcsiwula is working on, so it would be best if he handled this as well.

samparsky commented 6 years ago

@jamesray1 Yeah sure but if @tcsiwula wants to handle it, okay

jamesray1 commented 6 years ago

Requires work on a bintrie and #78.