Frogging-Family / wine-tkg-git

The wine-tkg build systems, to create custom Wine and Proton builds
891 stars 160 forks source link

explorer.exe and wineserver processes sudden high CPU usage #1239

Closed irvng-wav closed 2 months ago

irvng-wav commented 2 months ago

Hello! First of all thank you for your work. I'm using wine-tkg-staging-fsync-git-9.15.r0.g92374493-327 (fsync enabled on .bash_profile) for running windows music production plugins on Linux because that's what the creator of yabridge recommends. At first I was getting awesome performance but I ran into a strange behavior.

Every time I move through my project timeline I get really high cpu usage on the processes mentioned in the title: explorer.exe and wineserver, here are two videos:

The first one is with the program called REAPER, it's where the problem is most present (please also note the cpu monitor on the top right of my screen):

https://github.com/user-attachments/assets/64dc3dcc-da7f-4481-812c-4432091ae710

This second one is with Bitwig Studio, still the same behavior although the CPU stress is less than REAPER:

https://github.com/user-attachments/assets/2079de83-5225-47fb-ba9c-108651a3c4c3

With vanilla wine-staging this issue doesn't happen.

This is my customization file, I disabled most of the game patches because I don't play videogames on this machine, I just use it for music production: customization.txt

Besides that I'm really enjoying wine-tkg. Hope you can help me.

I'm running Arch Linux with Linux 6.10.2-arch1-1 kernel and GNOME 46 Wayland session.

Thanks in advance!

Edit: I built and installed wine-tkg again but this time leaving customization.cfg to it's default state. The problem persists.

Edit 2: This happens only on GNOME's Wayland session. Xorg doesn't have this problem. I just tested it.

konomikitten commented 2 months ago

I have a similar problem when play Guild Wars and Guild Wars 2. It seems to happen when the game is in the background rather than the foreground. I've observed the behaviour with the following builds:

wine-tkg-staging-fsync-git-9.13.r6.gfe62b910
wine-tkg-staging-fsync-git-9.14.r4.gc23ee1bf
wine-tkg-staging-fsync-git-9.15.r0.g92374493

Here's a screenshot of explorer.exe and wineserver using cpu for no reason I can discern:

image

This doesn't happen on wine-ge-custom specifically lutris-GE-Proton8-26-x86_64. This has only been something I've observed with wine-tkg-git

Tk-Glitch commented 2 months ago

Wine-ge is based on Valve's proton tree, which you could select to make wine-tkg builds too instead of upsteam based. That's what I tend to use these days myself as my system-wide wine. Wine upstream is prone to regressions and behavior changes (notably we had a recent breakage of winewayland, which might be linked to your issue @irvng-wav ). Regarding the explorer.exe and wineserver high loads with GW/GW2 it sounds like a different issue. I assume fsync was enabled?

konomikitten commented 2 months ago

Regarding the explorer.exe and wineserver high loads with GW/GW2 it sounds like a different issue. I assume fsync was enabled?

Yes fsync was enabled. I also tested the System Shock Remake and have the same issue it seems to be specific towine-tkg. I don't observe the same problem on the older wine-ge build. I also tested esync and have the same issue turning both esync and fsync off solves the problem. Though I'd imagine that would cause a pretty big hit to performance.

Kernel: Linux debian 6.10.4-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.10.4-1 (2024-08-12) x86_64 GNU/Linux

irvng-wav commented 2 months ago

Wine-ge is based on Valve's proton tree, which you could select to make wine-tkg builds too instead of upsteam based. That's what I tend to use these days myself as my system-wide wine.

imagen

Is "protonified" Wine-ge?

Tk-Glitch commented 2 months ago

valve-exp-bleeding will give you a similar build to wine-ge. Protonified is patching upstream with a selection of proton patches. We should add some details about those presets.

irvng-wav commented 2 months ago

valve-exp-bleeding will give you a similar build to wine-ge. Protonified is patching upstream with a selection of proton patches. We should add some details about those presets.

Thank you, I'm building valve-exp-bleeding right now. I forgot to ask if it supports fsync, since that's essential for getting the most out of music production plugins as far as I understand. I will do some testing and report my findings.

konomikitten commented 2 months ago

@Tk-Glitch I know this is a bit "me me me" but I'd really really appreciate it if we could have more CI's or builds released, I come here cause I really don't want to build wine all the time. And I feel like the current CI build isn't working out well for games.

irvng-wav commented 2 months ago

@Tk-Glitch valve-exp-bleeding worked without issues with fsync enabled, but then I also tried default-tkg set to wine staging version 9.10 and that also worked flawlessly. I'm sticking with default-tkg, thank you for your help!