-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Wrapper script game-performance add AMD 3D V-Cache support. #86
Comments
Hey, Yeah, would be generally nice. I thought about a detection of:
Ideally @vnepogodin could implement into ananicy-cpp that we can set for example per profile cpu pinning. SCX Schedulers, like LAVD and bpfland have already automatically support for this, maybe you want to check it out too. |
AMD provided a patch for this. But sadly we would need sudo permissions therefore it can not be integrated into this script. |
@DoomedSouls Could you maybe test that? |
I ran 3 benchmarks with 5 games. First benchmark with echo frequency | sudo tee /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode. Second benchmark with echo cache | sudo tee /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode. Third benchmark with manually set process affinity. TLDR: AMD 3D V-Cache Performance Optimizer Driver does not do much. Setting process affinity gives the best results, especially on Kingdom Come: Deliverance and Green Hell. Link to the benchmarks https://flightlessmango.com/users/1447 *Note: Im using CachyOS with kernel cachyos-znver4/linux-cachyos and sched-ext scx_bpfland and the launch command game-performance %command%. |
Well, bpfland does not respect these changes for the driver, so you unlikely see a difference. Anyways, after some testing with another user, it seems changed the platform driver does not change the preffered core results. Please use the linux-cachyos-rc kernel for that:
The required values you can get with following command on each of above tests:
|
BIOS set to frequency/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:196 BIOS set to cache/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:236 BIOS set to driver/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:196 BIOS set to driver, explicit set to frequency in driver (echo frequency | sudo tee /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode)/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:196 BIOS set to driver, explicitly set to cache in driver (echo cache | sudo tee /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode)/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:236 TLDR: AMD 3D V-Cache Performance Optimizer Driver does change the preferred cores. |
Can we not just use ferall gamemode but with everything disable like this only core pinning is enabled. This is how my gamemode.ini file looks like in /home/.config/ [general] ; The desired governor is used when entering GameMode instead of "performance" ; The iGPU desired governor is used when the integrated GPU is under heavy load ; GameMode can change the scheduler policy to SCHED_ISO on kernels which support it (currently ; GameMode can renice game processes. You can put any value between 0 and 20 here, the value ; By default, GameMode adjusts the iopriority of clients to BE/0, you can put any value ; Sets whether gamemode will inhibit the screensaver when active ; Sets whether gamemode will disable split lock mitigation when active [filter] ; Gamemode will always reject anything in the blacklist [gpu] ; Setting this to the keyphrase "accept-responsibility" will allow gamemode to apply GPU optimisations such as overclocks ; The DRM device number on the system (usually 0), ie. the number in /sys/class/drm/card0/ ; Nvidia specific settings ; These will modify the core and mem clocks of the highest perf state in the Nvidia PowerMizer ; AMD specific settings [cpu] [supervisor] ; In case you want to allow a supervisor to take full control of gamemode, this option can be set [custom] ;end=notify-send "GameMode ended" ; Timeout for scripts (seconds). Scripts will be killed if they do not complete within this time. |
Add to wrapper script game performance support for AMD 3D V-Cache CCD. Force the game to only use the CCD with 3D V-Cache.
The text was updated successfully, but these errors were encountered: