Skip to content
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

Open
DoomedSouls opened this issue Sep 18, 2024 · 7 comments
Open

Wrapper script game-performance add AMD 3D V-Cache support. #86

DoomedSouls opened this issue Sep 18, 2024 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@DoomedSouls
Copy link

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.

@ptr1337
Copy link
Member

ptr1337 commented Sep 19, 2024

Hey,

Yeah, would be generally nice. I thought about a detection of:

  • 9950X (Core 2 Core Latency problems, but should be fixed in newer AGESA)
  • 9900X (Core 2 Core Latency problems, but should be fixed in newer AGESA)
  • 7950X3D
  • 7900X3D

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.

@ptr1337 ptr1337 added the enhancement New feature or request label Sep 19, 2024
@ptr1337
Copy link
Member

ptr1337 commented Oct 16, 2024

AMD provided a patch for this. But sadly we would need sudo permissions therefore it can not be integrated into this script.
We have applied the patch into the CachyOS Kernel, feel free to test.
echo cache | sudo tee /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101\:00/amd_x3d_mode

@ptr1337
Copy link
Member

ptr1337 commented Oct 18, 2024

@DoomedSouls Could you maybe test that?

@DoomedSouls
Copy link
Author

DoomedSouls commented Oct 20, 2024

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%.

@ptr1337
Copy link
Member

ptr1337 commented Oct 20, 2024

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.
According AMD following setups should be tested and get each time the values of them:

Please use the linux-cachyos-rc kernel for that:

  • BIOS set to frequency
  • BIOS set to cache
  • BIOS set to driver, no changes
  • BIOS set to driver, explicit set to frequency in driver
  • BIOS set to driver, explicitly set to cache in driver

The required values you can get with following command on each of above tests:

grep -v /sys/devices/system/cpu/cpu*/cpufreq/amd_pstate_prefcore_ranking

@DoomedSouls
Copy link
Author

BIOS set to frequency

/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu2/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu3/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu4/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu5/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu6/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu7/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu8/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu9/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu10/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu11/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu12/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu13/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu14/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu15/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu16/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu17/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu18/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu19/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu20/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu21/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu22/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu23/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu24/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu25/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu26/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu27/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu28/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu29/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu30/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu31/cpufreq/amd_pstate_prefcore_ranking:216

BIOS set to cache

/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu2/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu3/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu4/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu5/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu6/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu7/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu8/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu9/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu10/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu11/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu12/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu13/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu14/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu15/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu16/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu17/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu18/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu19/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu20/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu21/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu22/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu23/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu24/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu25/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu26/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu27/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu28/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu29/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu30/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu31/cpufreq/amd_pstate_prefcore_ranking:176

BIOS set to driver

/sys/devices/system/cpu/cpu1/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu2/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu3/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu4/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu5/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu6/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu7/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu8/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu9/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu10/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu11/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu12/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu13/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu14/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu15/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu16/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu17/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu18/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu19/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu20/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu21/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu22/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu23/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu24/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu25/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu26/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu27/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu28/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu29/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu30/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu31/cpufreq/amd_pstate_prefcore_ranking:216

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
/sys/devices/system/cpu/cpu2/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu3/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu4/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu5/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu6/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu7/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu8/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu9/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu10/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu11/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu12/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu13/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu14/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu15/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu16/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu17/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu18/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu19/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu20/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu21/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu22/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu23/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu24/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu25/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu26/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu27/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu28/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu29/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu30/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu31/cpufreq/amd_pstate_prefcore_ranking:216

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
/sys/devices/system/cpu/cpu2/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu3/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu4/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu5/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu6/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu7/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu8/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu9/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu10/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu11/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu12/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu13/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu14/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu15/cpufreq/amd_pstate_prefcore_ranking:176
/sys/devices/system/cpu/cpu16/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu17/cpufreq/amd_pstate_prefcore_ranking:236
/sys/devices/system/cpu/cpu18/cpufreq/amd_pstate_prefcore_ranking:226
/sys/devices/system/cpu/cpu19/cpufreq/amd_pstate_prefcore_ranking:216
/sys/devices/system/cpu/cpu20/cpufreq/amd_pstate_prefcore_ranking:231
/sys/devices/system/cpu/cpu21/cpufreq/amd_pstate_prefcore_ranking:221
/sys/devices/system/cpu/cpu22/cpufreq/amd_pstate_prefcore_ranking:211
/sys/devices/system/cpu/cpu23/cpufreq/amd_pstate_prefcore_ranking:206
/sys/devices/system/cpu/cpu24/cpufreq/amd_pstate_prefcore_ranking:196
/sys/devices/system/cpu/cpu25/cpufreq/amd_pstate_prefcore_ranking:201
/sys/devices/system/cpu/cpu26/cpufreq/amd_pstate_prefcore_ranking:181
/sys/devices/system/cpu/cpu27/cpufreq/amd_pstate_prefcore_ranking:191
/sys/devices/system/cpu/cpu28/cpufreq/amd_pstate_prefcore_ranking:171
/sys/devices/system/cpu/cpu29/cpufreq/amd_pstate_prefcore_ranking:186
/sys/devices/system/cpu/cpu30/cpufreq/amd_pstate_prefcore_ranking:166
/sys/devices/system/cpu/cpu31/cpufreq/amd_pstate_prefcore_ranking:176

TLDR: AMD 3D V-Cache Performance Optimizer Driver does change the preferred cores.

@DoomedSouls
Copy link
Author

DoomedSouls commented Oct 20, 2024

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 reaper thread will check every 5 seconds for exited clients, for config file changes, and for the CPU/iGPU power balance
;reaper_freq=5

; The desired governor is used when entering GameMode instead of "performance"
;desiredgov=performance
; The default governor is used when leaving GameMode instead of restoring the original value
;defaultgov=powersave

; The iGPU desired governor is used when the integrated GPU is under heavy load
;igpu_desiredgov=powersave
; Threshold to use to decide when the integrated GPU is under heavy load.
; This is a ratio of iGPU Watts / CPU Watts which is used to determine when the
; integraged GPU is under heavy enough load to justify switching to
; igpu_desiredgov. Set this to -1 to disable all iGPU checking and always
; use desiredgov for games.
;igpu_power_threshold=0.3

; GameMode can change the scheduler policy to SCHED_ISO on kernels which support it (currently
; not supported by upstream kernels). Can be set to "auto", "on" or "off". "auto" will enable
; with 4 or more CPU cores. "on" will always enable. Defaults to "off".
;softrealtime=off

; GameMode can renice game processes. You can put any value between 0 and 20 here, the value
; will be negated and applied as a nice value (0 means no change). Defaults to 0.
; To use this feature, the user must be added to the gamemode group (and then rebooted):
; sudo usermod -aG gamemode $(whoami)
;renice=0

; By default, GameMode adjusts the iopriority of clients to BE/0, you can put any value
; between 0 and 7 here (with 0 being highest priority), or one of the special values
; "off" (to disable) or "reset" (to restore Linux default behavior based on CPU priority),
; currently, only the best-effort class is supported thus you cannot set it here
;ioprio=0

; Sets whether gamemode will inhibit the screensaver when active
; Defaults to 1
;inhibit_screensaver=1

; Sets whether gamemode will disable split lock mitigation when active
; Defaults to 1
;disable_splitlock=1

[filter]
; If "whitelist" entry has a value(s)
; gamemode will reject anything not in the whitelist
;whitelist=RiseOfTheTombRaider

; Gamemode will always reject anything in the blacklist
;blacklist=HalfLife3
; glxgears

[gpu]
; Here Be Dragons!
; Warning: Use these settings at your own risk
; Any damage to hardware incurred due to this feature is your responsibility and yours alone
; It is also highly recommended you try these settings out first manually to find the sweet spots

; Setting this to the keyphrase "accept-responsibility" will allow gamemode to apply GPU optimisations such as overclocks
;apply_gpu_optimisations=0

; The DRM device number on the system (usually 0), ie. the number in /sys/class/drm/card0/
;gpu_device=0

; Nvidia specific settings
; Requires the coolbits extension activated in nvidia-xconfig
; This corresponds to the desired GPUPowerMizerMode
; "Adaptive"=0 "Prefer Maximum Performance"=1 and "Auto"=2
; See NV_CTRL_GPU_POWER_MIZER_MODE and friends in https://github.com/NVIDIA/nvidia-settings/blob/master/src/libXNVCtrl/NVCtrl.h
;nv_powermizer_mode=1

; These will modify the core and mem clocks of the highest perf state in the Nvidia PowerMizer
; They are measured as Mhz offsets from the baseline, 0 will reset values to default, -1 or unset will not modify values
;nv_core_clock_mhz_offset=0
;nv_mem_clock_mhz_offset=0

; AMD specific settings
; Requires a relatively up to date AMDGPU kernel module
; See: https://dri.freedesktop.org/docs/drm/gpu/amdgpu.html#gpu-power-thermal-controls-and-monitoring
; It is also highly recommended you use lm-sensors (or other available tools) to verify card temperatures
; This corresponds to power_dpm_force_performance_level, "manual" is not supported for now
;amd_performance_level=high

[cpu]
; Parking or Pinning can be enabled with either "yes", "true" or "1" and disabled with "no", "false" or "0".
; Either can also be set to a specific list of cores to park or pin, comma separated list where "-" denotes
; a range. E.g "park_cores=1,8-15" would park cores 1 and 8 to 15.
; The default is uncommented is to disable parking but enable pinning. If either is enabled the code will
; currently only properly autodetect Ryzen 7900x3d, 7950x3d and Intel CPU:s with E- and P-cores.
; For Core Parking, user must be added to the gamemode group (not required for Core Pinning):
; sudo usermod -aG gamemode $(whoami)
;park_cores=no
pin_cores=0-7,16-23

[supervisor]
; This section controls the new gamemode functions gamemode_request_start_for and gamemode_request_end_for
; The whilelist and blacklist control which supervisor programs are allowed to make the above requests
;supervisor_whitelist=
;supervisor_blacklist=

; In case you want to allow a supervisor to take full control of gamemode, this option can be set
; This will only allow gamemode clients to be registered by using the above functions by a supervisor client
;require_supervisor=0

[custom]
; Custom scripts (executed using the shell) when gamemode starts and ends
;start=notify-send "GameMode started"
; /home/me/bin/stop_foldingathome.sh

;end=notify-send "GameMode ended"
; /home/me/bin/start_foldingathome.sh

; Timeout for scripts (seconds). Scripts will be killed if they do not complete within this time.
;script_timeout=10

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants