Skip to content

perf(network): toggle polling mode conditionally - #2463

Draft
Gelbpunkt wants to merge 1 commit into
hermit-os:mainfrom
Gelbpunkt:network-polling-mode
Draft

perf(network): toggle polling mode conditionally#2463
Gelbpunkt wants to merge 1 commit into
hermit-os:mainfrom
Gelbpunkt:network-polling-mode

Conversation

@Gelbpunkt

Copy link
Copy Markdown
Member

Currently mostly an experiment.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Benchmark Results

Details
Benchmark Current: f4d5555 Previous: 2e23902 Performance Ratio
startup_benchmark Build Time 97.22 s 80.34 s 1.21
startup_benchmark File Size 0.76 MB 0.80 MB 0.95
Startup Time - 1 core 0.88 s (±0.08 s) 0.75 s (±0.02 s) 1.18
Startup Time - 2 cores 0.86 s (±0.04 s) 0.74 s (±0.02 s) 1.16
Startup Time - 4 cores 0.84 s (±0.05 s) 0.74 s (±0.02 s) 1.13
multithreaded_benchmark Build Time 92.36 s 82.11 s 1.12
multithreaded_benchmark File Size 0.90 MB 0.86 MB 1.05
Multithreaded Pi Efficiency - 2 Threads 88.35 % (±8.90 %) 85.89 % (±6.61 %) 1.03
Multithreaded Pi Efficiency - 4 Threads 45.94 % (±4.02 %) 43.43 % (±2.56 %) 1.06
Multithreaded Pi Efficiency - 8 Threads 26.46 % (±3.39 %) 25.76 % (±1.53 %) 1.03
micro_benchmarks Build Time 99.07 s 80.40 s 1.23
micro_benchmarks File Size 0.90 MB 0.86 MB 1.05
Scheduling time - 1 thread 70.37 ticks (±5.68 ticks) 62.65 ticks (±4.06 ticks) 1.12
Scheduling time - 2 threads 38.67 ticks (±4.28 ticks) 34.08 ticks (±4.10 ticks) 1.13
Micro - Time for syscall (getpid) 3.77 ticks (±0.64 ticks) 3.45 ticks (±0.58 ticks) 1.09
Memcpy speed - (built_in) block size 4096 74257.22 MByte/s (±51371.13 MByte/s) 82448.38 MByte/s (±56997.13 MByte/s) 0.90
Memcpy speed - (built_in) block size 1048576 29474.20 MByte/s (±24009.48 MByte/s) 30585.98 MByte/s (±24707.84 MByte/s) 0.96
Memcpy speed - (built_in) block size 16777216 22348.66 MByte/s (±18801.34 MByte/s) 26340.06 MByte/s (±21720.96 MByte/s) 0.85
Memset speed - (built_in) block size 4096 74325.55 MByte/s (±51414.68 MByte/s) 82292.76 MByte/s (±56891.50 MByte/s) 0.90
Memset speed - (built_in) block size 1048576 30224.97 MByte/s (±24439.07 MByte/s) 31323.85 MByte/s (±25145.86 MByte/s) 0.96
Memset speed - (built_in) block size 16777216 23007.65 MByte/s (±19229.49 MByte/s) 27104.68 MByte/s (±22209.94 MByte/s) 0.85
Memcpy speed - (rust) block size 4096 65699.56 MByte/s (±46126.29 MByte/s) 74097.96 MByte/s (±51811.44 MByte/s) 0.89
Memcpy speed - (rust) block size 1048576 29262.21 MByte/s (±23985.05 MByte/s) 30361.60 MByte/s (±24602.37 MByte/s) 0.96
Memcpy speed - (rust) block size 16777216 22294.34 MByte/s (±18760.93 MByte/s) 27625.34 MByte/s (±22806.88 MByte/s) 0.81
Memset speed - (rust) block size 4096 66004.00 MByte/s (±46313.65 MByte/s) 74373.47 MByte/s (±51976.48 MByte/s) 0.89
Memset speed - (rust) block size 1048576 30040.16 MByte/s (±24426.26 MByte/s) 31110.89 MByte/s (±25033.24 MByte/s) 0.97
Memset speed - (rust) block size 16777216 23032.56 MByte/s (±19276.62 MByte/s) 28386.93 MByte/s (±23265.03 MByte/s) 0.81
alloc_benchmarks Build Time 84.32 s 74.76 s 1.13
alloc_benchmarks File Size 0.84 MB 0.87 MB 0.96
Allocations - Allocation success 91.31 % 91.31 % 1
Allocations - Deallocation success 100.00 % 100.00 % 1
Allocations - Pre-fail Allocations 61.44 % 61.44 % 1
Allocations - Average Allocation time 2392.36 Ticks (±524.51 Ticks) 5860.58 Ticks (±98.43 Ticks) 0.41
Allocations - Average Allocation time (no fail) 3449.17 Ticks (±448.73 Ticks) 6554.81 Ticks (±92.86 Ticks) 0.53
Allocations - Average Deallocation time 669.15 Ticks (±79.64 Ticks) 1805.01 Ticks (±250.35 Ticks) 0.37
mutex_benchmark Build Time 76.70 s 79.82 s 0.96
mutex_benchmark File Size 0.90 MB 0.86 MB 1.05
Mutex Stress Test Average Time per Iteration - 1 Threads 11.84 ns (±0.46 ns) 12.10 ns (±0.41 ns) 0.98
Mutex Stress Test Average Time per Iteration - 2 Threads 38.02 ns (±2.63 ns) 40.26 ns (±1.68 ns) 0.94

This comment was automatically generated by workflow using github-action-benchmark.

Currently mostly an experiment.
@Gelbpunkt
Gelbpunkt force-pushed the network-polling-mode branch from 751fcb6 to f4d5555 Compare July 23, 2026 12:41
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.

1 participant