I have some stutter with videos (in fullscreen or not) when the compositing is enabled with Nvidia proprietary drivers. Whereas I enable "fullscreen redirect" or not it's present.
If I disable compositing the playback is perfect on Chrome and MPV (vdpau) where I tested. This behavior happen on my computer display at 60hz and also on my TV at 23.976hz.
The worst case is with compositing enabled on my TV at 23.976hz with a 23.976fps video.
Xubuntu 15.04 x64 with Xfce 4.12 from PPA with Xfwm4 from Git.
Nvidia proprietary drivers 355.11
Can't fix specific issues with closed source driver.
I don't want to restart that kind of discussion:
At the end you fix the issue and everybody is really grateful for your awesome work and to be able to use their PC properly.
I don't know if you can fix the problem but at least can we try please ?
No, sorry, I don't have neither the hardware (just an old m1710), the software (NVidia driver won't install on my laptop with an old NVidia 7950 Go, and when it did it was an old version of the driver because NVidia has decided that my hardware was legacy) or even the /will/ to work on such issues involving proprietary driver/software (because I believe strongly in free software, and I am not interested in closed source/proprietary software).
Stutter is probably coming from buffer overrun/underrun, which involves latency and other side effects between kernel and userspace, which in this case are both using closed source software. Or maybe your hardware cannot cope with the load.
The load is very light, that's not that.
I obviously have a Nvidia card and I can/want help to test some code or whatever you want. I also opened a post on the Nvidia Linux forum to seek some help.
You already done the hard work by fixing the tearing problem. It's too bad to let this stutter problem in Xfwm4.
If you move a window the movement isn't smooth. Maybe it's related ?
I guess this is missing a few additional data.
- By stutter, you mean sound or images? (I took it was sound thus my previous remark about the buffer underrun, but maybe you meant the images)
- Does it happen with/without the vsync option enabled? (vsync option in git master adds additional costly sync, it should be syn'ed even without as long as the next point is true)
- Do you have vsync on blank enabled in nvidia settings?
- Was it like that from the beginning (you did not mention that in bug 10439) or did that start after an upgrade/update?
- I am not using Ubuntu nor the PPA repo so I cannot tell which version you use (hard to say without the output of "xfwm4 --version" which gives the git commit)
Unfortunately, that won't change the fact that I cannot test nor investigate that issue(your offering to test for me is not a workable solution for me, it's simply not practical) - All I can say is when I tried the nvidia driver on my m1710 on Fedora 22, it worked well with xfwm4 from git master with OpenGL support.
- I mean video stutter, the video or windows displacement is not smooth.
- It happen with and without the vsync option enabled.
- I have vsync on blank enabled in nvidia settings.
- It's like that from the beginning. I just tested with Xfwm4 4.12.3. I did not mention that in bug 10439 because I wasn't using XFCE until that bug was fixed (tearing).
- I'm using this PPA to have XFCE 4.12 (https://launchpad.net/~xubuntu-dev/+archive/ubuntu/xfce-4.12). I built Xfwm4 myself (http://ubuntuforums.org/showthread.php?t=2287998&p=13349439#post13349439) from the latest code available :
This is xfwm4 version 4.12.0git.111777d (revision 111777d) for Xfce 4.12
Released under the terms of the GNU General Public License.
Compiled against GTK+-2.24.27, using GTK+-2.24.27.
Build configuration and supported features:
- Startup notification support: Yes
- XSync support: Yes
- Render support: Yes
- Xrandr support: Yes
- Xpresent support: No
- Embedded compositor: Yes
- Epoxy support: Yes
- KDE systray proxy (deprecated): No
I really think we have to try something to fix this because :
- XFCE don't work well for a lot of people
- These people will complaint that something don't work
- These people will be disapointed by the "Won't Fix" status
- These people will change desktop environement or worse switch back to Windows...
I understand and agree "wontfix" is not the right status, it's more "worksforme" because I just reinstalled nvidia closed source driver 304.125 (the version compatible with my hardware) and it works fine, so I cannot reproduce the stutter issue.
I am not saying the issue does not exist for you with your hardware/nvidia driver, but if I cannot reproduce an issue specific to a given driver, there is no way I can investigate that, even less with a closed source driver.
(In reply to Olivier Fourdan from comment #8)
> I am not saying the issue does not exist for you with your hardware/nvidia
> driver, but if I cannot reproduce an issue specific to a given driver, there
> is no way I can investigate that, even less with a closed source driver.
Now if someone who can reproduce and would want to investigate and send me a sensible patch, I'll be more than happy to include it...
I totally understand that you can't fix this but you can't imagine how disappointed I'm that in 2015 I can't use my rather standard PC flawlessly.
(In reply to jeremy9856 from comment #10)
> I totally understand that you can't fix this but you can't imagine how
> disappointed I'm that in 2015 I can't use my rather standard PC flawlessly.
Yeah, well, the compositor is optional, that won't stop you from using your standard PC in 2015.
Have you tried other OpenGL apps/games w/out compositor? I see several similar reports affecting games.
I don't play games. I use my PC in a conventional way (web, youtube, a litte bit of web dev) and use MPV, by far the best player available, to watch some movies.
I'm sorry but I'm not calling using my PC flawlessly with a lot of tearing or with stutter or with the need to enable / disable the compositing...
And what about people that are not aware of compositing and that they just want to use their PC ?
The only desktop environement that works good enough for my use is KDE4. No visible bug, no tearing, no stutter, a lot of feature. But it's a little bit heavy. XFCE without this problem and with a few more little features (http://forum.xfce.org/viewtopic.php?id=9811) will be better I think.
You make a awesome work and for that a big thank you but one could assume that this kind of problem have been fixed for a while.
I reinstalled Xubuntu 15.04 x64 with Xfce 4.12, Xfwm4 from Git and Nvidia proprietary drivers 355.11 to make some more tests. I enabled compositing and "fullscreen redirect". Surprisingly, I don't have the same behavior!
The windows displacement is generally smooth except at some (few) moments.
The video playback seem to be smooth with MPV (vdpau and openlgl-hq) on my monitor (60hz - 23.976fps/60fps videos) and my TV (23.976hz - 23.976fps videos).
Chrome wasn't smooth in "windowed mode" on my test video (https://www.youtube.com/watch?v=cuXsupMuik4), with youtube html5 player but surprisingly it wasn't smooth too on KDE4.
In fullscreen mode chrome can almost be smooth on this video in XFCE and it's the same in KDE. Maybe it's a limitation of chrome.
One thing I didn't do this time is to not use the Gnome PPA that install Gnome 3.16. Can it be related ?
So maybe there is no bug ??? That need more tests !
I think I found something. It seem that I don't have any stutter if I don't use Systemload plugin.
The stutter is in sync with the refresh timing of Systemload plugin (0.25s). When I change the refresh timing of Systemload plugin (1s) the stutter happen every second. I think it should happen with intel and others GPU too if you want to test.
I need to do more tests to be sure that there isn't something else but it look promising.
I can confirm the stutter is induced by the Systemload, Generic monitor, Sensors plugins when they access to the cpu/gpu/mem load/temp, etc...
Sorry to thought that was a bug of Xfwm4 :)
That said do you think there is something to tweak in Xfwm4 to avoid this stutter when something access to the cpu/gpu/mem load/temp values ?
Speaking of tweaking, sometimes, without anything that access to cpu/gpu/mem load/temp, etc..., there is a little bit of stutter when you move a windows or, more important, when you watch a movie. Do you think something can be improved to avoid this ?
I know that seems to be some "paper cuts" (details) but it's really good to have something that works very well because it's not always the case in Linux :)
Olivier, what do you think of my last comment ?
Olivier can your answer please ?
I hope you will answer me someday Olivier.
(In reply to jeremy9856 from comment #18)
> I hope you will answer me someday Olivier.
Unlikely, I don't have the answers to your questions.
You maybe don't have the solution to this problem but nothing stop you to simply talk to me... Is this some kind of disregard ?
Everytime I report something, and I don't report a lot of bugs, it's like I bother you. Why you spend your time to make something if it's not to make it the best as possible ?
That said xfwm4 didn't have vsync for years, for exemple, and was plagued with tearing and that didn't seem to be a problem for you whereas the users of xfwm4 was annoyed. You don't really seem to care if your work works for the others. Maybe you should simply close the bug report feature if the only thing that interest you is that xfwm4 is working for you...
Anyway thanks for your work. I think I won't bother you anymore.
I close this bug report => No interest from the developper
(In reply to jeremy9856 from comment #21)
> Everytime I report something, and I don't report a lot of bugs, it's like I
> bother you. Why you spend your time to make something if it's not to make it
> the best as possible ?
You mentioned in comment 15 that the bug was not directly related to xfwm4 but to the use of the sensor plugin - Maybe the sensor plugin confuses the NVidia proprietary driver in one way or the other, but I cannot tell because I am not a kernel developer, and the NVidia driver is closed source anyway so even if I was I wouldn't be able to tell.
Basically, what I replied in comment 1 and comment 3, and now we're at comment 22...
> That said xfwm4 didn't have vsync for years, for exemple, and was plagued
> with tearing and that didn't seem to be a problem for you whereas the users
> of xfwm4 was annoyed. You don't really seem to care if your work works for
> the others. Maybe you should simply close the bug report feature if the only
> thing that interest you is that xfwm4 is working for you...
And yet I added not one but two different vsync mechanisms, does it really sound to you like I don't care? sigh...
> Anyway thanks for your work. I think I won't bother you anymore.
> I close this bug report => No interest from the developper
Again, I don't have neither the hardware nor the will to investigate issues with the NVidia closed source driver, NVidia has deemed my hardware as legacy and won't update the driver anymore.
So I test with what I have and it works for me, even with the (legacy) NVidia closed source driver.
Obviously you don't have read the comment 15 carefuly so :
The stutter is induced at least by the use of Systemload AND/OR Generic monitor AND/OR Sensors plugins when they access to the cpu/gpu/mem load/temp, etc... NOT only the GPU and NOT only one sensor BUT all I tested.
Maybe there is something to tweak in Xfwm4 to avoid this stutter when something access to the cpu/gpu/mem load/temp values ? I repeat the stutter happen when something read at least one of these values NOT only the GPU.
It's unlikely that all the sensor produce the stutter but xfwm4 seems to be disturb by them.
Sometimes, without anything that access to cpu/gpu/mem load/temp, etc..., there is a little bit of stutter when you move a windows or, more important, when you watch a movie. Do you think something can be improved to avoid this ?
And comment 14 : I think it should happen with intel and others GPU too if you want to test...
I really thank you again for your work but the vsync feature has been waited for years and years whereas it's essential to avoid tearing.
Olivier can you at least take a look at this please ?
Install Systemload and launch a video in MPV to see the stutter.
It should happen with Intel drivers too.
Olivier, are you not even interested to try even with open source drivers ?
(In reply to jeremy9856 from comment #25)
> Olivier, are you not even interested to try even with open source drivers ?
I did test of course, and there is no issue at all between sensors and GL playback here.
There is a very simple test that you can run on your system:
1. Disable compositing in xfwm4 entirely.
2. Open a terminal and run the following command:
$ watch -n .1 sensors
3. From another terminal, Run glxgears fullscreen
$ glxgears -fullscreen
And see if you get any slutter with this.
You may also test with a video playback fullscreen as well.
(In reply to Olivier Fourdan from comment #26)
> I did test of course, and there is no issue at all between sensors and GL
> playback here.
Thank you very much ! You should have said me.
> There is a very simple test that you can run on your system:
> 1. Disable compositing in xfwm4 entirely.
> 2. Open a terminal and run the following command:
> $ watch -n .1 sensors
> 3. From another terminal, Run glxgears fullscreen
> $ glxgears -fullscreen
> And see if you get any slutter with this.
> You may also test with a video playback fullscreen as well.
Ok so with that command "watch -n 1 sensors" there is never stutter (with or without compositing and with open source or proprietary driver).
I confirm that with compositing and xfce4-sensors-plugin there is stutter almost everytime there is a read from a sensor with proprietary driver with MPV. Still with MPV there is a little less stutter with open source driver. With glxgears it seems that there is stutter only with proprietary driver.
I confirm that without compositing there is not stutterwith open source driver or proprietary driver. I didn't test again the other sensor plugins but it should be the same as with xfce4-sensors-plugin.
Can you take a look please Olivier ?
(In reply to jeremy9856 from comment #28)
> Can you take a look please Olivier ?
I reckon it's the sensor reading triggering a interrupt or something along these lines, nothing we can help with from the upper layer such as the window manager really.
Thank you for your answer !
You are 100% sure that there is nothing to do on the compositor side ? Because it's not happening without compositing and I never see that problem on other DE.
If that is the case what can we do to avoid that (like opening a bug report on the faulty softs) ?
(In reply to jeremy9856 from comment #30)
> You are 100% sure that there is nothing to do on the compositor side ?
> Because it's not happening without compositing and I never see that problem
> on other DE.
Do you use xfce4-sensors-plugin in other DE?
I tried on KDE with xfce4-panel, xfce4-sensors-plugin, Nouveau and I had some stutter in MPV too with Kwin compositing !
So it seems that you are right and it's a problem with the xfce plugins ?
(In reply to jeremy9856 from comment #32)
> I tried on KDE with xfce4-panel, xfce4-sensors-plugin, Nouveau and I had
> some stutter in MPV too with Kwin compositing !
> So it seems that you are right and it's a problem with the xfce plugins ?
No, the plugin is just merely the trigger, I think the problem is either with your hardware or kernel.
It's possible but very unlikely that it's my hardware the problem. I have a fairly common Intel Core i3 2100 with a Nvidia GT430.
It happened with multiple Kernel too.
(In reply to jeremy9856 from comment #34)
> It's possible but very unlikely that it's my hardware the problem. I have a
> fairly common Intel Core i3 2100 with a Nvidia GT430.
> It happened with multiple Kernel too.
Do you monitor the GPU temperature? Might be related (but honestly, this goes way off topic imho).
It's probably off topic since it don't seem to be a Xfwm4 problem but it will be good if we can find why this problem occur ;)
On my last test I just monitored the CPU with xfce4-sensors-plugin. But the thing is that problem is triggered by, at least, Systemload and Generic monitor too when they access to the cpu or gpu or mem load or temp.
I close it since it's not a Xfwm4 bug. I will continue to try to find the cause of this and if there is a bug somewhere I will try to make it fixed.