-
Notifications
You must be signed in to change notification settings - Fork 501
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
Performance issues with GLX backend and 3D windows #168
Comments
|
Thank you. After your suggestions, my setup now looks like this:
This seems to have fixed the problem in most cases (tested about 10 native and Wine games) - compton's CPU usage stays low and I can move OpenGL windows around about as well as any other kind. It seems that the biggest factor was However, the issue persists in the games where I originally encountered it - Europa Universalis 4 and Crusader Kings 2, both by the same developer and using the same engine. So it's almost certainly the games' fault - for some reason, they clash with compton. For example, when idling in EU4 main menu without compton running, it steadily uses 42-44% CPU. But if compton is running, EU4 uses 45-62% CPU, and compton uses another 2-35% (with other games, compton always stays at around 2%). If I start moving the game window, compton's CPU usage may spike to 100%, leading to freezes. So even though it's not really compton's fault, would you have a guess about what in the game engine could be causing this? Or a test to determine that? I'd like to provide a useful bug report to the game developers about this. Oh, and |
|
Huh, after messing with various game settings I think I fixed it. Not fully sure what the exact cause was - refresh rate settings were probably part of it, but I also needed to change some other things I had configured for the game. In any case, now everything is smooth and tear-free. Thanks again for your help. |
Background: I've been experimenting with various vsync options trying to find the setup that performs best. I couldn't achieve truly tear-free display with
--backend xrender
, and the vsync implementation in nvidia proprietary drivers seems to be rather slow. After some tweaking, I arrived at this setup:Most of the time, it works perfectly: no tearing, no latency, virtually no CPU use.
Problem: However, this setup doesn't like windows with 3D content. That would be mostly games, but for testing purposes
glxgears
is enough to reproduce all symptoms. Basically, if I move the 3D window around, or move any other window so that it overlaps the 3D window, compton's CPU usage skyrockets and the whole display may freeze for several seconds at a time.Curiously, this behaviour seems to be related to the priority (nice level) of the 3D app - the lower priority, the better. For example,
nice -n10 glxgears
no longer causes freezing. But the priority of compton process has very little influence - perhaps the framerate decreases at lower priority, but it is not possible to cause or prevent freezing by setting compton's nice level. However, since I'm mostly concerned about running games in windowed mode, reduced priority may lead to reduced performance, which I'd like to avoid.Is there some launch option I overlooked, or some other tweak I could use that could fix the issue?
Additional info:
Compton version: git-v0.1_beta2-13-g6772ffb-2014-01-08 (same behaviour with the version form 2013-11-10 that I used before today)
GPU: Nvidia GTX 650 Ti, driver version 331.20
CPU: Core2Duo E8400, 3.0GHz
Window manager: Openbox (3.5.2)
The text was updated successfully, but these errors were encountered: