Wine — Env Vars
Wine itu jembatan Windows API. Semua emulator pake Wine — baik Winlator-type (Box64) maupun GameHub-type (FEX). Jadi env var di sini berlaku universal.
Sumber:
data/kb/wine-envs.mdCOPUX KB. Tag[VERIFIED]= dari testing komunitas,[THEORETICAL]= estimasi mekanisme.
Sync — thread synchronization
Section titled “Sync — thread synchronization”Wine default pake server roundtrip buat sinkronisasi thread — lambat. ESYNC dan FSYNC itu alternatif kernel-level yang jauh lebih cepet.
WINEDEBUG=-all
VERIFIED
Apa: Matikan SEMUA log Wine. Value -all = silent total.
Good: Tanpa ini, Wine nulis ribuan baris log per detik ke buffer memory → habiskan RAM, slow I/O. HP 8GB bisa berasa banget.
Bad: Ga ada log buat debugging.
Default: -all. WAJIB SELALU. Sub-opsi: WINEDEBUG=-all,+d3d = matikan semua kecuali d3d (buat debug DXVK issue).
WINEESYNC=1
VERIFIED
Apa: Event-based sync via eventfd kernel. 1=ON.
Good: Gantiin Wine sync default (server roundtrip) yang lambat. Eventfd = langsung kernel, jauh lebih cepet, stabil buat DX11/12. Fix stutter.
Bad: Hampir ga ada trade-off.
Default: 1. WAJIB SELALU.
WINEFSYNC=0
VERIFIED
Apa: Futex-based sync, alternatif ESYNC. 1=ON.
Good: Futex lebih low-level dari eventfd. Beberapa game lebih stabil di FSYNC.
Bad: JANGAN aktifkan bareng ESYNC. Pilih salah satu.
Default: 0 (pake ESYNC dulu). Switch ke 1 kalau ESYNC unstable di game tertentu.
DLL override — DirectX routing
Section titled “DLL override — DirectX routing”WINEDLLOVERRIDES=d3d11=n;dxgi=n
VERIFIED
Apa: Override DLL Wine. Format nama=mode.
Mode: n=native (pake DLL dari folder game, buat DXVK/VKD3D), b=builtin (Wine internal, buat WineD3D), n,b=native dulu fallback builtin, (kosong)=disable.
Good: Ini cara DirectX routing ke DXVK/VKD3D. Tanpa ini, game pake WineD3D (lambat).
Bad: Salah kombinasi = game pake renderer salah atau crash.
Default: Tergantung DX version game:
• DX11 + DXVK: d3d11=n;dxgi=n
• DX9 + DXVK: d3d9=n
• DX12 + VKD3D: d3d12=n;dxgi=n
• DX8 lama (SH2/SH3): d3d8=n,d3d9=n (pake d3d8to9 wrapper)
• Bypass Steam DRM: steam_api64=n
Memory — address space
Section titled “Memory — address space”WINE_LARGE_ADDRESS_AWARE=1
VERIFIED
Apa: Extend address space app 32-bit dari 2GB → 4GB via PE LAA flag.
Good: Banyak game 32-bit lawas OOM karena limit 2GB. Flag ini unlock 4GB.
Bad: Ga ada — pure benefit buat 32-bit. Ga ngaruh buat 64-bit game.
Default: 1.
Staging — Wine Staging optimizations
Section titled “Staging — Wine Staging optimizations”STAGING_SHARED_MEMORY=1
VERIFIED
Apa: Optimasi shared memory dari Wine Staging.
Good: Speedup IPC antar proses Wine (game ↔ wineserver).
Bad: Ga ada trade-off signifikan.
Default: 1.
STAGING_RT_PRIORITY_SERVER=90
THEORETICAL
Apa: Prioritas realtime buat wineserver (1-99).
Good: Thread Wine yang ngurusin sync sering kena starve. Naikin prio = response time turun, stutter berkurang.
Bad: Prio kegedean = ganggu thread lain di HP (termasuk audio). Audio crackling = turunin.
Default: 90. Turunin ke 70-80 kalau audio crackling.
STAGING_RT_PRIORITY_BASE=90
THEORETICAL
Apa: Prioritas realtime buat Wine thread (1-99). Pair dengan _SERVER.
Good: Sama kayak _SERVER — naikin prio Wine thread = response time turun.
Bad: Prio kegedeen = ganggu audio/system thread.
Default: 90. Turunin bareng _SERVER kalau audio crackling.
Audio — latency tuning
Section titled “Audio — latency tuning”PULSE_LATENCY_MSEC=60
VERIFIED
Apa: Latency buffer audio PulseAudio (ms).
Good: Kecil = responsif audio. 60ms = balance antara responsif & stabil.
Bad: Kecil banget (30) = risk crackling. Besar (120+) = audio delay ke-rasa.
Default: 60. Naikin ke 90-120 kalau audio crackling. Range aman 30-120ms.
Sync wajib — semua game
Section titled “Sync wajib — semua game”Lanjut
Section titled “Lanjut”- Box64 env — CPU translator (Winlator)
- FEXCore env — CPU translator (GameHub)
- DXVK env — graphics translator DX9/10/11
- VKD3D env — graphics translator DX12