User Tools

Site Tools


notes:wine

Information

  • Wine Staging

Environment Variables

Global Settings

sudo -e '/etc/profile.d/wine-tweaks.sh'
# Staging
export STAGING_WRITECOPY='1'
export STAGING_SHARED_MEMORY='1'
export STAGING_RT_PRIORITY_SERVER='90'
export STAGING_RT_PRIORITY_BASE='90'

# Large Address Aware
export WINE_LARGE_ADDRESS_AWARE='1'
export PROTON_FORCE_LARGE_ADDRESS_AWARE='1'

# Esync and Fsync
export WINEFSYNC='1'
export WINEESYNC='1'
export WINEFSYNC_FUTEX2='1'

# Mesa
export MESA_NO_ERROR='1'
export VAAPI_MPEG4_ENABLED='1'

# RADV
export RADV_TEX_ANISO='16'

# Multithread
#export mesa_glthread='true'
#export __GL_THREADED_OPTIMIZATIONS='1'

# DXVK
export DXVK_ASYNC='1'

# VKD3D
export VKD3D_CONFIG='dxr,dxr11'
export RADV_PERFTEST='nggc,rt,sam'

# Logging
export DXVK_LOG_LEVEL='none'
export WINEDEBUG='-all'
export VKD3D_DEBUG='none'
export VKD3D_SHADER_DEBUG='none'

Permissions

  • For Wine to be able to use the STAGING_RT_PRIORITY_SERVER environment variable
  • Allows rtprio up to 90 and nice up to 10
  • May also allow Realtime priorities to be used with other applications
  • :!: TODO: Apparently you can use a username instead of a group?

Common Distros

  • :!: This makes the assumption that the current user is also part of a group with the same name 1)
  • openSUSE Tumbleweed puts users in the users group, and this command will need modifying
  • Verify groups with the groups command
  • :!: This is needed on Fedora 36 as of 2022/06/13
groups
echo -e "@CHANGEME - rtprio 90\n@CHANGEME - nice -10" | sudo tee '/etc/security/limits.d/99-realtime.conf' > '/dev/null' && sudo sed -i 's/'CHANGEME'/'$USER'/g' '/etc/security/limits.d/99-realtime.conf' && cat '/etc/security/limits.d/99-realtime.conf'

Verify

  • Default: 0
  • Esync: 90
ulimit -r

Increase Open Files Limit

  • For Wine to be able to use the WINEESYNC environment variable
  • :!: This is needed on Fedora 36 as of 2022/06/13
sudo mkdir -p '/etc/systemd/system.conf.d' '/etc/systemd/user.conf.d' && echo -e "[Manager]\nDefaultLimitNOFILE=1048576" | sudo tee '/etc/systemd/system.conf.d/nofile.conf' > '/dev/null' && echo -e "[Manager]\nDefaultLimitNOFILE=1048576" | sudo tee '/etc/systemd/user.conf.d/nofile.conf' > '/dev/null' && cat '/etc/systemd/system.conf.d/nofile.conf' '/etc/systemd/user.conf.d/nofile.conf'

Verify

  • Default: 524288
  • Esync: 1048576
ulimit -Hn

Other

Graphics

mesa_glthread=true

RADV

RADV_DEBUG=info,startup
RADV_PERFTEST=cswave32,gewave32,nggc,sam,rt

HUD

DXVK_HUD=full
GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3;GPU-load,requested-VRAM+VRAM-usage;fps'
GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3;cpu4+cpu5+cpu6+cpu7;cpu8+cpu9+cpu10+cpu11;cpu12+cpu13+cpu14+cpu15;GPU-load,requested-VRAM+VRAM-usage;fps'
1)
this is default action on Fedora Workstation
notes/wine.txt · Last modified: 2022/06/13 22:39 by Sean Rhone