A small breakthrough today: I discovered the issue is not compiz, it's just the unity plugin. The tearing stops when you disable the unity plugin. The same is true for performance bug 861061.
Both issues seem to be caused by an unreasonable amount of overhead that the unity plugin introduces into compiz. And both issues are new in Ubuntu 11.10, so it's a regression. ** Description changed: You might expect that with "Sync To VBlank" enabled in compiz that video tearing doesn't happen. But it does, just less often. - This is normal, expected behaviour. The cause is that compiz (up to - 0.9.6 at least) uses GLX_SGI_video_sync, which provides a rough way of - synchronizing with the video frame rate of the monitor. But it's not - reliable in most cases because if you take a little too long to render - the frame, then you can miss the frame deadline and tearing can still be - seen. + This appears to be a regression in Ubuntu 11.10, because in 11.04 "Sync + to VBlank" was working reliably and eliminated tearing. - The solution to this bug is to modify compiz to use glXSwapBuffers for - every frame. And possibly, optionally, use GLX_SGI_swap_control for - synchronization, though it might not be necessary when using pure buffer - swapping. - - Speaking with smspillaz, he says a move to 100% glXSwapBuffers is - planned for a future version of compiz, not least because it is required - in order to port compiz to OpenGLES. - - More info: http://www.opengl.org/wiki/Swap_Interval + Strangely, disabling just the Unity plugin in CCSM solves the problem + and all tearing goes away. This seems to be related to bug 861061 where + the Unity plugin also degrades application frame rates. Both issues are + instantly solved by disabling just the Unity plugin. WORKAROUND: In CCSM, Workarounds, enable "Force full screen redraw (buffer swap) on repaint". ProblemType: Bug DistroRelease: Ubuntu 11.10 Package: compiz 1:0.9.6+bzr20110929-0ubuntu5 ProcVersionSignature: Ubuntu 3.0.0-12.20-generic 3.0.4 Uname: Linux 3.0.0-12-generic x86_64 .tmp.unity.support.test.0: ApportVersion: 1.23-0ubuntu3 Architecture: amd64 CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,mousepoll,place,gnomecompat,resize,imgpng,move,wall,regex,grid,vpswitch,animation,session,resizeinfo,unitymtgrabhandles,expo,workarounds,fade,scale,ezoom,unityshell] CompositorRunning: compiz Date: Mon Oct 24 16:01:07 2011 DistUpgraded: Fresh install DistroCodename: oneiric DistroVariant: ubuntu GraphicsCard: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0102] (rev 09) (prog-if 00 [VGA controller]) Subsystem: Dell Device [1028:047e] InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release amd64 (20111012) MachineType: Dell Inc. OptiPlex 990 PackageArchitecture: all ProcEnviron: LANGUAGE=en_AU:en PATH=(custom, no user) LANG=en_AU.UTF-8 SHELL=/bin/bash ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-12-generic root=UUID=c9a0c042-2d94-4c4b-bb7f-756faf723ada ro quiet splash intel_iommu=on vt.handoff=7 SourcePackage: compiz UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 05/28/2011 dmi.bios.vendor: Dell Inc. dmi.bios.version: A05 dmi.board.name: 0D6H9T dmi.board.vendor: Dell Inc. dmi.board.version: A00 dmi.chassis.type: 15 dmi.chassis.vendor: Dell Inc. dmi.modalias: dmi:bvnDellInc.:bvrA05:bd05/28/2011:svnDellInc.:pnOptiPlex990:pvr01:rvnDellInc.:rn0D6H9T:rvrA00:cvnDellInc.:ct15:cvr: dmi.product.name: OptiPlex 990 dmi.product.version: 01 dmi.sys.vendor: Dell Inc. version.compiz: compiz 1:0.9.6+bzr20110929-0ubuntu5 version.ia32-libs: ia32-libs N/A version.libdrm2: libdrm2 2.4.26-1ubuntu1 version.libgl1-mesa-dri: libgl1-mesa-dri 7.11-0ubuntu3 version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A version.libgl1-mesa-glx: libgl1-mesa-glx 7.11-0ubuntu3 version.xserver-xorg: xserver-xorg 1:7.6+7ubuntu7 version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.6.0-1ubuntu13 version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.14.99~git20110811.g93fc084-0ubuntu1 version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.15.901-1ubuntu2 version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:0.0.16+git20110411+8378443-1 ** Package changed: compiz (Ubuntu) => unity (Ubuntu) ** Summary changed: - Video tearing still occurs in compiz (less so) when "Sync To VBlank" is enabled. + Visible tearing occurs even when "Sync To VBlank" is enabled, but only when Unity is active. ** Tags added: regression-release -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/880707 Title: Visible tearing occurs even when "Sync To VBlank" is enabled, but only when Unity is active. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/unity/+bug/880707/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs