refactor(mmio): deduplicate code and avoid allocation by cagatay-y · Pull Request #2319 · hermit-os/kernel
startup_benchmark Build Time
88.65 s
89.35 s
0.99 ❗
startup_benchmark File Size
0.79 MB
0.79 MB
1.00 ❗
Startup Time - 1 core
0.79 s (±0.03 s)
0.81 s (±0.03 s)
0.97
Startup Time - 2 cores
0.81 s (±0.03 s)
0.82 s (±0.03 s)
1.00
Startup Time - 4 cores
0.81 s (±0.03 s)
0.83 s (±0.02 s)
0.98
multithreaded_benchmark Build Time
90.93 s
92.62 s
0.98 ❗
multithreaded_benchmark File Size
0.89 MB
0.89 MB
1.00 ❗
Multithreaded Pi Efficiency - 2 Threads
90.22 % (±5.66 %)
90.72 % (±8.59 %)
0.99
Multithreaded Pi Efficiency - 4 Threads
44.43 % (±2.90 %)
44.88 % (±4.39 %)
0.99
Multithreaded Pi Efficiency - 8 Threads
26.46 % (±1.94 %)
25.87 % (±3.25 %)
1.02
micro_benchmarks Build Time
99.86 s
100.57 s
0.99 ❗
micro_benchmarks File Size
0.90 MB
0.90 MB
1.00 ❗
Scheduling time - 1 thread
74.49 ticks (±5.07 ticks)
74.98 ticks (±4.47 ticks)
0.99
Scheduling time - 2 threads
41.09 ticks (±5.15 ticks)
40.19 ticks (±4.30 ticks)
1.02
Micro - Time for syscall (getpid)
3.06 ticks (±0.30 ticks)
2.97 ticks (±0.23 ticks)
1.03
Memcpy speed - (built_in) block size 4096
73950.75 MByte/s (±51226.88 MByte/s)
76264.90 MByte/s (±52720.43 MByte/s)
0.97
Memcpy speed - (built_in) block size 1048576
30572.57 MByte/s (±25234.79 MByte/s)
30292.34 MByte/s (±24927.05 MByte/s)
1.01
Memcpy speed - (built_in) block size 16777216
23033.40 MByte/s (±19187.67 MByte/s)
23336.56 MByte/s (±19347.79 MByte/s)
0.99
Memset speed - (built_in) block size 4096
73770.54 MByte/s (±51131.54 MByte/s)
76939.35 MByte/s (±53180.56 MByte/s)
0.96
Memset speed - (built_in) block size 1048576
31337.26 MByte/s (±25668.42 MByte/s)
31021.82 MByte/s (±25328.96 MByte/s)
1.01
Memset speed - (built_in) block size 16777216
23797.03 MByte/s (±19734.93 MByte/s)
24084.23 MByte/s (±19864.53 MByte/s)
0.99
Memcpy speed - (rust) block size 4096
64507.64 MByte/s (±45028.30 MByte/s)
67864.13 MByte/s (±47549.43 MByte/s)
0.95
Memcpy speed - (rust) block size 1048576
30323.53 MByte/s (±24954.00 MByte/s)
30092.92 MByte/s (±24855.28 MByte/s)
1.01
Memcpy speed - (rust) block size 16777216
22946.63 MByte/s (±19092.15 MByte/s)
23650.21 MByte/s (±19669.17 MByte/s)
0.97
Memset speed - (rust) block size 4096
64519.77 MByte/s (±45035.72 MByte/s)
67668.78 MByte/s (±47427.13 MByte/s)
0.95
Memset speed - (rust) block size 1048576
31080.49 MByte/s (±25383.36 MByte/s)
30783.24 MByte/s (±25249.62 MByte/s)
1.01
Memset speed - (rust) block size 16777216
23716.00 MByte/s (±19649.09 MByte/s)
24398.50 MByte/s (±20179.80 MByte/s)
0.97
alloc_benchmarks Build Time
96.84 s
96.87 s
1.00 ❗
alloc_benchmarks File Size
0.86 MB
0.86 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
6481.22 Ticks (±86.15 Ticks)
5277.51 Ticks (±516.92 Ticks)
1.23 ❗
Allocations - Average Allocation time (no fail)
6481.22 Ticks (±86.15 Ticks)
5277.51 Ticks (±516.92 Ticks)
1.23 ❗
Allocations - Average Deallocation time
1243.24 Ticks (±113.29 Ticks)
959.09 Ticks (±254.64 Ticks)
1.30 ❗
mutex_benchmark Build Time
90.11 s
91.13 s
0.99 ❗
mutex_benchmark File Size
0.90 MB
0.90 MB
1.00 ❗
Mutex Stress Test Average Time per Iteration - 1 Threads
13.06 ns (±0.73 ns)
13.26 ns (±0.96 ns)
0.98
Mutex Stress Test Average Time per Iteration - 2 Threads
19.60 ns (±10.77 ns)
20.28 ns (±12.66 ns)
0.97