Merge pull request #23 from outis1one/claude/bios-vt-power-settings-mxjh0x
Claude/bios vt power settings mxjh0x
This commit is contained in:
@@ -2163,7 +2163,7 @@ Click **Next**.
|
|||||||
|
|
||||||
| Field | Value |
|
| Field | Value |
|
||||||
|-------|-------|
|
|-------|-------|
|
||||||
| Graphic card | **Default (VirtIO)** ← temporary for install |
|
| Graphic card | **VirtIO-GPU** ← temporary for install |
|
||||||
| Machine | q35 |
|
| Machine | q35 |
|
||||||
| BIOS | OVMF (UEFI) |
|
| BIOS | OVMF (UEFI) |
|
||||||
| Add EFI Disk | checked |
|
| Add EFI Disk | checked |
|
||||||
@@ -2180,11 +2180,12 @@ Click **Next**.
|
|||||||
> **Pre-Enrolled Keys must be unchecked.** Enabling it turns on Secure Boot,
|
> **Pre-Enrolled Keys must be unchecked.** Enabling it turns on Secure Boot,
|
||||||
> which blocks NVIDIA kernel modules from loading in the guest.
|
> which blocks NVIDIA kernel modules from loading in the guest.
|
||||||
|
|
||||||
> **Graphic card: use Default (VirtIO) during install.** With `none` selected,
|
> **Graphic card: in Proxmox 9 "VirtIO-GPU" is the new name for what was
|
||||||
> noVNC has no virtual display to connect to and shows "Failed to run vncproxy."
|
> previously called "Default".** Use VirtIO-GPU during install — it provides a
|
||||||
> Leave it as VirtIO for the Ubuntu install. After the GPU is passed through and
|
> virtual display so noVNC works. With `none` selected, noVNC shows "Failed to
|
||||||
> NVIDIA drivers are installed inside the VM, come back to Hardware → Display
|
> run vncproxy" because there is no virtual display device. After the GPU is
|
||||||
> and change it to `none`.
|
> passed through and NVIDIA drivers are installed, change it to `none` in
|
||||||
|
> Hardware → Display.
|
||||||
|
|
||||||
> **Qemu Agent** — check this now, then after Ubuntu is installed run
|
> **Qemu Agent** — check this now, then after Ubuntu is installed run
|
||||||
> `apt install qemu-guest-agent` inside the VM. It enables clean shutdown from
|
> `apt install qemu-guest-agent` inside the VM. It enables clean shutdown from
|
||||||
@@ -2201,9 +2202,11 @@ Click **Next**.
|
|||||||
|-------|-------|
|
|-------|-------|
|
||||||
| Bus/Device | SCSI / 0 |
|
| Bus/Device | SCSI / 0 |
|
||||||
| Storage | local-lvm |
|
| Storage | local-lvm |
|
||||||
| Disk size (GiB) | 64 |
|
| Disk size (GiB) | 600 |
|
||||||
| Cache | Write back |
|
| Cache | Write back |
|
||||||
| Discard | checked (if local-lvm is on SSD) |
|
| Discard | checked |
|
||||||
|
| IO thread | checked |
|
||||||
|
| SSD emulation | unchecked |
|
||||||
|
|
||||||
> **Write back** acknowledges writes to the VM as soon as they land in the
|
> **Write back** acknowledges writes to the VM as soon as they land in the
|
||||||
> host's RAM cache, before they hit disk — faster than "No cache" (the
|
> host's RAM cache, before they hit disk — faster than "No cache" (the
|
||||||
@@ -2211,6 +2214,10 @@ Click **Next**.
|
|||||||
> For the raw HDD passthrough later, cache mode is irrelevant — those drives
|
> For the raw HDD passthrough later, cache mode is irrelevant — those drives
|
||||||
> manage their own caching.
|
> manage their own caching.
|
||||||
|
|
||||||
|
> **SSD emulation** is not needed. Discard + IO thread already handles TRIM
|
||||||
|
> pass-through correctly with VirtIO SCSI. SSD emulation only matters for
|
||||||
|
> older IDE/SATA emulated controllers.
|
||||||
|
|
||||||
Click **Next**.
|
Click **Next**.
|
||||||
|
|
||||||
**Tab: CPU**
|
**Tab: CPU**
|
||||||
@@ -2248,6 +2255,15 @@ Click **Next**.
|
|||||||
| Field | Value |
|
| Field | Value |
|
||||||
|-------|-------|
|
|-------|-------|
|
||||||
| Memory (MiB) | 49152 |
|
| Memory (MiB) | 49152 |
|
||||||
|
| Minimum memory (MiB) | 49152 |
|
||||||
|
| Ballooning Device | **unchecked** |
|
||||||
|
|
||||||
|
> **Disable ballooning for VM 100.** Set Minimum = Maximum (both 49152) and
|
||||||
|
> uncheck Ballooning Device. Ballooning lets Proxmox dynamically reclaim RAM
|
||||||
|
> from the VM, but it fights against NUMA memory pinning and can cause latency
|
||||||
|
> spikes during Immich indexing or Jellyfin transcoding. Lock it at 48 GiB.
|
||||||
|
> Ballooning is fine for VM 101 (Frigate) where consistent low-latency RAM
|
||||||
|
> access is less critical.
|
||||||
|
|
||||||
Common MiB values for reference:
|
Common MiB values for reference:
|
||||||
|
|
||||||
@@ -2292,11 +2308,16 @@ Click **Add** → **PCI Device**.
|
|||||||
|-------|-------|
|
|-------|-------|
|
||||||
| Raw Device | select the GPU from the dropdown |
|
| Raw Device | select the GPU from the dropdown |
|
||||||
| All Functions | **checked** |
|
| All Functions | **checked** |
|
||||||
| Primary GPU | **checked** |
|
| ROM-Bar | **checked** |
|
||||||
| PCI-Express | **checked** |
|
| PCI-Express | **checked** |
|
||||||
|
| Primary GPU | **checked** |
|
||||||
|
|
||||||
Click **Add**.
|
Click **Add**.
|
||||||
|
|
||||||
|
> **ROM-Bar must stay checked.** NVIDIA drivers read the GPU's VBIOS through
|
||||||
|
> the ROM BAR during initialization. Unchecking it causes the driver to fail
|
||||||
|
> or the GPU to not be recognized inside the VM.
|
||||||
|
|
||||||
> VM 100 gets the GPU for Jellyfin transcoding, Immich ML acceleration,
|
> VM 100 gets the GPU for Jellyfin transcoding, Immich ML acceleration,
|
||||||
> HandBrake encoding, and general desktop GPU acceleration.
|
> HandBrake encoding, and general desktop GPU acceleration.
|
||||||
|
|
||||||
@@ -2337,45 +2358,6 @@ needs USB 3.0 speed and works on any port.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### Step 11.5 — Add Coral USB to VM 101
|
|
||||||
|
|
||||||
In the left panel, click **101** → **Hardware** tab.
|
|
||||||
|
|
||||||
Click **Add** → **USB Device**.
|
|
||||||
|
|
||||||
First entry (pre-init ID):
|
|
||||||
|
|
||||||
| Field | Value |
|
|
||||||
|-------|-------|
|
|
||||||
| Use USB Vendor/Device ID | selected |
|
|
||||||
| Vendor ID | 1a6e |
|
|
||||||
| Device ID | 089a |
|
|
||||||
|
|
||||||
Click **Add**.
|
|
||||||
|
|
||||||
Click **Add** → **USB Device** again.
|
|
||||||
|
|
||||||
Second entry (post-init ID):
|
|
||||||
|
|
||||||
| Field | Value |
|
|
||||||
|-------|-------|
|
|
||||||
| Use USB Vendor/Device ID | selected |
|
|
||||||
| Vendor ID | 18d1 |
|
|
||||||
| Device ID | 9302 |
|
|
||||||
|
|
||||||
Click **Add**.
|
|
||||||
|
|
||||||
> **Why two entries?** The Coral USB presents as `1a6e:089a` before Frigate
|
|
||||||
> loads firmware onto it, then re-enumerates as `18d1:9302` after firmware
|
|
||||||
> loads. Both must be passed through or the second enumeration will not be
|
|
||||||
> accessible inside the VM.
|
|
||||||
|
|
||||||
> **The Coral must be physically plugged in to the R730xd before starting the
|
|
||||||
> VM.** If it is not connected, the VM boots fine but the USB devices will
|
|
||||||
> not appear.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Passing other USB devices to VMs
|
### Passing other USB devices to VMs
|
||||||
|
|
||||||
Any USB device plugged into the R730xd can be passed through to a VM using
|
Any USB device plugged into the R730xd can be passed through to a VM using
|
||||||
@@ -2582,17 +2564,71 @@ scsi8: /dev/disk/by-id/scsi-35000cca23bab1234,size=0
|
|||||||
|
|
||||||
Click **Create VM** in the web UI.
|
Click **Create VM** in the web UI.
|
||||||
|
|
||||||
| Tab | Value |
|
**Tab: General**
|
||||||
|-----|-------|
|
|
||||||
| General | VM ID: **101**, Name: **frigate** |
|
| Field | Value |
|
||||||
| OS | ubuntu-24.04.4-live-server-amd64.iso |
|
|-------|-------|
|
||||||
| System → Graphic card | **Default (VirtIO)** |
|
| VM ID | 101 |
|
||||||
| System → Machine | q35 |
|
| Name | frigate |
|
||||||
| System → BIOS | OVMF (UEFI) |
|
|
||||||
| System → Pre-Enrolled Keys | **unchecked** |
|
**Tab: OS**
|
||||||
| CPU | 6 cores, host |
|
|
||||||
| Memory | 8192 MiB |
|
| Field | Value |
|
||||||
| Disk | 64 GiB on local-lvm |
|
|-------|-------|
|
||||||
|
| ISO image | ubuntu-24.04.4-live-server-amd64.iso |
|
||||||
|
| OS Type | Linux |
|
||||||
|
| Version | 6.x - 2.6 Kernel |
|
||||||
|
|
||||||
|
**Tab: System**
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Graphic card | VirtIO-GPU |
|
||||||
|
| Machine | q35 |
|
||||||
|
| BIOS | OVMF (UEFI) |
|
||||||
|
| Add EFI Disk | checked |
|
||||||
|
| EFI Storage | local-lvm |
|
||||||
|
| Pre-Enrolled Keys | unchecked |
|
||||||
|
| SCSI Controller | VirtIO SCSI Single |
|
||||||
|
| Qemu Agent | checked |
|
||||||
|
| Add TPM | unchecked |
|
||||||
|
|
||||||
|
> Pre-Enrolled Keys unchecked — no Secure Boot needed for Ubuntu Server.
|
||||||
|
|
||||||
|
**Tab: Disks**
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Bus/Device | SCSI / 0 |
|
||||||
|
| Storage | local-lvm |
|
||||||
|
| Disk size (GiB) | 32 |
|
||||||
|
| Cache | Write back |
|
||||||
|
| Discard | checked |
|
||||||
|
| IO thread | checked |
|
||||||
|
| SSD emulation | unchecked |
|
||||||
|
|
||||||
|
**Tab: CPU**
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Sockets | 1 |
|
||||||
|
| Cores | 6 |
|
||||||
|
| Type | host |
|
||||||
|
| Enable NUMA | checked |
|
||||||
|
|
||||||
|
> 6 cores from socket 1 (VM 100 uses socket 0). NUMA keeps memory local to
|
||||||
|
> the cores doing the work.
|
||||||
|
|
||||||
|
**Tab: Memory**
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Memory (MiB) | 8192 |
|
||||||
|
| Minimum memory (MiB) | 8192 |
|
||||||
|
| Ballooning Device | unchecked |
|
||||||
|
|
||||||
|
> Ballooning disabled — locks the VM at 8 GiB, same reason as VM 100. 8 GiB
|
||||||
|
> is sufficient for Frigate with the Coral handling inference.
|
||||||
|
|
||||||
**Tab: Network**
|
**Tab: Network**
|
||||||
|
|
||||||
@@ -2603,12 +2639,53 @@ Click **Create VM** in the web UI.
|
|||||||
| VLAN Tag | your security VLAN tag (e.g. 20) |
|
| VLAN Tag | your security VLAN tag (e.g. 20) |
|
||||||
| Firewall | checked |
|
| Firewall | checked |
|
||||||
|
|
||||||
> Frigate runs on a dedicated security VLAN so cameras are isolated from the
|
> Frigate runs on a dedicated security VLAN — cameras are isolated from the
|
||||||
> main LAN. Set the VLAN tag to match your camera/security VLAN.
|
> main LAN. Set the VLAN tag to match your camera/security VLAN.
|
||||||
|
|
||||||
> **No GPU for VM 101.** The Coral TPU (added in Step 11.5) handles all AI
|
Click **Finish**.
|
||||||
> inference. Frigate uses CPU decode for camera streams — perfectly adequate
|
|
||||||
> on dual Xeons with 6 cores dedicated to this VM.
|
> **No GPU for VM 101.** The Coral TPU (added in Step 11.9b below) handles
|
||||||
|
> all AI inference. Frigate uses CPU decode for camera streams — perfectly
|
||||||
|
> adequate on dual Xeons with 6 cores dedicated to this VM.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Step 11.9b — Add Coral USB to VM 101
|
||||||
|
|
||||||
|
In the left panel, click **101** → **Hardware** tab.
|
||||||
|
|
||||||
|
Click **Add** → **USB Device**.
|
||||||
|
|
||||||
|
First entry (pre-init ID):
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Use USB Vendor/Device ID | selected |
|
||||||
|
| Vendor ID | 1a6e |
|
||||||
|
| Device ID | 089a |
|
||||||
|
|
||||||
|
Click **Add**.
|
||||||
|
|
||||||
|
Click **Add** → **USB Device** again.
|
||||||
|
|
||||||
|
Second entry (post-init ID):
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Use USB Vendor/Device ID | selected |
|
||||||
|
| Vendor ID | 18d1 |
|
||||||
|
| Device ID | 9302 |
|
||||||
|
|
||||||
|
Click **Add**.
|
||||||
|
|
||||||
|
> **Why two entries?** The Coral USB presents as `1a6e:089a` before Frigate
|
||||||
|
> loads firmware onto it, then re-enumerates as `18d1:9302` after firmware
|
||||||
|
> loads. Both must be passed through or the second enumeration will not be
|
||||||
|
> accessible inside the VM.
|
||||||
|
|
||||||
|
> **The Coral must be physically plugged in to the R730xd before starting the
|
||||||
|
> VM.** If it is not connected, the VM boots fine but the USB devices will
|
||||||
|
> not appear.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user