Skip to content

fix(config): Use CONFIG_HZ=1000 consistently - #256

Merged
sveith merged 1 commit into
mainfrom
sveith/config-hz-1000
Sep 17, 2026
Merged

sveith merged 1 commit into
mainfrom
sveith/config-hz-1000

Conversation

@sveith

@sveith sveith commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

The default value for the Linux CONFIG_HZ setting is 1000. We have
been using this value for the Edera host kernels, but it is currently
set to CONFIG_HZ=100 for zone kernels.

When compared with running on bare-metal or with LXC as the container
engine, this lower rate of ticks was found to be causing performance
impact in a benchmark that issues a high rate of docker run
invocations (modelling a prospect's workload).

The more vCPUs that are added to an Edera zone, the worse the benchmark
performs, with almost 4x the runtime (at 96 vCPUs) compared to bare
metal or LXC. The likely culprit is contention around a global process
ID lock in copy_process() and do_exit().

Using CONFIG_HZ=1000, matching both the Linux kernel defaults as well
as e.g. the Ubuntu kernel configuration, completely resolves the
performance impact. Apply this value uniformly across host and zone
kernels across all architectures.

Part-of: https://linear.app/edera/issue/PRT-477/customer-zero-performance-gap-observed-in-edera-vs-lxc-when-testing

Signed-off-by: Simon Veith simon@edera.dev

The default value for the Linux `CONFIG_HZ` setting is 1000. We have
been using this value for the Edera host kernels, but it is currently
set to `CONFIG_HZ=100` for zone kernels.

When compared with running on bare-metal or with LXC as the container
engine, this lower rate of ticks was found to be causing performance
impact in a benchmark that issues a high rate of `docker run`
invocations (modelling a prospect's workload).

The more vCPUs that are added to an Edera zone, the worse the benchmark
performs, with almost 4x the runtime (at 96 vCPUs) compared to bare
metal or LXC. The likely culprit is contention around a global process
ID lock in `copy_process()` and `do_exit()`.

Using `CONFIG_HZ=1000`, matching both the Linux kernel defaults as well
as e.g. the Ubuntu kernel configuration, completely resolves the
performance impact. Apply this value uniformly across host and zone
kernels across all architectures.

Part-of: https://linear.app/edera/issue/PRT-477/customer-zero-performance-gap-observed-in-edera-vs-lxc-when-testing

Signed-off-by: Simon Veith <simon@edera.dev>

@alexandermerritt alexandermerritt left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice find

@sveith
sveith merged commit 28192fb into main Sep 17, 2026
9 checks passed
@sveith
sveith deleted the sveith/config-hz-1000 branch September 17, 2026 14:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants