Skip to content

IoService worker thread number configuration #336

@SurfingNerd

Description

@SurfingNerd

At the moment, we spawn 4 threads for the workers, independent of the hardware, independent of the tasks they are working on.

These Workers are active in a typical setup, each one taking 4 threads.

  • ClientService
  • Hbbft
  • devp2p

Others then those modules do not require a configuration.

In the year 2026, CPUs with much more cores are standard, but

  • RPCs are not able to use more than 4 cores
  • Validators: Block production is limited to 4 cores for some parts, but the majority of the work has to be done single threaded anyway)

devp2p

does the networking in the background.
an increase here could lead to faster flushing of the network caches

Downsides

More parallel threads can increase the amount of deadlocks

todos:

  • find good config section in the toml to configure the individual service workers counts.
  • forward the information of the log files

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions