Skip to content

Conversation

@mkroening
Copy link
Member

This was proposed by @hcsch in #1995 (2efa9ca).

Does that make sense without that PR's context? Can we measure any difference here?

@mkroening mkroening self-assigned this Oct 27, 2025
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: d794594 Previous: 6019ba4 Performance Ratio
startup_benchmark Build Time 110.70 s 110.61 s 1.00
startup_benchmark File Size 0.89 MB 0.91 MB 0.99
Startup Time - 1 core 0.90 s (±0.03 s) 0.93 s (±0.03 s) 0.97
Startup Time - 2 cores 0.90 s (±0.02 s) 0.93 s (±0.04 s) 0.97
Startup Time - 4 cores 0.90 s (±0.03 s) 0.94 s (±0.03 s) 0.96
multithreaded_benchmark Build Time 111.08 s 110.93 s 1.00
multithreaded_benchmark File Size 1.00 MB 1.01 MB 0.99
Multithreaded Pi Efficiency - 2 Threads 88.01 % (±9.61 %) 92.34 % (±7.09 %) 0.95
Multithreaded Pi Efficiency - 4 Threads 43.05 % (±3.84 %) 44.95 % (±3.07 %) 0.96
Multithreaded Pi Efficiency - 8 Threads 25.00 % (±2.41 %) 25.64 % (±1.60 %) 0.98
micro_benchmarks Build Time 269.97 s 273.99 s 0.99
micro_benchmarks File Size 1.01 MB 1.01 MB 0.99
Scheduling time - 1 thread 161.38 ticks (±13.61 ticks) 162.90 ticks (±21.02 ticks) 0.99
Scheduling time - 2 threads 95.03 ticks (±13.20 ticks) 89.13 ticks (±11.93 ticks) 1.07
Micro - Time for syscall (getpid) 8.56 ticks (±4.63 ticks) 10.81 ticks (±4.73 ticks) 0.79
Memcpy speed - (built_in) block size 4096 58385.38 MByte/s (±42276.13 MByte/s) 64709.21 MByte/s (±45699.60 MByte/s) 0.90
Memcpy speed - (built_in) block size 1048576 15783.38 MByte/s (±12997.93 MByte/s) 15408.89 MByte/s (±12426.51 MByte/s) 1.02
Memcpy speed - (built_in) block size 16777216 11400.25 MByte/s (±9274.77 MByte/s) 11558.07 MByte/s (±9407.44 MByte/s) 0.99
Memset speed - (built_in) block size 4096 58774.56 MByte/s (±42668.24 MByte/s) 64775.93 MByte/s (±45733.35 MByte/s) 0.91
Memset speed - (built_in) block size 1048576 16256.91 MByte/s (±13359.03 MByte/s) 15762.33 MByte/s (±12632.18 MByte/s) 1.03
Memset speed - (built_in) block size 16777216 11807.47 MByte/s (±9608.00 MByte/s) 11893.62 MByte/s (±9629.31 MByte/s) 0.99
Memcpy speed - (rust) block size 4096 55149.65 MByte/s (±40584.91 MByte/s) 54010.26 MByte/s (±39296.64 MByte/s) 1.02
Memcpy speed - (rust) block size 1048576 15401.52 MByte/s (±12395.32 MByte/s) 15677.56 MByte/s (±12448.09 MByte/s) 0.98
Memcpy speed - (rust) block size 16777216 11202.90 MByte/s (±9045.11 MByte/s) 11260.20 MByte/s (±9144.57 MByte/s) 0.99
Memset speed - (rust) block size 4096 55432.20 MByte/s (±40781.79 MByte/s) 54756.81 MByte/s (±39887.77 MByte/s) 1.01
Memset speed - (rust) block size 1048576 15963.23 MByte/s (±12882.14 MByte/s) 16095.43 MByte/s (±12723.66 MByte/s) 0.99
Memset speed - (rust) block size 16777216 11636.27 MByte/s (±9425.52 MByte/s) 11569.34 MByte/s (±9343.13 MByte/s) 1.01
alloc_benchmarks Build Time 266.12 s 266.80 s 1.00
alloc_benchmarks File Size 0.96 MB 0.97 MB 0.99
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 11976.50 Ticks (±457.50 Ticks) 11934.55 Ticks (±589.33 Ticks) 1.00
Allocations - Average Allocation time (no fail) 11976.50 Ticks (±457.50 Ticks) 11934.55 Ticks (±589.33 Ticks) 1.00
Allocations - Average Deallocation time 2277.23 Ticks (±334.35 Ticks) 2238.08 Ticks (±305.33 Ticks) 1.02
mutex_benchmark Build Time 266.01 s 265.84 s 1.00
mutex_benchmark File Size 1.01 MB 1.02 MB 0.99
Mutex Stress Test Average Time per Iteration - 1 Threads 33.36 ns (±2.53 ns) 33.24 ns (±2.55 ns) 1.00
Mutex Stress Test Average Time per Iteration - 2 Threads 28.52 ns (±2.71 ns) 27.66 ns (±3.09 ns) 1.03

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

@Gelbpunkt
Copy link
Member

🤔 I think I have made this exact change before, but apparently I never PR'ed it. This makes sense.

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.

4 participants