I/O Scheduling results in poor responsiveness

Nathan Grennan fedora-list at cygnusx-1.org
Fri Mar 7 11:42:29 UTC 2008


Chris Snook wrote:
> At the grub screen, hit 'a' to append kernel arguments, and add 
> elevator=deadline to the list of parameters.  If you like the results, 
> you can add it permanently by editing /boot/grub/grub.conf.
>
> It's also possible that your sluggish rawhide performance is due to 
> all the extra debug options that are turned on in the rawhide kernel.  
> I've seen overhead as high as 30% on some workloads.  There's been 
> some discussion of adding a 'nodebug' kernel variant to rawhide that's 
> compiled with roughly the same options as the stable Fedora kernel, 
> but I don't know when or if that's going to happen.
>
  I figured it all out. The main issue was my use of a Firefox 3.0 
nightly. From Firefox 3.0b3 on Firefox is very fsync happy. As in ever 
time you load a page it fsync about eight times. Do things in the middle 
of a big write and performance goes all to hell. I have filed a bug 
upstream, https://bugzilla.mozilla.org/show_bug.cgi?id=421482 .

  I ran across this idea by reading, http://kerneltrap.org/node/14148 . 
The first e-mail from Ingo as a reply to another one of his earlier 
e-mails mentions a case a lot like mine. Quad-Core, 4gb ram, and 30 
second pauses in vim. He mentions vim uses fsync. He mentions an option, 
but it isn't good enough. You have to also change set swapsync, like below.

 I then straced vim and found any hiccups in the output were directly 
related to when vim ran fsync. I set the options, and the problem seemed 
to go away.

 Finally I turned to Firefox 3.0 nightly, and straced it. I found the 
problem. I then went back to Firefox 2.0.0.12, and straced it. I found 
it didn't have the same problem. So as nice as Firefox 3.0b3 or later 
is, it is a recipe for unhappiness.

set swapsync=sync
set nofsync

  But this is just a symptom of a bigger problem. As the Kernel Trap url 
above mentions, ext3 + fsync = crappiness. So my next step will be to 
talk to the right developers, learn as much as possible, and see if a 
solution can be found. Otherwise I may completely give up on ext3 and 
move to another filesystem.




More information about the fedora-list mailing list