Skip to content

Conversation

@jounathaen
Copy link
Member

This feature delegates all /tmp file accesses to uhyve, which can handle them since hermit-os/uhyve#783
This might be desirable, if the tempfiles are larger than the assigned memory, and it is not desirable when high-performance is required.

This depends on #1976

CC @n0toose

Copy link
Member

@n0toose n0toose left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

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

Benchmark Current: 4a3a64b Previous: 0a574f1 Performance Ratio
startup_benchmark Build Time 112.20 s 112.17 s 1.00
startup_benchmark File Size 0.90 MB 0.86 MB 1.05
Startup Time - 1 core 0.91 s (±0.02 s) 0.92 s (±0.03 s) 0.99
Startup Time - 2 cores 0.93 s (±0.03 s) 0.91 s (±0.03 s) 1.02
Startup Time - 4 cores 0.92 s (±0.03 s) 0.90 s (±0.03 s) 1.02
multithreaded_benchmark Build Time 110.08 s 110.29 s 1.00
multithreaded_benchmark File Size 0.96 MB 0.96 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 87.03 % (±7.71 %) 90.21 % (±11.06 %) 0.96
Multithreaded Pi Efficiency - 4 Threads 42.16 % (±3.81 %) 43.77 % (±3.68 %) 0.96
Multithreaded Pi Efficiency - 8 Threads 24.36 % (±2.15 %) 25.74 % (±2.50 %) 0.95
micro_benchmarks Build Time 264.79 s 268.25 s 0.99
micro_benchmarks File Size 0.97 MB 0.97 MB 1.00
Scheduling time - 1 thread 158.17 ticks (±23.47 ticks) 148.09 ticks (±20.64 ticks) 1.07
Scheduling time - 2 threads 88.33 ticks (±14.63 ticks) 84.62 ticks (±21.43 ticks) 1.04
Micro - Time for syscall (getpid) 10.02 ticks (±4.93 ticks) 9.69 ticks (±3.51 ticks) 1.03
Memcpy speed - (built_in) block size 4096 62830.43 MByte/s (±44875.96 MByte/s) 60088.55 MByte/s (±43602.38 MByte/s) 1.05
Memcpy speed - (built_in) block size 1048576 15717.58 MByte/s (±12700.10 MByte/s) 15955.36 MByte/s (±12877.41 MByte/s) 0.99
Memcpy speed - (built_in) block size 16777216 11490.25 MByte/s (±9343.25 MByte/s) 11539.44 MByte/s (±9422.40 MByte/s) 1.00
Memset speed - (built_in) block size 4096 63481.55 MByte/s (±45307.35 MByte/s) 60692.81 MByte/s (±43930.14 MByte/s) 1.05
Memset speed - (built_in) block size 1048576 16095.58 MByte/s (±12925.74 MByte/s) 16329.57 MByte/s (±13087.08 MByte/s) 0.99
Memset speed - (built_in) block size 16777216 11729.25 MByte/s (±9463.81 MByte/s) 11768.44 MByte/s (±9537.48 MByte/s) 1.00
Memcpy speed - (rust) block size 4096 56885.31 MByte/s (±41408.66 MByte/s) 52603.46 MByte/s (±39907.35 MByte/s) 1.08
Memcpy speed - (rust) block size 1048576 14934.15 MByte/s (±11984.26 MByte/s) 15838.45 MByte/s (±12923.25 MByte/s) 0.94
Memcpy speed - (rust) block size 16777216 11644.17 MByte/s (±9432.96 MByte/s) 11496.86 MByte/s (±9346.63 MByte/s) 1.01
Memset speed - (rust) block size 4096 57754.10 MByte/s (±41946.64 MByte/s) 53627.63 MByte/s (±40204.50 MByte/s) 1.08
Memset speed - (rust) block size 1048576 15324.94 MByte/s (±12254.27 MByte/s) 16175.83 MByte/s (±13086.77 MByte/s) 0.95
Memset speed - (rust) block size 16777216 11868.40 MByte/s (±9546.29 MByte/s) 11803.55 MByte/s (±9534.43 MByte/s) 1.01
alloc_benchmarks Build Time 268.48 s 275.93 s 0.97
alloc_benchmarks File Size 0.96 MB 0.92 MB 1.05
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 17051.79 Ticks (±621.00 Ticks) 16993.86 Ticks (±868.21 Ticks) 1.00
Allocations - Average Allocation time (no fail) 17051.79 Ticks (±621.00 Ticks) 16993.86 Ticks (±868.21 Ticks) 1.00
Allocations - Average Deallocation time 2031.37 Ticks (±478.74 Ticks) 2094.62 Ticks (±499.20 Ticks) 0.97
mutex_benchmark Build Time 266.79 s 283.00 s 0.94
mutex_benchmark File Size 0.97 MB 0.97 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 32.60 ns (±2.82 ns) 34.04 ns (±3.45 ns) 0.96
Mutex Stress Test Average Time per Iteration - 2 Threads 28.48 ns (±3.03 ns) 29.22 ns (±3.01 ns) 0.97

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

@mkroening mkroening self-requested a review October 27, 2025 12:19
@mkroening mkroening self-assigned this Oct 27, 2025
Copy link
Member

@mkroening mkroening left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! :)

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.

4 participants