Skip to content

Add pci support for risc-v#2550

Open
sbutz wants to merge 1 commit into
hermit-os:mainfrom
sbutz:sb/riscv_pci
Open

Add pci support for risc-v#2550
sbutz wants to merge 1 commit into
hermit-os:mainfrom
sbutz:sb/riscv_pci

Conversation

@sbutz

@sbutz sbutz commented Jul 13, 2026

Copy link
Copy Markdown

Follow-up Tasks:

  • PCI Handling is very similar across architectures. Reuse code across architectures where applicable.
  • Upgrade crate fdt to version 0.2 once released

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

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: 4434866 Previous: 2e23902 Performance Ratio
startup_benchmark Build Time 81.88 s 80.34 s 1.02
startup_benchmark File Size 0.80 MB 0.80 MB 1.00
Startup Time - 1 core 0.74 s (±0.02 s) 0.75 s (±0.02 s) 0.99
Startup Time - 2 cores 0.74 s (±0.02 s) 0.74 s (±0.02 s) 1.00
Startup Time - 4 cores 0.75 s (±0.02 s) 0.74 s (±0.02 s) 1.00
multithreaded_benchmark Build Time 82.13 s 82.11 s 1.00
multithreaded_benchmark File Size 0.86 MB 0.86 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 89.31 % (±6.88 %) 85.89 % (±6.61 %) 1.04
Multithreaded Pi Efficiency - 4 Threads 43.57 % (±3.11 %) 43.43 % (±2.56 %) 1.00
Multithreaded Pi Efficiency - 8 Threads 25.40 % (±1.67 %) 25.76 % (±1.53 %) 0.99
micro_benchmarks Build Time 81.36 s 80.40 s 1.01
micro_benchmarks File Size 0.86 MB 0.86 MB 1.00
Scheduling time - 1 thread 64.01 ticks (±4.45 ticks) 62.65 ticks (±4.06 ticks) 1.02
Scheduling time - 2 threads 36.46 ticks (±5.08 ticks) 34.08 ticks (±4.10 ticks) 1.07
Micro - Time for syscall (getpid) 3.36 ticks (±0.63 ticks) 3.45 ticks (±0.58 ticks) 0.98
Memcpy speed - (built_in) block size 4096 80483.27 MByte/s (±55703.85 MByte/s) 82448.38 MByte/s (±56997.13 MByte/s) 0.98
Memcpy speed - (built_in) block size 1048576 30536.84 MByte/s (±24648.48 MByte/s) 30585.98 MByte/s (±24707.84 MByte/s) 1.00
Memcpy speed - (built_in) block size 16777216 26932.76 MByte/s (±22288.04 MByte/s) 26340.06 MByte/s (±21720.96 MByte/s) 1.02
Memset speed - (built_in) block size 4096 80855.37 MByte/s (±55958.95 MByte/s) 82292.76 MByte/s (±56891.50 MByte/s) 0.98
Memset speed - (built_in) block size 1048576 31283.01 MByte/s (±25083.02 MByte/s) 31323.85 MByte/s (±25145.86 MByte/s) 1.00
Memset speed - (built_in) block size 16777216 27710.57 MByte/s (±22778.92 MByte/s) 27104.68 MByte/s (±22209.94 MByte/s) 1.02
Memcpy speed - (rust) block size 4096 70904.95 MByte/s (±49371.16 MByte/s) 74097.96 MByte/s (±51811.44 MByte/s) 0.96
Memcpy speed - (rust) block size 1048576 30237.78 MByte/s (±24518.16 MByte/s) 30361.60 MByte/s (±24602.37 MByte/s) 1.00
Memcpy speed - (rust) block size 16777216 26465.85 MByte/s (±21912.30 MByte/s) 27625.34 MByte/s (±22806.88 MByte/s) 0.96
Memset speed - (rust) block size 4096 71287.69 MByte/s (±49668.92 MByte/s) 74373.47 MByte/s (±51976.48 MByte/s) 0.96
Memset speed - (rust) block size 1048576 30988.67 MByte/s (±24956.87 MByte/s) 31110.89 MByte/s (±25033.24 MByte/s) 1.00
Memset speed - (rust) block size 16777216 27250.57 MByte/s (±22416.88 MByte/s) 28386.93 MByte/s (±23265.03 MByte/s) 0.96
alloc_benchmarks Build Time 75.41 s 74.76 s 1.01
alloc_benchmarks File Size 0.87 MB 0.87 MB 1.00
Allocations - Allocation success 91.31 % 91.31 % 1
Allocations - Deallocation success 100.00 % 100.00 % 1
Allocations - Pre-fail Allocations 61.44 % 61.44 % 1
Allocations - Average Allocation time 5448.42 Ticks (±127.42 Ticks) 5860.58 Ticks (±98.43 Ticks) 0.93
Allocations - Average Allocation time (no fail) 6088.65 Ticks (±137.20 Ticks) 6554.81 Ticks (±92.86 Ticks) 0.93
Allocations - Average Deallocation time 969.22 Ticks (±231.00 Ticks) 1805.01 Ticks (±250.35 Ticks) 0.54
mutex_benchmark Build Time 75.64 s 79.82 s 0.95
mutex_benchmark File Size 0.86 MB 0.86 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 12.06 ns (±0.37 ns) 12.10 ns (±0.41 ns) 1.00
Mutex Stress Test Average Time per Iteration - 2 Threads 41.14 ns (±2.48 ns) 40.26 ns (±1.68 ns) 1.02

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

@sbutz sbutz marked this pull request as ready for review July 13, 2026 18:57
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