From cde0188c3d18b8e27d7603e5c45726fa3b1a676c Mon Sep 17 00:00:00 2001 From: rickpeters Date: Sun, 27 Sep 2026 16:25:05 +0200 Subject: [PATCH] docs: VRAM booster works with NVIDIA's open kernel modules (driver 615+); only the closed driver is greyed out --- CHANGELOG.md | 3 ++- README.md | 5 +++-- TECHNICAL.md | 6 ++++-- lib/menu.sh | 2 +- ui/qml/Texts.qml | 6 +++--- 5 files changed, 13 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d6094a..97ed8e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,8 @@ one per merged pull request. ## 2.5.0 - 2026-09-27 -- **docs: AGENTS.md and changelog for the vidmem detection** +- **docs: VRAM booster works with NVIDIA's open kernel modules (driver 615+); only the closed driver is greyed out** +- `d57e8d8` **docs: AGENTS.md and changelog for the vidmem detection** - `5a34633` **feat: VRAM booster also for drivers that name their region vidmem (or numbered), NVIDIA included once its driver registers it** - `479b70b` **feat: Everything in the home folder under steamify (state, scripts, icon), moved once from the old name** - `2e0881b` **fix: fill takes values literally; the notifier path is quoted in its unit** diff --git a/README.md b/README.md index 20c66da..d3a4e2d 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,9 @@ Steam Machine. ([details](TECHNICAL.md#update-notifications)). 7. **VRAM booster** - on by default: the game you're playing keeps its video memory and background apps make room, like SteamOS 3.9. Shown for GPUs - whose driver supports it (AMD, Intel) on kernel 7.2 or newer; greyed out - with an NVIDIA card until NVIDIA's driver supports it + whose driver supports it (AMD, Intel, NVIDIA with its open kernel modules + from driver 615) on kernel 7.2 or newer; greyed out with NVIDIA's closed + driver ([details](TECHNICAL.md#vram-booster)). 8. **HDMI-CEC** (experimental; off by default, on by default on a Steam Machine) - use Steam with your TV's diff --git a/TECHNICAL.md b/TECHNICAL.md index 493b3e8..4c65136 100644 --- a/TECHNICAL.md +++ b/TECHNICAL.md @@ -263,8 +263,10 @@ SteamOS 3.9 manages the dGPU's VRAM per cgroup: the game in front is protected, background apps are evicted first. Without it a game that needs most of the VRAM (8 GB on the Steam Machine) can be pushed into system RAM by the desktop and other apps, and stutter. The kernel side is the `dmem` -cgroup controller (7.2); amdgpu and Intel's xe register their VRAM with it, -NVIDIA's driver doesn't: with an NVIDIA card the option is shown greyed +cgroup controller (7.2); amdgpu and Intel's xe register their VRAM with it +(`drm//vram`), NVIDIA's open kernel modules from driver 615 too +(`nvidia//vidmem`); `dmemcg-booster` protects every region it lists, +whatever its name. NVIDIA's closed modules don't: with such a card the option is shown greyed out, with why, until its driver lists a region: then it's offered like any other (`WIZARD_VRAM_FAKE_NVIDIA=1` fakes the grey-out, `WIZARD_VRAM_CAPACITY=` reads the regions from a copy, for tests). Otherwise diff --git a/lib/menu.sh b/lib/menu.sh index 20832b7..6e18688 100644 --- a/lib/menu.sh +++ b/lib/menu.sh @@ -148,7 +148,7 @@ detect_components() { # Shows the current and newest BIOS version. bios_available && { bios_lookup_newest; LABEL[bios]="$(bios_label)"; } # Greyed out with an NVIDIA card: say why. - component_available vram && ! vram_selectable && LABEL[vram]="VRAM booster: not supported by NVIDIA's driver yet" + component_available vram && ! vram_selectable && LABEL[vram]="VRAM booster: needs NVIDIA's open kernel modules (driver 615+)" # First run: preselect the full SteamOS experience (never an action). if [[ "$any" == false ]]; then for c in "${COMPONENTS[@]}"; do diff --git a/ui/qml/Texts.qml b/ui/qml/Texts.qml index 6c3f3b8..363f083 100644 --- a/ui/qml/Texts.qml +++ b/ui/qml/Texts.qml @@ -25,7 +25,7 @@ QtObject { body: "Checks once a day and when you log in to the desktop. When there's a new Steamify you get a notification and a tray icon: open the app to see what's new and choose what to update, or skip that version. It never updates anything by itself.", changes: ["A daily check (systemd user timer), only on the desktop", "Tray icon only while an update is waiting", "Skip this version: quiet until the next one"] }, vram: { label: "VRAM booster", hint: "The game in front keeps its VRAM", - body: "Like SteamOS 3.9: the game you're playing keeps its video memory, and background apps are moved out first. Without it a game that needs most of the video memory can spill into system RAM and stutter. Shown for GPUs whose driver supports it (AMD, Intel) on kernel 7.2 or newer.", + body: "Like SteamOS 3.9: the game you're playing keeps its video memory, and background apps are moved out first. Without it a game that needs most of the video memory can spill into system RAM and stutter. Shown for GPUs whose driver supports it (AMD, Intel, NVIDIA with its open kernel modules from driver 615) on kernel 7.2 or newer.", changes: ["dmemcg-booster (system and user service)", "plasma-foreground-booster, which tells it which window is in front", "Off: removed again, unless you had installed them yourself"] }, cec: { label: "HDMI-CEC", hint: "Use Steam with the TV remote, TV on/off with the PC", experimental: true, body: "Use Steam with your TV remote, and the TV turns on and off with the PC. Turn on CEC on the TV too (Sony: BRAVIA Sync, Samsung: Anynet+, LG: SimpLink).", @@ -48,8 +48,8 @@ QtObject { }) // Replaces the explanation of an option that can't be turned on here. readonly property var unsupported: ({ - vram: { body: "Not available with your NVIDIA graphics card: NVIDIA's driver doesn't tell Linux how its video memory is used yet, so there's nothing to steer. It works with AMD and Intel graphics cards, and shows up here as soon as NVIDIA's driver supports it.", - changes: ["Nothing: can't be turned on with NVIDIA's driver"] } + vram: { body: "Not available with the NVIDIA driver you're using: it doesn't tell Linux how its video memory is used, so there's nothing to steer. NVIDIA's open kernel modules do, from driver 615 on (nvidia-open, CachyOS's default for RTX 20 series and newer); with those it's available here.", + changes: ["Nothing: needs NVIDIA's open kernel modules, driver 615 or newer"] } }) // Per plan action: the review's chip [text, colour, background] and the