Concordium / concordium-node

The main concordium node implementation.
GNU Affero General Public License v3.0
45 stars 21 forks source link

Prototype possible improvements from Wasm interpreter optimizations #1127

Closed abizjak closed 4 months ago

abizjak commented 4 months ago

Task description

In order to decide whether we will use Wasmer which brings its own risks, or go towards improving our own interpreter instead, with more limited gains, but likely less work and higher assurance, we want to prototype some improvements quickly and see the gains we can get.

This will feed into the input on whether to use Wasmer or not.

syrusakbary commented 4 months ago

Just read this issue after a random search of Wasmer in Github.

It may be useful to know that Wasmer will also add support for a performant interpreter mode soon :)

abizjak commented 4 months ago

@syrusakbary Can you shed more light on what "soon" means? Do you have a roadmap? Is there something I can already look at?

This is a time sensitive issue for us.

abizjak commented 4 months ago

The prototyping has been done in a low-level-optimizations branch. In the current state it yields 3-4 times real execution time improvement on the most complex transactions we tried.