Skip to content

Update Sparse Trie subtries in parallel #15135

Open
@Rjected

Description

@Rjected

Mostly extracting from this #13251

We should be able to update independent subtries in parallel, but right now we cannot because this all takes a mutable reference. All node updates are currently sequential.

We see lots of sequential rlp_node work being done in profiles here:

Image

If we can make rlp_node take &self:

pub fn rlp_node(

Then, it should be possible to parallelize calculate_below_level.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-engineRelated to the engine implementationA-trieRelated to Merkle Patricia Trie implementationC-perfA change motivated by improving speed, memory usage or disk footprint

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions