Skip to content

Conversation

@fogti
Copy link
Contributor

@fogti fogti commented Jan 20, 2026

This is just a suggestion, but I found it way easier to understand code when the parts that are actually 100% identical aren't duplicated in per-architecture code.

@fogti fogti force-pushed the arch-kernel-unify branch from 350a2c2 to 62969ac Compare January 20, 2026 21:36
@fogti fogti force-pushed the arch-kernel-unify branch from 62969ac to 89eeaba Compare January 20, 2026 21:42
@fogti fogti changed the title refactor(karch/*/kernel): factor out duplicated code refactor(arch/*/kernel): factor out duplicated code Jan 20, 2026
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

Details
Benchmark Current: 89eeaba Previous: 16a22e7 Performance Ratio
startup_benchmark Build Time 96.39 s 99.12 s 0.97
startup_benchmark File Size 0.83 MB 0.87 MB 0.95
Startup Time - 1 core 0.93 s (±0.03 s) 0.93 s (±0.04 s) 1.00
Startup Time - 2 cores 0.95 s (±0.03 s) 0.95 s (±0.03 s) 1.00
Startup Time - 4 cores 0.93 s (±0.03 s) 0.94 s (±0.03 s) 0.99
multithreaded_benchmark Build Time 97.43 s 100.01 s 0.97
multithreaded_benchmark File Size 0.90 MB 0.97 MB 0.94
Multithreaded Pi Efficiency - 2 Threads 87.68 % (±9.60 %) 88.99 % (±7.74 %) 0.99
Multithreaded Pi Efficiency - 4 Threads 43.99 % (±3.98 %) 44.13 % (±3.07 %) 1.00
Multithreaded Pi Efficiency - 8 Threads 25.42 % (±2.01 %) 25.15 % (±1.66 %) 1.01
micro_benchmarks Build Time 93.57 s 100.62 s 0.93
micro_benchmarks File Size 0.91 MB 0.97 MB 0.94
Scheduling time - 1 thread 62.26 ticks (±3.48 ticks) 68.14 ticks (±3.26 ticks) 0.91
Scheduling time - 2 threads 35.08 ticks (±4.80 ticks) 39.01 ticks (±4.61 ticks) 0.90
Micro - Time for syscall (getpid) 3.07 ticks (±0.43 ticks) 3.12 ticks (±0.39 ticks) 0.98
Memcpy speed - (built_in) block size 4096 69561.78 MByte/s (±49606.23 MByte/s) 66786.53 MByte/s (±47591.91 MByte/s) 1.04
Memcpy speed - (built_in) block size 1048576 29726.58 MByte/s (±24350.62 MByte/s) 29552.08 MByte/s (±24310.39 MByte/s) 1.01
Memcpy speed - (built_in) block size 16777216 28753.74 MByte/s (±23938.61 MByte/s) 25151.21 MByte/s (±21178.85 MByte/s) 1.14
Memset speed - (built_in) block size 4096 70186.78 MByte/s (±50061.09 MByte/s) 67637.46 MByte/s (±48175.30 MByte/s) 1.04
Memset speed - (built_in) block size 1048576 30499.03 MByte/s (±24787.81 MByte/s) 30319.75 MByte/s (±24748.87 MByte/s) 1.01
Memset speed - (built_in) block size 16777216 29509.21 MByte/s (±24362.14 MByte/s) 25928.00 MByte/s (±21681.13 MByte/s) 1.14
Memcpy speed - (rust) block size 4096 63014.64 MByte/s (±46440.82 MByte/s) 60535.12 MByte/s (±44756.46 MByte/s) 1.04
Memcpy speed - (rust) block size 1048576 29454.57 MByte/s (±24207.62 MByte/s) 29421.41 MByte/s (±24305.21 MByte/s) 1.00
Memcpy speed - (rust) block size 16777216 28813.56 MByte/s (±23999.96 MByte/s) 25300.69 MByte/s (±21103.33 MByte/s) 1.14
Memset speed - (rust) block size 4096 64115.45 MByte/s (±47159.92 MByte/s) 61198.04 MByte/s (±45180.33 MByte/s) 1.05
Memset speed - (rust) block size 1048576 30285.13 MByte/s (±24692.09 MByte/s) 30190.94 MByte/s (±24744.07 MByte/s) 1.00
Memset speed - (rust) block size 16777216 29582.65 MByte/s (±24434.30 MByte/s) 26075.17 MByte/s (±21606.28 MByte/s) 1.13
alloc_benchmarks Build Time 92.18 s 92.43 s 1.00
alloc_benchmarks File Size 0.90 MB 0.94 MB 0.96
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 7287.91 Ticks (±76.49 Ticks) 7342.54 Ticks (±125.42 Ticks) 0.99
Allocations - Average Allocation time (no fail) 7287.91 Ticks (±76.49 Ticks) 7342.54 Ticks (±125.42 Ticks) 0.99
Allocations - Average Deallocation time 806.31 Ticks (±159.42 Ticks) 1122.16 Ticks (±303.26 Ticks) 0.72
mutex_benchmark Build Time 92.04 s 92.24 s 1.00
mutex_benchmark File Size 0.91 MB 0.97 MB 0.94
Mutex Stress Test Average Time per Iteration - 1 Threads 12.54 ns (±0.61 ns) 12.48 ns (±0.61 ns) 1.00
Mutex Stress Test Average Time per Iteration - 2 Threads 12.84 ns (±0.78 ns) 12.78 ns (±0.83 ns) 1.00

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

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