hyperlight-dev / hyperlight-dev/hyperlight

Implement checks on VM limits for WHP / MSHV

Open
#169 0 comments 0 reactions 0 assignees View on GitHub
lifecycle/confirmed
Dominant language
Rust
Stars
4.7k
Forks
208
Avg merge
1d 7h
Merged PRs (30d)
47

Description

HyperV has some limits on the number of VMs that can be created on Windows (WHP) and Linux (MSHV).

On Windows in order to create more than 1 VM per host process we need to use a Surrogate Process Manager to spawn Surrogate processes through which we map memory to a VM, there is a limit (512) in terms of the number of VMs we can create from a single host process. We need to ensure that we can return an appropriate error message if a Host tries to exceed this limit.

Windows also has an upper limit in terms of the total number of VMs that can be created per Host machine, its not clear exactly what this number is (we observed 4030 on one machine but this may be dependent on the resources available on the host), it may be possible to monitor this number through a perfmon counter.

On Mariner Linux there is no per process limit or need for a surrogate process manager, however there is a limit in the total number of VMs that can be created per host (we observed around 2030) , again we should return a suitable error message when we breach this limit so that any Hyperlight Host understands the limitation.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.