← Back to team overview

kernel-packages team mailing list archive

[Bug 427210] Re: CFQ may not be the right choice of i/o scheduler for the most common desktop systems

 

WOW, this fix worked for me still in Ubuntu 13.10 I have in my laptop
combined SSD, HDD, External HDD and USB Sticks (from time to time) and
copying files got my system stuck always, but after changing to deadline
it seems to be fixed

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/427210

Title:
  CFQ may not be the right choice of i/o scheduler for the most common
  desktop systems

Status in “linux” package in Ubuntu:
  Invalid

Bug description:
  Ubuntu currently uses the kernel default i/o scheduler, CFQ. I
  strongly believe that this is the wrong scheduler to use for the vast
  majority of likely Ubuntu desktop installs because it causes huge lag
  in interactive applications under the heavy kind of i/o typically
  experienced during a file copy or backup operation.

  DISCLAIMER: Of course it's always hard to justify these sorts of
  claims because desktop responsiveness is a notoriously woolly and hard
  to measure thing, but without at least suggesting some solutions I
  don't see how we can improve it, hence this bug report.

  With that said, I would politely request that the Ubuntu kernel team
  at least examine the performance, and very importantly, the general
  desktop responsiveness experienced when using a variety of different
  i/o schedulers. I also think this could go a long way to solving bug
  no. 131094 , especially since numerous users in that bug thread have
  reported significant improvements in responsiveness after changing i/o
  schedulers.

  To reproduce on a standard ubuntu desktop, open (for example) a music
  player, firefox and/or any other slightly latency sensitive ui
  applications. Now execute:

  sudo dd if=/dev/$ROOTPARTITION of=/dev/zero bs=10M

  where $ROOTPARTITION is your root partition eg sda1, hdb2 or whatever.
  This should simulate the heavy i/o likely to be experienced whilst
  doing a large file copy/backup or similar. Now go back to normal web
  browsing/email writing/whatever and observe some truly horrible ui lag
  and general unresponsiveness.

  The current i/o scheduler for a particular partition can be changed on
  the fly by editing /sys/block/$PARTITION/queue/scheduler. "cat
  /sys/block/$PARTITION/queue/scheduler" will tell you the current i/o
  scheduler in use as well as other possible other schedulers that can
  be used. To change it, you must become root with sudo -s and then
  "echo $SCHEDULER > /sys/block/$PARTITION/queue/scheduler". The i/o
  scheduler can be set to a different default globally by appending the
  elevator=$SCHEDULER option to the grub kernel boot stanza.

  Try changing the i/o scheduler for your root  partition to "deadline"
  for example and repeat the test. I observed MASSIVELY improved ui
  responsiveness during the heavy i/o test on my desktop, and several
  others who I have discussed this with have seen similar improvements.
  Now I'm certainly NOT saying "switch to the deadline i/o scheduler",
  but I do think the ubuntu kernel devs should experiment a bit and see
  if perhaps the current i/o scheduler is not the best option for
  desktop responsiveness. After all, a scheduler that copes well with
  the typical tasks a server has to deal with may not also cope as well
  with the tasks a desktop has to deal with and vice versa. For Ubuntu
  Desktop, perceived desktop performance and interactivity should come
  first, so perhaps the kernel defaults here (which might possibly be
  tuned more for server-type workloads) may not be the best option.

  ProblemType: Bug
  Architecture: amd64
  DistroRelease: Ubuntu 9.04
  MachineType: System manufacturer P5QL PRO
  NonfreeKernelModules: nvidia
  Package: linux-image-2.6.28-15-generic 2.6.28-15.49
  ProcCmdLine: root=UUID=f9c198f6-df39-49bf-9444-a1ad71d16bf6 ro elevator=deadline quiet splash
  ProcEnviron:
   LANG=en_GB.UTF-8
   SHELL=/bin/bash
  ProcVersionSignature: Ubuntu 2.6.28-15.49-generic
  SourcePackage: linux

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/427210/+subscriptions