Skip to content

feat(xtask): run AArch64 QEMU with max CPU type instead of Cortex-A72#2544

Merged
mkroening merged 1 commit into
mainfrom
aarch64-cpu-max
Jul 10, 2026
Merged

feat(xtask): run AArch64 QEMU with max CPU type instead of Cortex-A72#2544
mkroening merged 1 commit into
mainfrom
aarch64-cpu-max

Conversation

@mkroening

@mkroening mkroening commented Jul 10, 2026

Copy link
Copy Markdown
Member

This PR works around #2543 by explicitly disabling LPA2 but otherwise enables QEMU's max CPU type.

This enables the ARM v8.5 RNG, for example. For details, see #2528.

@mkroening mkroening requested a review from Gelbpunkt July 10, 2026 11:50
@mkroening mkroening self-assigned this Jul 10, 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: 24ada90 Previous: 496a427 Performance Ratio
startup_benchmark Build Time 82.69 s 80.41 s 1.03
startup_benchmark File Size 0.80 MB 0.80 MB 1.00
Startup Time - 1 core 0.73 s (±0.02 s) 0.73 s (±0.02 s) 0.99
Startup Time - 2 cores 0.74 s (±0.03 s) 0.73 s (±0.02 s) 1.01
Startup Time - 4 cores 0.74 s (±0.02 s) 0.74 s (±0.02 s) 1.00
multithreaded_benchmark Build Time 82.43 s 81.45 s 1.01
multithreaded_benchmark File Size 0.86 MB 0.86 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 86.70 % (±5.96 %) 89.19 % (±7.29 %) 0.97
Multithreaded Pi Efficiency - 4 Threads 44.15 % (±3.36 %) 43.23 % (±2.22 %) 1.02
Multithreaded Pi Efficiency - 8 Threads 25.54 % (±2.11 %) 25.70 % (±1.35 %) 0.99
micro_benchmarks Build Time 81.35 s 80.50 s 1.01
micro_benchmarks File Size 0.86 MB 0.86 MB 1.00
Scheduling time - 1 thread 62.23 ticks (±2.53 ticks) 61.77 ticks (±3.53 ticks) 1.01
Scheduling time - 2 threads 35.76 ticks (±5.30 ticks) 34.80 ticks (±4.41 ticks) 1.03
Micro - Time for syscall (getpid) 3.43 ticks (±0.53 ticks) 3.24 ticks (±0.53 ticks) 1.06
Memcpy speed - (built_in) block size 4096 80366.63 MByte/s (±55754.13 MByte/s) 82518.62 MByte/s (±57031.72 MByte/s) 0.97
Memcpy speed - (built_in) block size 1048576 30705.27 MByte/s (±24770.14 MByte/s) 30748.73 MByte/s (±24797.64 MByte/s) 1.00
Memcpy speed - (built_in) block size 16777216 27099.88 MByte/s (±22365.79 MByte/s) 26790.22 MByte/s (±22121.79 MByte/s) 1.01
Memset speed - (built_in) block size 4096 80495.83 MByte/s (±55853.19 MByte/s) 82944.82 MByte/s (±57257.89 MByte/s) 0.97
Memset speed - (built_in) block size 1048576 31472.31 MByte/s (±25218.24 MByte/s) 31513.05 MByte/s (±25249.82 MByte/s) 1.00
Memset speed - (built_in) block size 16777216 27867.31 MByte/s (±22845.41 MByte/s) 27578.05 MByte/s (±22634.55 MByte/s) 1.01
Memcpy speed - (rust) block size 4096 76816.12 MByte/s (±53364.58 MByte/s) 77062.45 MByte/s (±53546.55 MByte/s) 1.00
Memcpy speed - (rust) block size 1048576 30489.94 MByte/s (±24738.40 MByte/s) 30445.41 MByte/s (±24660.75 MByte/s) 1.00
Memcpy speed - (rust) block size 16777216 27228.70 MByte/s (±22453.90 MByte/s) 27553.35 MByte/s (±22787.50 MByte/s) 0.99
Memset speed - (rust) block size 4096 77233.70 MByte/s (±53659.96 MByte/s) 77521.43 MByte/s (±53878.01 MByte/s) 1.00
Memset speed - (rust) block size 1048576 31230.53 MByte/s (±25168.91 MByte/s) 31217.22 MByte/s (±25122.56 MByte/s) 1.00
Memset speed - (rust) block size 16777216 28000.08 MByte/s (±22932.71 MByte/s) 28357.26 MByte/s (±23299.40 MByte/s) 0.99
alloc_benchmarks Build Time 75.60 s 75.20 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 4373.46 Ticks (±676.79 Ticks) 5199.04 Ticks (±177.30 Ticks) 0.84
Allocations - Average Allocation time (no fail) 5292.10 Ticks (±575.60 Ticks) 5969.39 Ticks (±137.74 Ticks) 0.89
Allocations - Average Deallocation time 1687.54 Ticks (±256.73 Ticks) 1612.60 Ticks (±268.46 Ticks) 1.05
mutex_benchmark Build Time 85.68 s 76.02 s 1.13
mutex_benchmark File Size 0.86 MB 0.86 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 12.08 ns (±0.27 ns) 11.94 ns (±0.37 ns) 1.01
Mutex Stress Test Average Time per Iteration - 2 Threads 39.96 ns (±2.74 ns) 40.06 ns (±2.30 ns) 1.00

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

@mkroening mkroening added this pull request to the merge queue Jul 10, 2026
Merged via the queue into main with commit 2e23902 Jul 10, 2026
20 checks passed
@mkroening mkroening deleted the aarch64-cpu-max branch July 10, 2026 14:42
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