Skip to content

Conversation

Gelbpunkt
Copy link
Member

Profile for a release build with debuginfo. Very useful for rftrace

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: f9163f8 Previous: 0df8da9 Performance Ratio
startup_benchmark Build Time 89.86 s 84.92 s 1.06
startup_benchmark File Size 0.87 MB 0.87 MB 1.00
Startup Time - 1 core 0.85 s (±0.03 s) 0.83 s (±0.02 s) 1.03
Startup Time - 2 cores 0.85 s (±0.03 s) 0.83 s (±0.02 s) 1.02
Startup Time - 4 cores 0.85 s (±0.02 s) 0.85 s (±0.02 s) 1.00
multithreaded_benchmark Build Time 86.54 s 86.89 s 1.00
multithreaded_benchmark File Size 0.97 MB 0.97 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 3.46 % (±16.59 %) 3.31 % (±15.88 %) 1.04
Multithreaded Pi Efficiency - 4 Threads 1.60 % (±7.69 %) 1.69 % (±8.11 %) 0.95
Multithreaded Pi Efficiency - 8 Threads 1.01 % (±4.84 %) 0.94 % (±4.50 %) 1.08
micro_benchmarks Build Time 95.56 s 88.61 s 1.08
micro_benchmarks File Size 0.98 MB 0.98 MB 1.00
Scheduling time - 1 thread 2.10 ticks (±10.10 ticks) 2.20 ticks (±10.58 ticks) 0.96
Scheduling time - 2 threads 1.07 ticks (±5.12 ticks) 1.11 ticks (±5.33 ticks) 0.96
Micro - Time for syscall (getpid) 0.52 ticks (±2.48 ticks) 0.69 ticks (±3.31 ticks) 0.75
Memcpy speed - (built_in) block size 4096 1795.98 MByte/s (±8620.69 MByte/s) 1775.57 MByte/s (±8522.73 MByte/s) 1.01
Memcpy speed - (built_in) block size 1048576 751.39 MByte/s (±3606.65 MByte/s) 752.28 MByte/s (±3610.92 MByte/s) 1.00
Memcpy speed - (built_in) block size 16777216 225.41 MByte/s (±1081.95 MByte/s) 227.28 MByte/s (±1090.92 MByte/s) 0.99
Memset speed - (built_in) block size 4096 1818.18 MByte/s (±8727.27 MByte/s) 1791.04 MByte/s (±8597.01 MByte/s) 1.02
Memset speed - (built_in) block size 1048576 1000.63 MByte/s (±4803.00 MByte/s) 1013.99 MByte/s (±4867.17 MByte/s) 0.99
Memset speed - (built_in) block size 16777216 1011.53 MByte/s (±4855.33 MByte/s) 1004.90 MByte/s (±4823.54 MByte/s) 1.01
Memcpy speed - (rust) block size 4096 1132.08 MByte/s (±5433.96 MByte/s) 1395.35 MByte/s (±6697.67 MByte/s) 0.81
Memcpy speed - (rust) block size 1048576 808.91 MByte/s (±3882.79 MByte/s) 782.24 MByte/s (±3754.77 MByte/s) 1.03
Memcpy speed - (rust) block size 16777216 228.74 MByte/s (±1097.94 MByte/s) 229.72 MByte/s (±1102.63 MByte/s) 1.00
Memset speed - (rust) block size 4096 1818.18 MByte/s (±8727.27 MByte/s) 1846.15 MByte/s (±8861.54 MByte/s) 0.98
Memset speed - (rust) block size 1048576 1000.03 MByte/s (±4800.12 MByte/s) 1007.94 MByte/s (±4838.10 MByte/s) 0.99
Memset speed - (rust) block size 16777216 1008.42 MByte/s (±4840.39 MByte/s) 1015.66 MByte/s (±4875.17 MByte/s) 0.99
alloc_benchmarks Build Time 80.01 s 81.25 s 0.98
alloc_benchmarks File Size 0.94 MB 0.94 MB 1.00
Allocations - Allocation success 2.00 % (±13.86 %) 2.00 % (±13.86 %) 1
Allocations - Deallocation success 1.40 % (±9.73 %) 1.40 % (±9.68 %) 1.01
Allocations - Pre-fail Allocations 2.00 % (±13.86 %) 2.00 % (±13.86 %) 1
Allocations - Average Allocation time 271.81 Ticks (±1883.57 Ticks) 196.65 Ticks (±1362.72 Ticks) 1.38
Allocations - Average Allocation time (no fail) 271.81 Ticks (±1883.57 Ticks) 196.65 Ticks (±1362.72 Ticks) 1.38
Allocations - Average Deallocation time 17.34 Ticks (±120.15 Ticks) 13.38 Ticks (±92.75 Ticks) 1.30
mutex_benchmark Build Time 80.86 s 80.89 s 1.00
mutex_benchmark File Size 0.98 MB 0.98 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 0.24 ns (±1.66 ns) 0.24 ns (±1.66 ns) 1
Mutex Stress Test Average Time per Iteration - 2 Threads 0.26 ns (±1.80 ns) 0.28 ns (±1.94 ns) 0.93

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

@mkroening mkroening self-assigned this Aug 9, 2025
@mkroening mkroening self-requested a review August 9, 2025 17:16
@@ -209,3 +209,7 @@ exclude = [

[patch.crates-io]
x86_64 = { git = "https://github.com/rust-osdev/x86_64.git" }

[profile.release-debug]
Copy link
Member

Choose a reason for hiding this comment

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

Should we call this profile to be more descriptive?

Suggested change
[profile.release-debug]
[profile.profile]


[profile.release-debug]
inherits = "release"
debug = true
Copy link
Member

Choose a reason for hiding this comment

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

The Cargo Book and Nicholas Nethercote suggest using "line-tables-only", instead.

Suggested change
debug = true
debug = "line-tables-only"

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