You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Measure round-trip time (RTT) and lifecycle operations:
Guest call RTT (empty, no workload)
Guest call RTT (large param/return, no workload)
Sandbox create, evolve, and drop
Test across:
Hypervisors: Windows Server 2025/2022 Hyper-V, Linux KVM (5.x/6.x), MSHV (5.x/6.x)
CPU vendors: Intel, AMD
Native vs Hyperlight
Compare native host code vs Hyperlight (x86_64-unknown-none) on compute-heavy tasks to evaluate performance overhead due to limited CPU feature use (e.g. SSE/AVX).
Two important points that have been brought up in the last community meeting:
When we compare measurements between commits we should run the benchmarks on the same machine (maybe keep a separate machine only to run benchmarks). Ideally we want to see the most accurate measurements without outside factors' interference.
We should measure performance with different sandbox size(1MB, 10MB, 100MB ..), parameters size and other similar variations
At present there are a small number of performance benchmarks run as a part of PR validation but there are no scalability benchmarks.
We need to have some benchmarks that measure the scalability of hyperlight when a host process creates varying numbers of sandboxes and invokes functions on them concurrently.
These benchmarks should attempt to measure how hyperlight behaves in a number of dimensions, for example:
Different usage patterns e.g.
Create a Sandbox, Use, Drop
Create a Sandbox, initialize it, cache, use, return to cache
Different parameter types and sizes
Especially for the microbenchmarks, I think the numbers will be a lot more useful on a dedicated host without NV. We have seen before that there is a ton of variance in the GH CI benchmarks, because on the time scales we are looking at with the microbenchmarks, even a single extraneous entry into the host kernel scheduler shows up quite badly.
Activity
dblnz commentedon Jun 11, 2025
Two important points that have been brought up in the last community meeting:
simongdavies commentedon Jun 12, 2025
I also think we need to measure creating, using and dropping sandboxes in parallel with various degrees of parallelism
jsturtevant commentedon Jun 26, 2025
Add and few notes from #152:
syntactically commentedon Jun 30, 2025
Especially for the microbenchmarks, I think the numbers will be a lot more useful on a dedicated host without NV. We have seen before that there is a ton of variance in the GH CI benchmarks, because on the time scales we are looking at with the microbenchmarks, even a single extraneous entry into the host kernel scheduler shows up quite badly.
syntactically commentedon Jul 9, 2025
Converting this to a tracking issue for having the visibility into performance/regular benchmarks that we would like to see overall.