GlouOS logoGlouOSWiki
glouos.org

AMD X3D cache mode

On dual-CCD Ryzen X3D processors, GlouOS steers games onto the 3D V-Cache cores automatically, the moment a game starts, and gives the high-clock cores back when it ends. No daemon, no settings page, nothing to configure.

Two kinds of cores on one chip

AMD's dual-CCD X3D processors, the Ryzen 9 7900X3D, 7950X3D and 9950X3D, have two different halves. One CCD carries 96 MB of stacked 3D V-Cache at slightly lower clocks; the other has normal cache but higher boost clocks.

CCDWhat it hasBest for
CCD 096 MB of stacked 3D V-Cache, slightly lower clocksGames (cache-hungry)
CCD 1Higher boost clocks, normal cacheRendering, compiling, general work

Games love the giant cache: when a game's threads land on the V-Cache CCD they can gain 10–20% FPS over running on the frequency CCD. On Windows, AMD ships a chipset driver and a "3D V-Cache Performance Optimizer" service to steer games there. On Linux, the kernel exposes the same choice through a sysfs knob:

/sys/bus/platform/drivers/amd_x3d_vcache/<device>/amd_x3d_mode

It accepts cache (prefer the V-Cache CCD) or frequency (prefer the fast CCD). Most distros leave it at the firmware default and never touch it, so games can end up scheduled on the wrong half of the chip.

Switched automatically, per game session

GlouOS flips the mode using the same event-driven hook chain that powers the rest of Game Mode. GameMode's D-Bus signal fires the hooks; there is no polling and no background service.

  • Game starts → the glou-gamemode-start hook writes cache, steering the game onto the V-Cache CCD.
  • Game exits → the glou-gamemode-end hook writes frequency, giving desktop work the high-clock cores back.

You get the Windows-style V-Cache optimizer behaviour with zero configuration, and your non-gaming workloads still enjoy the frequency CCD. The hooks run as your user, not root: a small tmpfiles.d rule grants the gamemode group write access to the sysfs knob at boot, and the installer puts every user in that group.

Only on the hardware that needs it

The amd_x3d_vcache sysfs device only exists on dual-CCD X3D parts with a recent kernel (the GlouOS gaming kernel includes the driver). On every other CPU the hooks match nothing and do nothing. There is nothing to configure and nothing to turn off.

Single-CCD X3D chips need no steering

Chips like the 7800X3D and 9800X3D have V-Cache on their only CCD, so every thread already lands on it. On those machines this feature is inert by design, and that is correct behaviour.

Verifying it works

On a dual-CCD X3D machine, you can watch the mode flip from a terminal:

cat /sys/bus/platform/drivers/amd_x3d_vcache/*/amd_x3d_mode   # frequency (idle)
gamemoderun sleep 5 &                                          # pretend a game is running
cat /sys/bus/platform/drivers/amd_x3d_vcache/*/amd_x3d_mode   # cache (during)

How the pieces fit

FileRole
/usr/local/bin/glou-gamemode-startwrites cache on game start
/usr/local/bin/glou-gamemode-endwrites frequency on game exit
/etc/tmpfiles.d/glouos-gaming.confgrants the gamemode group write access to the sysfs knob at boot
Installer users moduleputs every user in the gamemode group

GlouOS applies the same care to AMD graphics cards: see CoreCtrl GPU tuning for how fan, clock and power controls are unlocked out of the box.