Video playback performance drops substantially after suspend/wake cycle (Lenovo X201 i5 w/ Intel GMA HD)

Bug #676413 reported by Grant Heaslip
94
This bug affects 16 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Incomplete
Undecided
Unassigned

Bug Description

Binary package hint: xserver-xorg-video-intel

Note: I'm not 100% sure that this issue is with the driver, but it's my best guess and I figured it would include the most relevant diagnostic info.

I'm using Ubuntu 10.10 32-bit on a Lenovo X201 (i5, Intel GMA HD graphics). When I first boot, video playback for Flash and HTML5 videos in Chrome and Firefox is smooth. But if I suspend then wake up, it drops noticeably. A few examples:

- HTML5 videos play smoothly after a reboot. Once I suspend/wake, they're choppy at best. Regular-sized videos seem to play fine regardless of size.
- Flash videos play smoothly (albeit with the usual Flash bugginess) after a reboot. Once I suspend/wake, they're *really* choppy on Chrome, and bring Firefox to its knees (it freezes for seconds at a time).

Playing videos in Movie Player doesn't seem to be affected by this, but I'm not sure if this is just a result of it being so much more efficient than the browsers that the performance drop isn't visible. Likewise, I'm not sure if there's a qualitative difference between the full-screen and regular-sized videos in Chrome and Firefox, or if the added load of scaling the videos is making the performance hit noticeable.

I've tried both 64-bit and 32-bit 10.10, and both seem to suffer from exactly the same problem. I don't recall this being an issue in 10.04--I only used it for a month or so before 10.10 was released, but I think I would have noticed this regardless.

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: xserver-xorg-video-intel 2:2.12.0-1ubuntu5.1
ProcVersionSignature: Ubuntu 2.6.35-22.35-generic-pae 2.6.35.4
Uname: Linux 2.6.35-22-generic-pae i686
Architecture: i386
DRM.card0.DisplayPort.1:
 status: disconnected
 enabled: disabled
 dpms: On
 modes:
 edid-base64:
DRM.card0.HDMI_Type_A.1:
 status: disconnected
 enabled: disabled
 dpms: On
 modes:
 edid-base64:
DRM.card0.LVDS.1:
 status: connected
 enabled: enabled
 dpms: On
 modes: 1280x800
 edid-base64: AP///////wAwrhFAAAAAAAATAQOAGhB46rqVl1lVjCchUFQAAAABAQEBAQEBAQEBAQEBAQEBEhsAgFAgFDAYIEQABaMQAAAfkxYAgFAgFDAYIEQABaMQAAAfAAAADwCBCjyBCjIWCQAw5PABAAAA/gBMUDEyMVdYMy1UTEMxAKw=
DRM.card0.VGA.1:
 status: disconnected
 enabled: disabled
 dpms: On
 modes:
 edid-base64:
Date: Wed Nov 17 03:47:43 2010
EcryptfsInUse: Yes
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release i386 (20101007)
Lsusb:
 Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
 Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 001 Device 003: ID 0a5c:217f Broadcom Corp. Bluetooth Controller
 Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
MachineType: LENOVO 3249CTO
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.35-22-generic-pae root=UUID=d1e1daef-8955-48b0-8e74-bc336d224684 ro quiet splash
ProcEnviron:
 LANG=en_CA.utf8
 SHELL=/bin/bash
SourcePackage: xserver-xorg-video-intel
dmi.bios.date: 06/07/2010
dmi.bios.vendor: LENOVO
dmi.bios.version: 6QET46WW (1.16 )
dmi.board.name: 3249CTO
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr6QET46WW(1.16):bd06/07/2010:svnLENOVO:pn3249CTO:pvrThinkPadX201:rvnLENOVO:rn3249CTO:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 3249CTO
dmi.product.version: ThinkPad X201
dmi.sys.vendor: LENOVO
glxinfo: Error: [Errno 2] No such file or directory
system:
 distro: Ubuntu
 codename: maverick
 architecture: i686
 kernel: 2.6.35-22-generic-pae

Revision history for this message
Grant Heaslip (grantheaslip-deactivatedaccount) wrote :
Revision history for this message
zkam83 (zkam83) wrote :

I get a similar problem. Scrolling in Google Chrome becomes very sluggish after resuming from suspend. I have GeForce 230m with binary drivers from nvidia.com.

Revision history for this message
Grant Heaslip (grantheaslip-deactivatedaccount) wrote :

Actually, after playing around with scrolling, it looks like it does degrade pretty noticeably after a sleep/wake cycle. It's a lot worse on sites that have more images on them. I've got an SSD, so it's not a huge deal for me to shut down rather than suspend, but this is a pretty serious issue.

bugbot (bugbot)
tags: added: performance
tags: added: resume
Revision history for this message
Erik Wahlstrom (edub) wrote :

I am experiencing the same problems on a Lenovo Thinkpad T510 (i7) w/ NVIDIA NVS 3100M using the proprietary Nvidia driver. I observe it with both the 32 and 64 bit 10.10 fresh installs.

Very choppy flash video playback at normal sizes - unwatchable choppiness at full screen.
Very choppy scrolling in Chrome.

Running top and scrolling in Chrome spikes CPU usage in the Xorg process.

Revision history for this message
dg (dan-g) wrote :

By now it is obvious that this bug has nothing to do with the Intel driver - as I and others are using Nvidia (with the proprietary driver) and we have the same problem.

My problem in particular is the choppy full-screen flash playback after resume - scrolling in Chrome seems fine though.

Maybe we should reassign this bug? It's not correct, being pinned to xserver-xorg-video-intel ....

(see discussion at http://ubuntuforums.org/showthread.php?p=10210377)

Revision history for this message
Chun-Yu (cshei) wrote :

This is a xorg-video-intel specific issue — the problem others are seeing with NVIDIA drivers may be similar, but they are probably not the same. The Intel driver guys know about this problem (see http://<email address hidden>/msg01932.html ), although I haven't heard anything about a fix yet. I have the same problem on my ThinkPad X201 (i5) in both Ubuntu 10.10 and Gentoo. Perhaps we should file a bug at http://intellinuxgraphics.org/feedback.html to track the issue upstream?

Revision history for this message
Brian Rutland (jbrutland) wrote :

Anybody know of a workaround for this?

boomtopper (boomtopper)
Changed in xserver-xorg-video-intel (Ubuntu):
status: New → Confirmed
status: Confirmed → New
Revision history for this message
bugbot (bugbot) wrote :

Kernel bug perhaps. Do you still see this problem in natty? If so,
please run apport-collect <bug-number> to update with natty log files.

affects: xserver-xorg-video-intel (Ubuntu) → linux (Ubuntu)
Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Sauthess (sauthess) wrote :

Hi,

For a workaround, take a look at : http://ubuntuforums.org/archive/index.php/t-1632254.html (disabling hyper threading before suspend and reactivate it after...)

It solve the problem for me too (on debian stable too for information).

Hope this help.

Revision history for this message
Patrick (94bc1052) wrote :

I can confirm this bug. Only happens after resuming from suspend. Restarting Chrome doesn't help. Disabling hyperthreading doesn't work as well. I even tried disabling it altogether in BIOS, didn't help either.

Chrome 11.0.696.68, Xorg 1:7.5+5ubuntu1, nVidia 270.41.06, Ubuntu 10.04 LTS (2.6.32-31-generic)

There is also a Chrome bug filed for this: http://code.google.com/p/chromium/issues/detail?id=71276

Revision history for this message
Rakosi Alpar (ralpyka) wrote :

Same bug here with natty 64bit and ati(HD5145) proprietary driver

Revision history for this message
Martin Karpinski (mkarpinski) wrote :

This bug also appears in Lucid.

To all of those that are having this problem, does Flash video performance still stutter in fullscreen if you disable Compiz? If it plays smoothly, then that's both a workaround and a clue. This bug has nothing to do with intel video drivers, or nvidia. From this layman's perspective, it looks like it's either a kernel bug, a compiz bug, or a flash bug.

For me (and likely for others for whom my workaround works), this bug is reproducible 100% of the time after suspending TWICE. Suspending only once from a fresh reboot does not reproduce the bug for me. Hibernate doesn't impact flash performance at all. I have no idea when this bug first appeared, since I always used to shut down the machine completely at the end of the day.

I'd really like to get this bug fixed. Should I file a new bug report, or can we proceed from here? Also, should I try the debugging method mentioned in https://wiki.ubuntu.com/DebuggingKernelSuspendHibernateResume ??

Kernel 2.6.32-31-generic
nvidia 195.36.24-0ubuntu1
Xorg 1:7.5+5ubuntu1
Ubuntu 10.04 LTS

Revision history for this message
Rakosi Alpar (ralpyka) wrote :

There is a similar bug report https://bugs.launchpad.net/ubuntu/+source/flashplugin-nonfree/+bug/346289 (I added "OverrideGPUValidation=true" to my /etc/adobe/mms.cfg file, and fixed my problem).
I don't know, that this bug is the same as the other, because in this bug report HTML5 videos were choppy too after suspend/wake.

Revision history for this message
Patrick (94bc1052) wrote :

In response to Martin Karpinski:

I don't use compiz at all (fluxbox), and I am affected by this issue, so I think it isn't compiz' fault. I believe either the X server, the nVidia driver or the kernel are at fault, not flash itself, since WebM videos and general scrolling performance (especially in chrome) are affected as well.

Revision history for this message
Omer P. (omerp) wrote :

Patrick (#14) -- how can it be the nVidia driver if the original reporter of the bug, as well as many other people (incl. me) are experiencing this bug with Intel graphics chips??

Revision history for this message
Patrick (94bc1052) wrote :

Omer: That leaves the X server and the kernel.

Revision history for this message
neelance (neelance) wrote :

I have got the same problem and found out the reason after some intensive search: Something goes wrong with the process scheduling after suspend/wake, so the X server is not getting enough CPU cycles.

Running
sudo chrt -r -p 20 [pid of X]
solves the problem for me, while resetting with
sudo chrt -o -p 0 [pid of X]
restores the performance issues.

BTW: I am having an ATI graphics card, so this seems to be completely independent from the model.

Revision history for this message
neelance (neelance) wrote :

Strange. I tried my workaround again today and it did not work as expected. No performance change after changing the scheduling policy of X. Then I tried to also set it for compiz, and suddenly everything was smooth again. But then I changed it back for compiz, still everything fine. And now the changing back and forth for X had again the effect described in my previous post.

So for me it seems as if something with the scheduling gets completely messed up...

Revision history for this message
neelance (neelance) wrote :

Some more observations:
The performance problem reappears after some time. Changing the scheduling back and forth can make everything fluid again for some seconds.

Revision history for this message
Ryan Fugger (rfugger) wrote :

I can reliably reproduce this problem by suspending once after a clean boot (HP DM4 laptop, Intel i915 video). Neelance's chrt workaround appears to fix the problem for me, but I did not wait to see if the problem reappeared. This solution from the forums (taking all but CPU0 offline before suspending, and bringing them back on resume) seems to work fine as well:

http://ubuntuforums.org/showpost.php?p=10639921&postcount=10

Revision history for this message
Ryan Fugger (rfugger) wrote :

Actually, I spoke too soon -- the forums workaround (taking CPUs offline) DOES NOT fix the problem for me...

Revision history for this message
neelance (neelance) wrote :

Interesting: I haven't got hyperthreading, only a normal dual-core. But I though I should try the workaround from the forum nevertheless. And see, it works!

Running
echo 0 > /sys/devices/system/cpu/cpu1/online
echo 1 > /sys/devices/system/cpu/cpu1/online
seems to solve the problem permanently after each suspend/resume.

Revision history for this message
Ryan Fugger (rfugger) wrote :

I also got the offline-cpu workaround to work for me finally. (I had screwed up the file naming in /etc/pm/sleep.d/.)

Revision history for this message
garuhhh (garuhhh) wrote :

I'm using Ubuntu 12.04 64 bit on an Acer Aspire 4520 G, and I'm still affected by this bug.

I just started to realize about it just recently. After a couple of suspend/wake cycles, i face serious performance issues playing videos in browser. I restarted just now, then tried making suspend/wake cycles, but could not replicate the issue. Maybe it requires the PC to be suspended for a couple of hours?

I will be trying out some of the suggested workarounds here as soon as I have again the signs of the bug.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.