Announcement

Collapse
No announcement yet.

Linux I/O Scheduler Comparison On The Linux 3.4 Desktop

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Linux I/O Scheduler Comparison On The Linux 3.4 Desktop

    Phoronix: Linux I/O Scheduler Comparison On The Linux 3.4 Desktop

    At the request of Phoronix readers, and that the default I/O scheduler may change, here's a comparison of the CFQ, Deadline, and Noop schedulers on three systems and covering both rotating media (HDD) and solid-state storage (SSDs).

    http://www.phoronix.com/vr.php?view=17334

  • #2
    What about BFQ? zen-stable maintains a branch that's just BFQ on top of mainline, in case you want to try that: http://git.zen-kernel.org/zen-stable/log/?h=3.3/bfq

    Comment


    • #3
      Been using Deadline with my 60MB SSD with Arch. I may switch back to CFQ based upon this article. Thanks Michael, for yet another informative article.

      Comment


      • #4
        Nice !
        What about BFQ ?

        Comment


        • #5
          Can you say anything about the responsiveness during the benchmarks? I do not care, if my SSD needs 1 or 2 seconds to save/read something but it bothers me if other devices, especially input, suffer through the process...

          Comment


          • #6
            What about responsiveness?

            For years I've had problems using the desktop while a intensive IO operation is running. Even when simply transferring file to pendrive.

            https://bugzilla.kernel.org/show_bug.cgi?id=12309

            Comment


            • #7
              Hard to benchmark well

              This is the kind of thing where looking at throughput numbers can easily deceive someone. If you're running a multimedia system (e.g. mythtv) then throughput it the least of your concerns, and the stuff you actually care about, isn't on these graphs at all. Not saying Michael has done badly here (what else could he have done?) but it might have been a waste of time.

              Comment


              • #8
                Last page makes me really want to get an SSD.

                Comment


                • #9
                  Originally posted by FourDMusic View Post
                  Last page makes me really want to get an SSD.
                  I have one in my Laptop and if I copy a ~20GB file, I cannot watch a video next to it. It will hang for 3-4 seconds. (Fedora 17)

                  Comment


                  • #10
                    NOOP or Deadline for SSD

                    I'm using elevator=deadline (previously noop) because they have less writing side effects onto the SSD

                    I wrote some SSD tweaks in my blog

                    Comment


                    • #11
                      Originally posted by cyring View Post
                      I'm using elevator=deadline (previously noop) because they have less writing side effects onto the SSD
                      I've never heard this before, any links or references?

                      Comment


                      • #12
                        What I'm curious about is some watt/power use comparison benchmarks.

                        I've been using deadline on my laptop for a while, as I've noticed less power use. TBH, I don't know if it actually gives me better battery life or it's just me thinking it does.

                        Comment


                        • #13
                          Originally posted by Sadako View Post
                          I've never heard this before, any links or references?
                          Bellow, some of my readings

                          http://en.wikipedia.org/wiki/Noop_scheduler

                          http://grzen.blogspot.fr/2009/05/ssd...-linux_18.html

                          http://ubuntuforums.org/showthread.php?t=1178209

                          According to Wikipedia :
                          • " NOOP scheduler is best used with solid state devices such as flash memory or in general with devices that do not depend on mechanical movement ... "
                          • Deadline: " The kernel documentation suggest this is the preferred scheduler for database systems ... "

                          In Kernel doc /usr/src/linux/Documentation/block/cfq-iosched.txt says :
                          " That means by default we idle on queues/service trees. This can be very helpful on highly seeky media like single spindle SATA/SAS disks ... "


                          I'm looking for a way to specify the kernel which respective scheduler to use with SSD & HDD, using boot command such as : elevator-DEVICE=<scheduler> rather than dealing with /sys/block/DEVICE/queue/scheduler (which happens after boot, ie. rc.local)

                          Comment


                          • #14
                            Originally posted by cyring View Post
                            Bellow, some of my readings

                            http://en.wikipedia.org/wiki/Noop_scheduler

                            http://grzen.blogspot.fr/2009/05/ssd...-linux_18.html

                            http://ubuntuforums.org/showthread.php?t=1178209

                            According to Wikipedia :
                            • " NOOP scheduler is best used with solid state devices such as flash memory or in general with devices that do not depend on mechanical movement ... "
                            • Deadline: " The kernel documentation suggest this is the preferred scheduler for database systems ... "

                            In Kernel doc /usr/src/linux/Documentation/block/cfq-iosched.txt says :
                            " That means by default we idle on queues/service trees. This can be very helpful on highly seeky media like single spindle SATA/SAS disks ... "


                            I'm looking for a way to specify the kernel which respective scheduler to use with SSD & HDD, using boot command such as : elevator-DEVICE=<scheduler> rather than dealing with /sys/block/DEVICE/queue/scheduler (which happens after boot, ie. rc.local)
                            Thank you for this one. I also would like to know how to specify the scheduler at boot time. I don't want to recompile the whole kernel just to set other scheduler as default.

                            Comment


                            • #15
                              Originally posted by Hirager View Post
                              Thank you for this one. I also would like to know how to specify the scheduler at boot time. I don't want to recompile the whole kernel just to set other scheduler as default.
                              With elevator=scheduler where scheduler is noop Or deadline Or cfq

                              In my Wiki, I post my Syslinux boot config file, check line #47

                              If you are using Grub, it looks like this in the /boot/grub/menu.lst file

                              Code:
                              title  Arch Linux
                              kernel /boot/vmlinuz-linux root=/dev/sdb2 ro vga=0xf01 rootdelay=0 quiet nomodeset elevator=deadline nmi_watchdog=0
                              initrd /boot/initramfs-linux.img

                              Comment

                              Working...
                              X