Closed copygirl closed 5 years ago
Could you try the pre-built version (you can download the .tar.xz
from the releases page).
Also: This message box appears after the client crashed before. So on first try with my version, it's normal to appear because the error still comes from using the other version. If it crashes again after clicking "no", we should look deeper.
I've tried the release version before, including an older one, even; after resetting proton. Though I'm not 100% sure if it's the same exception - let me test. (Can I just override the already patched proton folder?)
(edit: Also added my launch options.)
You can just remove the dist
sub-directory. Steam should unpack a clean original copy of Proton then automatically (I never tested that but the pyhton script says it does so). Only then (after running a Proton game once), re-apply my patch otherwise things may become messy or incomplete.
(edit: Also added my launch options.)
I'm running without any launch options.
Could you show the output of grep "model name" /proc/cpuinfo
?
Maybe also enable/add "WINEDEBUG": "fixme+all",
to user_settings.py
in the Proton directory, it results in a log file in $HOME
. Could you gist the log?
You can just remove the dist sub-directory. Steam should unpack a clean original copy of Proton then automatically (I never tested that but the pyhton script says it does so).
Done that and reextracted your latest release:
Unhandled exception: page fault on read access to 0x0002fc50 in 64-bit code (0x0000000140614095).
Could you show the output of grep "model name" /proc/cpuinfo?
copygirl@yuuko ~ grep "model name" /proc/cpuinfo
model name : AMD Ryzen 7 1700X Eight-Core Processor
model name : AMD Ryzen 7 1700X Eight-Core Processor
[... repeated a total of 16 times]
I never tested on Ryzen. What CPU flags does it have? (also in /proc/cpuinfo
)
BTW: With the latest PoE I had some texture loading issues, maybe we need another patch in wine now. OTOH, I just may have overloaded memory. I didn't inspect this deeper yet... Not using --waitforpreload
could help in that case.
Maybe also enable/add "WINEDEBUG": "fixme+all", to user_settings.py in the Proton directory, it results in a log file in $HOME. Could you gist the log?
https://gist.github.com/copygirl/37cd9c1c9d68e4bfed6e7ad6c3417f7b
I never tested on Ryzen. What CPU flags does it have? (also in /proc/cpuinfo)
This is the output for the first core:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb hw_pstate sme ssbd sev vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf xsaveerptr arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif overflow_recov succor smca
Okay, we do not need to look any further: Your system doesn't support DXVK properly:
info: Game: PathOfExile_x64Steam.exe
info: DXVK: v0.95-25-g4f58c2b
warn: OpenVR: Failed to locate module
info: Required Vulkan extension VK_KHR_get_physical_device_properties2 not supported
info: Required Vulkan extension VK_KHR_surface not supported
info: Required Vulkan extension VK_KHR_win32_surface not supported
DxvkInstance: Failed to create instance
err: DxvkInstance: Failed to create instance
The game crashes because it doesn't handle this situation gracefully. It just assumes the D3D11 initialization never fails.
Which graphics card are you using?
Which graphics card are you using?
Radeon RX 580
Should I be trying to non DXVK build?
Without DXVK there's no D3D11/64-bit support in PoE, at least not with my build because I'm not using the deferred D3D patches from staging.
But Radeon drivers may require bleeding edge drivers and bleeding edge mesa to be fully supported by DXVK. You may need to update both to beta or nightly builds first.
EDIT: Maybe look here: https://aur.archlinux.org/packages/mesa-git/ tho I cannot really tell you the pros and cons because I'm not running Arch here. Also look here: https://wiki.archlinux.org/index.php/Vulkan
I just installed vulkan-radeon
and the game does start up now with DX11! :tada:
(I was of the impression that mesa
just comes with Vulkan support for some reason.)
Will complain if I have any further issues in a quick test-run, otherwise close.
Yay! Have fun. Let me know how my build compares to the official Proton if you do any compares...
I'll keep this open until next release. I'll add some troubleshooting instructions to the README.md
so the next user can detect your problem and solution quicker.
You should try your own build now as it has created an optimized wine version for your CPU. You can just unpack it over Proton, no need to reset anything. Also, your log shows you're not running a SCHED_ISO enabled kernel. Doing so can further improve game performance. My next version of README.md
also contains some notes about optimizing Linux memory management towards gaming but this still needs some testing. But I found it can help PoE stalling and freezing.
I was able to run a tier 1 map from start to finish with pretty bad lag spikes / short freezes as it was .. appearing to load in assets or shaders, though without any other issues like the crashes I had before on official Proton with DX9. I haven't looked into the realms of building my own kernel before - I'll have to see about that at a later point.
Thanks for running me through this and helping me solve the main problem!
It's known to be laggy the first view hours of gameplay. It should settle down as soon as the pipeline state cache of DXVK has built up for most of the shaders used by the game. On successive runs, DXVK will precompile the cached shaders, and stutter should be mostly removed. However, stutters may return if PoE/Proton/DXVK was updated, as the new shaders have to be compiled back in. I recommend running through a few different maps for at least 15 minutes before starting a serious game session.
To confirm: Does it still lag when you play the same map again? It works fine here. I'm using PoE together with Feral GameMode (latest git version which includes my wine support patches).
My small gamemode helper:
$ cat /usr/local/bin/gamemode
#!/bin/sh
export LD_PRELOAD=$LD_PRELOAD:/usr/\$LIB/libgamemodeauto.so.0
# for libFAudio until SDL support patches are upstreamed, adjust to your needs
export SDL_AUDIO_FREQUENCY=48000
export SDL_AUDIO_CHANNELS=6
exec "$@"
Then install gamemode-git
and add gamemode %command%
to the game launch options.
PS: Arch has a SCHED_ISO-enabled kernel: https://wiki.archlinux.org/index.php/linux-ck
The alternative kernel and gamemode
seems to help a little bit, but yes, gameplay-affecting slowdowns still occur at times in new areas. It is becoming quite playable over time though and I'm quite happy with the result!
Wine 4.0 is out and I'm in the process of rebasing my branch. I'm closing this because I'm soon pushing the new commits including revised README.md
(work is committed, just not pushed yet).
I'm quite happy with you seeing improvements with CK and gamemode
, too. So my scheduler revision patches in my branch seem to have an effect also on your CPU architecture. Thanks for confirming.
@copygirl It's finally there... And the latest DXVK master seems to make multiple games I tested feel smoother, including PoE. But average FPS is reduced a little. Overall I count this as an improvement. Can you confirm?
I rebuilt wine-proton
after resetting to the latest git commit and noticed actually that I didn't appear to have been using the alternative kernel or gamemode
at all. After making sure I did, I didn't appear to get much of a difference between using it or not with Path of Exile.
I didn't follow all of the recommendations in the readme, such as Hints regarding Memory Allocation Issues and Reducing Stutters due to "allocstall" just yet and not sure if How to Benefit from the Scheduler Patches applies to me just yet.
I've been trying to fiddle around with getting Path of Exile to run on my main Arch Linux install. Now that my graphics card broke and the new one does not even have drivers for my throw-away-gaming-only Windows 8.1 install, I would really love to get it working.
I wasn't quite sure if me building the repo myself could possibly fix the issue, but after following the instructions seemingly successfully and installing the
dxvk-dist-wine-proton_3.16-4.0-rc7-unofficial-1.tar.xz
overProton 3.16 Beta
, it doesn't appear to work. Now, I'm not entirely sure I did everything correctly, but ... perhaps you can tell me?Here's what's being logged to my terminal when running steam straight from there. Let me know if you need any more of this or some additional information.
Game launch options in Steam:
%command% --waitforpreload --nologo
Thanks for your work! :green_heart: