Skip to content

ci: upgrade to Ubuntu 26.04#2493

Draft
mkroening wants to merge 2 commits into
mainfrom
ci-ubuntu-26.04
Draft

ci: upgrade to Ubuntu 26.04#2493
mkroening wants to merge 2 commits into
mainfrom
ci-ubuntu-26.04

Conversation

@mkroening

Copy link
Copy Markdown
Member

No description provided.

@mkroening mkroening self-assigned this Jun 22, 2026

@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: df39a32 Previous: 80ddb41 Performance Ratio
startup_benchmark Build Time 82.69 s 84.08 s 0.98
startup_benchmark File Size 0.77 MB 0.77 MB 1.00
Startup Time - 1 core 0.80 s (±0.03 s) 0.78 s (±0.02 s) 1.03
Startup Time - 2 cores 0.81 s (±0.03 s) 0.78 s (±0.02 s) 1.04
Startup Time - 4 cores 0.78 s (±0.02 s) 0.79 s (±0.02 s) 1.00
multithreaded_benchmark Build Time 80.32 s 84.74 s 0.95
multithreaded_benchmark File Size 0.86 MB 0.86 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 89.83 % (±7.94 %) 89.91 % (±7.04 %) 1.00
Multithreaded Pi Efficiency - 4 Threads 44.98 % (±2.76 %) 44.59 % (±3.96 %) 1.01
Multithreaded Pi Efficiency - 8 Threads 26.01 % (±1.42 %) 25.81 % (±1.77 %) 1.01
micro_benchmarks Build Time 80.59 s 84.85 s 0.95
micro_benchmarks File Size 0.87 MB 0.87 MB 1.00
Scheduling time - 1 thread 70.58 ticks (±4.27 ticks) 69.95 ticks (±3.60 ticks) 1.01
Scheduling time - 2 threads 38.02 ticks (±3.69 ticks) 38.89 ticks (±4.81 ticks) 0.98
Micro - Time for syscall (getpid) 4.38 ticks (±0.65 ticks) 4.52 ticks (±0.65 ticks) 0.97
Memcpy speed - (built_in) block size 4096 79291.97 MByte/s (±54830.88 MByte/s) 81501.17 MByte/s (±56311.67 MByte/s) 0.97
Memcpy speed - (built_in) block size 1048576 29971.42 MByte/s (±24381.54 MByte/s) 30207.13 MByte/s (±24513.35 MByte/s) 0.99
Memcpy speed - (built_in) block size 16777216 23643.86 MByte/s (±19429.90 MByte/s) 24558.71 MByte/s (±20265.22 MByte/s) 0.96
Memset speed - (built_in) block size 4096 79864.88 MByte/s (±55211.26 MByte/s) 82291.10 MByte/s (±56782.79 MByte/s) 0.97
Memset speed - (built_in) block size 1048576 30723.08 MByte/s (±24807.38 MByte/s) 30965.54 MByte/s (±24941.09 MByte/s) 0.99
Memset speed - (built_in) block size 16777216 23911.99 MByte/s (±19533.05 MByte/s) 25323.26 MByte/s (±20779.97 MByte/s) 0.94
Memcpy speed - (rust) block size 4096 71857.46 MByte/s (±50263.56 MByte/s) 70018.99 MByte/s (±49036.86 MByte/s) 1.03
Memcpy speed - (rust) block size 1048576 29891.88 MByte/s (±24414.50 MByte/s) 29906.33 MByte/s (±24373.88 MByte/s) 1.00
Memcpy speed - (rust) block size 16777216 24426.28 MByte/s (±20157.59 MByte/s) 25589.75 MByte/s (±21106.80 MByte/s) 0.95
Memset speed - (rust) block size 4096 72224.29 MByte/s (±50496.60 MByte/s) 70202.59 MByte/s (±49165.39 MByte/s) 1.03
Memset speed - (rust) block size 1048576 30644.27 MByte/s (±24835.37 MByte/s) 30681.42 MByte/s (±24831.49 MByte/s) 1.00
Memset speed - (rust) block size 16777216 24614.80 MByte/s (±20216.89 MByte/s) 26307.30 MByte/s (±21557.26 MByte/s) 0.94
alloc_benchmarks Build Time 78.99 s 77.85 s 1.01
alloc_benchmarks File Size 0.86 MB 0.86 MB 1.00
Allocations - Allocation success 91.32 % 91.32 % 1
Allocations - Deallocation success 100.00 % 100.00 % 1
Allocations - Pre-fail Allocations 61.46 % 61.46 % 1
Allocations - Average Allocation time 2878.36 Ticks (±261.76 Ticks) 2289.27 Ticks (±449.69 Ticks) 1.26
Allocations - Average Allocation time (no fail) 3862.25 Ticks (±223.78 Ticks) 3349.32 Ticks (±377.82 Ticks) 1.15
Allocations - Average Deallocation time 793.72 Ticks (±83.39 Ticks) 637.74 Ticks (±60.32 Ticks) 1.24
mutex_benchmark Build Time 79.90 s 78.82 s 1.01
mutex_benchmark File Size 0.87 MB 0.87 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 13.02 ns (±0.71 ns) 12.66 ns (±0.79 ns) 1.03
Mutex Stress Test Average Time per Iteration - 2 Threads 45.62 ns (±3.82 ns) 42.98 ns (±3.81 ns) 1.06

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

@cagatay-y

Copy link
Copy Markdown
Contributor

We should be able to uncomment these lines once this PR is merged

# FIXME: this is broken on QEMU 8.2.2
# Enable this once CI reaches QEMU 8.2.3 or QEMU 9.0.0
# - run: cargo xtask ci rs --arch ${{ matrix.arch }} --profile ${{ matrix.profile }} ${{ matrix.rs_flags }} --package httpd --features ci,hermit/dhcpv4,hermit/virtio-net qemu ${{ matrix.qemu_flags }} --devices virtio-net-pci
# if: matrix.arch != 'riscv64'
# env:
# # The buffer is sized to be smaller than the packets received during DHCPv4 address acquisition and thus exercise the buffer merging code path.
# HERMIT_MRG_RXBUF_SIZE: 200

@mkroening

Copy link
Copy Markdown
Member Author

Yeah, that's one of the reasons I wanted to try this out. ^^

I am unsure whether we should land this now, though, since it is still a public preview 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