Compiz is absurdly heavy on CPU
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
compiz (Ubuntu) |
Expired
|
Undecided
|
Unassigned |
Bug Description
Since upgrading from 11.04 to 11.10, I've noticed incredibly poor performance with Compiz and progress bars. For example, I just attempted a network copy of a directory of files (10's of them). My computer ground to a halt while the copy went, but as soon as I minimized the progress bar things improved dramatically.
Curious, I peeked at `strace` and noticed it is spinning on reading from a UNIX socket, receiving several EAGAIN's for each successful read. If I maximize the progress bar, there are additional reads (some successful, some EAGAIN) as well as poll() and sched_yield() calls. This behavior is consistently reproducible and results in a 10% increase in CPU load by compiz when the progress bar is maximized.
I will attach the two straces as well as a lsof. Opening them side-by-side with a difftool such as meld clearly shows the additional system calls being made when the window is maximized (which is when my system effectively became uselessly slow).
ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: unity 4.24.0-0ubuntu2b1
ProcVersionSign
Uname: Linux 3.0.0-12-generic x86_64
NonfreeKernelMo
.proc.driver.
.proc.driver.
.proc.driver.
NVRM version: NVIDIA UNIX x86_64 Kernel Module 280.13 Wed Jul 27 16:53:56 PDT 2011
GCC version: gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3)
.tmp.unity.
ApportVersion: 1.23-0ubuntu3
Architecture: amd64
CompizPlugins: [core,bailer,
CompositorRunning: compiz
CurrentDmesg:
[ 26.978072] ADDRCONF(
[ 27.754662] EXT4-fs (sdc1): re-mounted. Opts: errors=
[ 28.235217] init: plymouth-stop pre-start process (1330) terminated with status 1
[ 33.734637] EXT4-fs (sdc1): re-mounted. Opts: errors=
[ 37.144030] eth0: no IPv6 routers present
Date: Mon Oct 31 21:24:39 2011
DistUpgraded: Log time: 2011-10-13 21:06:09.956598
DistroCodename: oneiric
DistroVariant: ubuntu
DkmsStatus:
nvidia-173, 173.14.30, 2.6.38-11-generic, x86_64: installed
nvidia-173, 173.14.30, 3.0.0-12-generic, x86_64: installed
nvidia-current, 280.13, 2.6.38-11-generic, x86_64: installed
nvidia-current, 280.13, 3.0.0-12-generic, x86_64: installed
ExecutablePath: /usr/bin/compiz
GraphicsCard:
nVidia Corporation G80 [GeForce 8800 GTX] [10de:0191] (rev a2) (prog-if 00 [VGA controller])
Subsystem: Giga-byte Technology Device [1458:3439]
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release amd64 (20110427.1)
MachineType: Gigabyte Technology Co., Ltd. EP45-DQ6
ProcEnviron:
LANGUAGE=en_ZA:en
PATH=(custom, no user)
LANG=en_ZA.UTF-8
SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=
SourcePackage: unity
UpgradeStatus: Upgraded to oneiric on 2011-10-14 (17 days ago)
dmi.bios.date: 09/30/2008
dmi.bios.vendor: Award Software International, Inc.
dmi.bios.version: F12
dmi.board.name: EP45-DQ6
dmi.board.vendor: Gigabyte Technology Co., Ltd.
dmi.board.version: x.x
dmi.chassis.type: 3
dmi.chassis.vendor: Gigabyte Technology Co., Ltd.
dmi.modalias: dmi:bvnAwardSof
dmi.product.name: EP45-DQ6
dmi.sys.vendor: Gigabyte Technology Co., Ltd.
version.compiz: compiz 1:0.9.6+
version.ia32-libs: ia32-libs 20090808ubuntu26
version.libdrm2: libdrm2 2.4.26-1ubuntu1
version.
version.
version.
version.
version.
version.
version.
version.
version.
Here is the strace of compiz when the copy-progress-bar is minimized.