Skip to content

Conversation

@fogti
Copy link
Contributor

@fogti fogti commented Nov 30, 2025

Continuation of #2090.

@mkroening mkroening self-assigned this Nov 30, 2025
Copy link
Member

@mkroening mkroening left a comment

Choose a reason for hiding this comment

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

Thanks! :)

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Benchmark Results

Benchmark Current: dea6f31 Previous: 32f7428 Performance Ratio
startup_benchmark Build Time 116.43 s 116.16 s 1.00
startup_benchmark File Size 0.90 MB 0.90 MB 1.00
Startup Time - 1 core 1.00 s (±0.03 s) 0.98 s (±0.03 s) 1.01
Startup Time - 2 cores 1.01 s (±0.02 s) 1.01 s (±0.02 s) 1.00
Startup Time - 4 cores 1.01 s (±0.02 s) 1.01 s (±0.03 s) 1.00
multithreaded_benchmark Build Time 116.73 s 115.94 s 1.01
multithreaded_benchmark File Size 1.00 MB 1.00 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 88.77 % (±6.07 %) 92.30 % (±8.26 %) 0.96
Multithreaded Pi Efficiency - 4 Threads 44.12 % (±3.05 %) 44.69 % (±3.43 %) 0.99
Multithreaded Pi Efficiency - 8 Threads 25.23 % (±1.79 %) 25.48 % (±1.96 %) 0.99
micro_benchmarks Build Time 324.66 s 310.65 s 1.05
micro_benchmarks File Size 1.01 MB 1.01 MB 1.00
Scheduling time - 1 thread 191.32 ticks (±35.39 ticks) 184.07 ticks (±27.78 ticks) 1.04
Scheduling time - 2 threads 108.54 ticks (±18.96 ticks) 107.49 ticks (±17.05 ticks) 1.01
Micro - Time for syscall (getpid) 13.11 ticks (±4.40 ticks) 12.29 ticks (±5.96 ticks) 1.07
Memcpy speed - (built_in) block size 4096 53663.48 MByte/s (±38829.32 MByte/s) 61044.21 MByte/s (±43551.15 MByte/s) 0.88
Memcpy speed - (built_in) block size 1048576 14156.33 MByte/s (±12232.29 MByte/s) 13571.72 MByte/s (±11585.99 MByte/s) 1.04
Memcpy speed - (built_in) block size 16777216 6631.98 MByte/s (±5310.73 MByte/s) 9389.72 MByte/s (±7546.26 MByte/s) 0.71
Memset speed - (built_in) block size 4096 54092.54 MByte/s (±39135.04 MByte/s) 61142.74 MByte/s (±43628.69 MByte/s) 0.88
Memset speed - (built_in) block size 1048576 14404.61 MByte/s (±12335.96 MByte/s) 13977.23 MByte/s (±11848.46 MByte/s) 1.03
Memset speed - (built_in) block size 16777216 6668.20 MByte/s (±5324.62 MByte/s) 9550.52 MByte/s (±7627.95 MByte/s) 0.70
Memcpy speed - (rust) block size 4096 48120.93 MByte/s (±36779.44 MByte/s) 52582.38 MByte/s (±38288.51 MByte/s) 0.92
Memcpy speed - (rust) block size 1048576 12510.71 MByte/s (±10290.13 MByte/s) 14038.11 MByte/s (±11659.56 MByte/s) 0.89
Memcpy speed - (rust) block size 16777216 6745.13 MByte/s (±5418.74 MByte/s) 9160.23 MByte/s (±7348.29 MByte/s) 0.74
Memset speed - (rust) block size 4096 48380.58 MByte/s (±36967.73 MByte/s) 53707.92 MByte/s (±39201.38 MByte/s) 0.90
Memset speed - (rust) block size 1048576 12866.89 MByte/s (±10508.31 MByte/s) 14323.01 MByte/s (±11801.22 MByte/s) 0.90
Memset speed - (rust) block size 16777216 6780.29 MByte/s (±5431.57 MByte/s) 9446.19 MByte/s (±7561.24 MByte/s) 0.72
alloc_benchmarks Build Time 309.03 s 310.83 s 0.99
alloc_benchmarks File Size 0.97 MB 0.97 MB 1.00
Allocations - Allocation success 100.00 % 100.00 % 1
Allocations - Deallocation success 100.00 % 100.00 % 1
Allocations - Pre-fail Allocations 100.00 % 100.00 % 1
Allocations - Average Allocation time 21055.95 Ticks (±1335.41 Ticks) 20952.80 Ticks (±1132.25 Ticks) 1.00
Allocations - Average Allocation time (no fail) 21055.95 Ticks (±1335.41 Ticks) 20952.80 Ticks (±1132.25 Ticks) 1.00
Allocations - Average Deallocation time 2755.84 Ticks (±721.01 Ticks) 2654.62 Ticks (±435.62 Ticks) 1.04
mutex_benchmark Build Time 304.80 s 305.05 s 1.00
mutex_benchmark File Size 1.01 MB 1.01 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 39.46 ns (±4.21 ns) 39.68 ns (±5.03 ns) 0.99
Mutex Stress Test Average Time per Iteration - 2 Threads 31.62 ns (±2.70 ns) 32.30 ns (±3.40 ns) 0.98

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

@mkroening mkroening added this pull request to the merge queue Dec 1, 2025
Merged via the queue into hermit-os:main with commit c6e0298 Dec 1, 2025
19 checks passed
@fogti fogti deleted the less-str-alloc2 branch December 1, 2025 08:08
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