-
Notifications
You must be signed in to change notification settings - Fork 0
What is VxM (and what it isn't)
VxM is a specialized hypervisor orchestration utility designed exclusively for Nitrux. It enables multi-GPU workstations to run the host (Nitrux) and a guest (e.g., Windows 11) simultaneously, with each OS having exclusive control over its own dedicated graphics card.
Unlike traditional virtualization solutions that rely on emulated graphics or translation layers (which introduce significant latency), VxM leverages VFIO PCI passthrough to provide the guest OS with direct, bare-metal access to hardware resources. This architecture eliminates virtualization overhead for graphics and input, making the guest indistinguishable from a natively installed OS.
graph TD
subgraph Hardware ["Workstation Hardware"]
iGPU["Primary GPU (Intel/AMD)"]
dGPU["Secondary GPU (Nvidia/AMD)"]
Input["Keyboard & Mouse"]
end
subgraph Host ["Host: Nitrux OS"]
Orchestrator["VxM Orchestrator"]
Hyprland -->|Uses| iGPU
end
subgraph Virtualization ["Virtualization Layer"]
QEMU["QEMU / KVM process"]
InputLinux["Input-Linux (Evdev Passthrough)"]
end
subgraph Guest ["Guest: Windows 11"]
Game["Games / Apps"]
Driver["Native GPU Driver"]
end
%% Connections
Input -->|Default| Hyprland
Input -.->|Ctrl+Ctrl Toggle| InputLinux
InputLinux -->|Injects| Guest
Orchestrator -->|Manages| QEMU
QEMU -->|VFIO Passthrough| dGPU
Driver -->|Direct Access| dGPU
%% Styling
style dGPU fill:#f96,stroke:#333,stroke-width:2px
style Guest fill:#bfb,stroke:#333,stroke-width:2px
style Host fill:#bbf,stroke:#333,stroke-width:2px
VxM automates the complex "choreography" required for hardware passthrough, which is typically done manually via shell scripts or complex libvirt XML edits.
-
Zero-latency input: Implements a software-based KVM using
input-linux. -
Dynamic driver isolation: Automatically unbinds the secondary GPU from the host driver (e.g.,
amdgpuornvidia) and binds it tovfio-pcion demand. It safely rebinds the device to the host when the VM shuts down. -
DDC/CI display automation: Eliminates the need to switch monitor inputs manually. VxM sends DDC commands to your monitor to physically switch inputs (e.g., from DisplayPort to HDMI) when the guest starts and stops.
-
Rootless execution model: Runs the QEMU process as an unprivileged user while handling privileged hardware preparation (hugepages reservation, device ownership) securely in the background.
-
"Batteries included" approach: Automatically manages
swtpmfor TPM 2.0 emulation and heuristically detects the correct OVMF (UEFI) firmware pairs, ensuring compatibility with modern Windows security requirements out of the box.
-
A hardware orchestrator: It is primarily a tool for managing hardware resources (GPUs, input devices, monitors) and assigning them to a virtual machine.
-
Built by and for Nitrux: We build VxM to integrate with Nitrux's immutable root architecture, overlay system, and security model.
-
A "Dual-Boot" killer: We design it for users who need to run high-performance workloads (gaming, CAD, Adobe Suite) in a secondary OS without rebooting their machine.
-
Not a general-purpose VM manager: It is not a replacement for VirtualBox, GNOME Boxes, or virt-manager. We did not design it for running server clusters, headless instances, or software-rendered VMs.
-
Not for single-GPU systems: VxM strictly requires at least two GPUs (e.g., an iGPU for the host and a dGPU for the guest). It does not support single-GPU passthrough scenarios.
-
Not an emulation layer: It does not translate graphics calls (like VirGL or Venus). If you do not have a secondary GPU to pass through, VxM will not function.
-
A closed or proprietary software or a cross-distro utility. While VxM is designed specifically for Nitrux and doesn't aim for compatibility with other distributions (even if its building blocks do), it remains fully open-source. PRs are welcome.
-
Not a container, runtime, Live USB creator, Linux distro, desktop environment, or—for the record—proprietary software.
Note
We don't know why anyone would think that, but one can never know, so let's clarify.
©2026 Nitrux Latinoamericana S.C.
Hardware Constraints
- 1. Dual GPUs are Mandatory
- 2. IOMMU Groups and UEFI Firmware
- 3. "Stubborn" Hardware (AMD Reset Bug)
- 4. Laptop/Mobile GPUs
Software Environment
- 1. Can I use VxM with a single GPU?
- 2. Why is my RAM usage so high when the VM is off?
- 3. How do I release my mouse/keyboard from the VM?
- 4. Can I use Looking Glass?
- 5. Where is the virtual disk located?
- 6. Does Windows 11 work?
- 7. How do I install network and storage drivers during Windows installation?
- 8. How do I reset VxM?
- 9. Do the NVIDIA drivers work with VxM in Windows?
- 1. My monitor switches to a black screen when the VM starts
- 2. I get an "IOMMU Group" error
- 3. Session crashed after the VM stopped