Linux Container Development
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai-l3A5Bk7waGM@public.gmane.org>
To: Paolo Valente <paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
Cc: Jens Axboe <axboe-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>,
	containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Fabio Checconi
	<fchecconi-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Pavel Machek <pavel-+ZI9xUNit7I@public.gmane.org>,
	Arianna Avanzini
	<avanzini.arianna-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Tejun Heo <tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: BFQ speed tests [was Re: [PATCH RFC - TAKE TWO - 00/12] New version of the BFQ I/O Scheduler]
Date: Wed, 04 Jun 2014 13:59:35 +0200	[thread overview]
Message-ID: <s5hsink3mxk.wl%tiwai@suse.de> (raw)
In-Reply-To: <4888F93F-D58D-48DD-81A6-A6D61C452D92-rcYM44yAMweonA0d6jMUrA@public.gmane.org>

At Wed, 4 Jun 2014 12:24:30 +0200,
Paolo Valente wrote:
> 
> 
> Il giorno 04/giu/2014, alle ore 12:03, Pavel Machek <pavel@ucw.cz> ha scritto:
> 
> > Hi!
> > 
> >> Should this attempt be useless as well, I will, if you do not mind, try by asking you more details about your system and reproducing your configuration as much as I can.
> >> 
> > 
> > Try making BFQ the default scheduler. That seems to break it for me,
> > when selected at runtime, it looks stable.
> > 
> > Anyway, here are some speed tests. Background load:
> > 
> > root@duo:/data/tmp# echo cfq > /sys/block/sda/queue/scheduler 
> > root@duo:/data/tmp# echo 3 > /proc/sys/vm/drop_caches
> > root@duo:/data/tmp# cat /dev/zero > delme; cat /dev/zero > delme;cat
> > /dev/zero > delme;cat /dev/zero > delme;cat /dev/zero > delme;cat
> > /dev/zero > delme
> > 
> > (Machine was running out of disk space.)
> > 
> > (I alternate between cfq and bfq).
> > 
> > Benchmark. I chose git describe because it is part of kernel build
> > sometimes .. and I actually wait for that.
> > 
> > pavel@duo:/data/l/linux-good$ time git describe
> > warning: refname 'HEAD' is ambiguous.
> > v3.15-rc8-144-g405dedd
> > 
> > Unfortunately, results are not too good for BFQ. (Can you replicate
> > the results?)
> > 
> > # BFQ
> > 10.24user 1.62system 467.02 (7m47.028s) elapsed 2.54%CPU
> > # CFQ
> > 8.55user 1.26system 69.57 (1m9.577s) elapsed 14.11%CPU
> > # BFQ
> > 11.70user 3.18system 1491.59 (24m51.599s) elapsed 0.99%CPU
> > # CFQ, no background load
> > 8.51user 0.75system 30.99 (0m30.994s) elapsed 29.91%CPU
> > # CFQ
> > 8.70user 1.36system 74.72 (1m14.720s) elapsed 13.48%CPU
> > 
> 
> Definitely bad, we are about to repeat the test …

I've been using BFQ for a while and noticed also some obvious
regression in some operations, notably git, too.
For example, git grep regresses badly.

I ran "test git grep foo > /dev/null" on linux kernel repos on both
rotational disk and SSD.

Rotational disk:
  CFQ:
    2.32user 3.48system 1:46.97elapsed 5%CPU
    2.33user 3.41system 1:48.30elapsed 5%CPU
    2.30user 3.54system 1:48.01elapsed 5%CPU

  BFQ:
    2.41user 3.22system 2:51.96elapsed 3%CPU
    2.40user 3.19system 2:50.35elapsed 3%CPU
    2.43user 3.11system 2:46.49elapsed 3%CPU

SSD:
  CFQ:
    2.37user 3.18system 0:04.70elapsed 118%CPU
    2.28user 3.26system 0:04.69elapsed 118%CPU
    2.21user 3.33system 0:04.69elapsed 118%CPU

  BFQ:
    2.35user 2.82system 1:07.85elapsed 7%CPU
    2.32user 2.90system 0:57.57elapsed 9%CPU
    2.39user 2.90system 0:55.03elapsed 9%CPU

It's without background task.

BFQ seems behaving bad when reading many small files.
When I ran "git grep foo HEAD", i.e. performing to the packaged
repository, the results of both BFQ and CFQ become almost same, as
expected:

SSD:
  CFQ:
    7.25user 0.47system 0:09.79elapsed 78%CPU
    7.26user 0.43system 0:09.75elapsed 78%CPU
    7.26user 0.43system 0:09.76elapsed 78%CPU

  BFQ:
    7.24user 0.45system 0:09.93elapsed 77%CPU
    7.31user 0.42system 0:09.90elapsed 78%CPU
    7.28user 0.42system 0:09.86elapsed 78%CPU


thanks,

Takashi
_______________________________________________
Containers mailing list
Containers@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/containers

  parent reply	other threads:[~2014-06-04 11:59 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20140528221929.GG1419@htj.dyndns.org>
     [not found] ` <20140528221929.GG1419-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-05-29  9:05   ` [PATCH RFC - TAKE TWO - 00/12] New version of the BFQ I/O Scheduler Paolo Valente
     [not found]     ` <1401354343-5527-1-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 01/12] block: introduce the BFQ-v0 I/O scheduler Paolo Valente
     [not found]         ` <1401354343-5527-2-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-30 15:36           ` Tejun Heo
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 02/12] block, bfq: add full hierarchical scheduling and cgroups support Paolo Valente
     [not found]         ` <1401354343-5527-3-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-30 15:37           ` Tejun Heo
     [not found]         ` <20140530153718.GB24871@htj.dyndns.org>
     [not found]           ` <20140530153718.GB24871-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-05-30 15:39             ` Tejun Heo
2014-05-30 21:49             ` Paolo Valente
     [not found]           ` <20140530153943.GC24871@htj.dyndns.org>
     [not found]             ` <20140530153943.GC24871-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-05-30 21:49               ` Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 03/12] block, bfq: improve throughput boosting Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 04/12] block, bfq: modify the peak-rate estimator Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 05/12] block, bfq: add more fairness to boost throughput and reduce latency Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 06/12] block, bfq: improve responsiveness Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 07/12] block, bfq: reduce I/O latency for soft real-time applications Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 08/12] block, bfq: preserve a low latency also with NCQ-capable drives Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 09/12] block, bfq: reduce latency during request-pool saturation Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 10/12] block, bfq: add Early Queue Merge (EQM) Paolo Valente
     [not found]         ` <1401354343-5527-11-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-01  0:03           ` Tejun Heo
     [not found]         ` <20140601000331.GA29085@htj.dyndns.org>
     [not found]           ` <20140601000331.GA29085-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-02  9:46             ` Paolo Valente
     [not found]           ` <3B7B1A46-46EB-4C52-A52C-4F79C71D14C2@unimore.it>
     [not found]             ` <3B7B1A46-46EB-4C52-A52C-4F79C71D14C2-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-03 16:28               ` Tejun Heo
     [not found]                 ` <20140603162844.GD26210-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-04 11:47                   ` Paolo Valente
     [not found]                     ` <91383F1F-69C3-4B88-B51E-30204818F1AB-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-04 13:04                       ` Tejun Heo
     [not found]                     ` <20140604130446.GA5004@htj.dyndns.org>
     [not found]                       ` <20140604130446.GA5004-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-16 11:23                         ` Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 11/12] block, bfq: boost the throughput on NCQ-capable flash-based devices Paolo Valente
2014-05-29  9:05       ` [PATCH RFC - TAKE TWO - 12/12] block, bfq: boost the throughput with random I/O on NCQ-capable HDDs Paolo Valente
2014-05-30 16:07       ` [PATCH RFC - TAKE TWO - 00/12] New version of the BFQ I/O Scheduler Tejun Heo
     [not found]         ` <20140530160712.GG24871-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-05-30 22:23           ` Paolo Valente
     [not found]             ` <464F6CBE-A63E-46EF-A90D-BF8450430444-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-30 23:28               ` Tejun Heo
     [not found]             ` <20140530232804.GA5057@htj.dyndns.org>
     [not found]               ` <20140530232804.GA5057-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-05-30 23:54                 ` Paolo Valente
2014-06-02 11:14                 ` Pavel Machek
     [not found]               ` <20140602111432.GA3737@amd.pavel.ucw.cz>
     [not found]                 ` <20140602111432.GA3737-tWAi6jLit6GreWDznjuHag@public.gmane.org>
2014-06-02 13:02                   ` Pavel Machek
     [not found]                     ` <20140602130226.GA14654-tWAi6jLit6GreWDznjuHag@public.gmane.org>
2014-06-03 16:54                       ` Paolo Valente
     [not found]                         ` <FCFE0106-A4DD-4DEF-AAAE-040F3823A447-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-03 20:40                           ` Pavel Machek
2014-06-04  8:39                           ` Pavel Machek
2014-06-04  9:08                           ` Pavel Machek
2014-06-04 10:03                           ` BFQ speed tests [was Re: [PATCH RFC - TAKE TWO - 00/12] New version of the BFQ I/O Scheduler] Pavel Machek
     [not found]                         ` <20140604100358.GA4799@amd.pavel.ucw.cz>
     [not found]                           ` <20140604100358.GA4799-tWAi6jLit6GreWDznjuHag@public.gmane.org>
2014-06-04 10:24                             ` Paolo Valente
     [not found]                               ` <4888F93F-D58D-48DD-81A6-A6D61C452D92-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-04 11:59                                 ` Takashi Iwai [this message]
     [not found]                                   ` <s5hsink3mxk.wl%tiwai-l3A5Bk7waGM@public.gmane.org>
2014-06-04 12:12                                     ` Paolo Valente
2014-06-11 20:45                                     ` Paolo Valente
     [not found]                                       ` <6A4905B2-ACAA-419D-9C83-659BE9A5B20B-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-13 16:21                                         ` Takashi Iwai
2014-06-11 20:39                             ` Paolo Valente
2014-06-02 17:33                   ` [PATCH RFC - TAKE TWO - 00/12] New version of the BFQ I/O Scheduler Tejun Heo
     [not found]                     ` <20140602173332.GB8912-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-03  4:12                       ` Mike Galbraith
2014-06-04 22:31                       ` Pavel Machek
     [not found]                         ` <20140604223152.GA7881-tWAi6jLit6GreWDznjuHag@public.gmane.org>
2014-06-05  2:14                           ` Jens Axboe
2014-05-31  0:48           ` Jens Axboe
     [not found]         ` <538926F6.7080409@kernel.dk>
     [not found]           ` <538926F6.7080409-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-05-31  5:16             ` Tejun Heo
     [not found]           ` <20140531051635.GA19925@mtj.dyndns.org>
     [not found]             ` <20140531051635.GA19925-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2014-06-02 14:29               ` Jens Axboe
     [not found]                 ` <20140602172454.GA8912@htj.dyndns.org>
     [not found]                   ` <20140602172454.GA8912-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-02 17:32                     ` Jens Axboe
     [not found]                   ` <538CB515.3090700@kernel.dk>
     [not found]                     ` <538CB515.3090700-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-02 17:42                       ` Tejun Heo
     [not found]                         ` <20140602174250.GC8912-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-02 17:46                           ` Jens Axboe
     [not found]                             ` <538CB87C.7030600-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-02 18:51                               ` Tejun Heo
     [not found]                             ` <20140602185138.GD8912@htj.dyndns.org>
     [not found]                               ` <20140602185138.GD8912-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-02 20:57                                 ` Jens Axboe
     [not found]                                   ` <20140602205713.GB8357-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-04 14:31                                     ` Christoph Hellwig
     [not found]                                   ` <20140604143136.GA1920@infradead.org>
     [not found]                                     ` <20140604143136.GA1920-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2014-06-04 14:50                                       ` Tejun Heo
     [not found]                                         ` <20140604145053.GE5004-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-04 14:53                                           ` Christoph Hellwig
     [not found]                                             ` <20140604145330.GA2955-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2014-06-04 14:58                                               ` Tejun Heo
     [not found]                                                 ` <20140604145829.GF5004-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-04 17:51                                                   ` Christoph Hellwig
     [not found]                 ` <538C8A47.1050502-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-02 17:24                   ` Tejun Heo
2014-06-17 15:55                   ` Paolo Valente
     [not found]                     ` <0A5218F8-0215-4B4F-959B-EE5AAEFC164A-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-19  1:46                       ` Tejun Heo
     [not found]                     ` <20140619014600.GA20100@mtj.dyndns.org>
     [not found]                       ` <20140619014600.GA20100-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2014-06-19  1:49                         ` Tejun Heo
2014-06-19  2:29                         ` Jens Axboe
     [not found]                           ` <53A24B1C.1070004-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-23 13:53                             ` Paolo Valente
     [not found]                               ` <8F719638-0CD7-4BD2-8F4F-088913A0EE2D-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-23 19:20                                 ` Tejun Heo
     [not found]                               ` <20140623192022.GA19660@mtj.dyndns.org>
     [not found]                                 ` <20140623192022.GA19660-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2014-07-09 20:54                                   ` Paolo Valente
     [not found]     ` <1401354343-5527-7-git-send-email-paolo.valente@unimore.it>
     [not found]       ` <1401354343-5527-7-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-30 15:41         ` [PATCH RFC - TAKE TWO - 06/12] block, bfq: improve responsiveness Tejun Heo
     [not found]     ` <1401354343-5527-13-git-send-email-paolo.valente@unimore.it>
     [not found]       ` <1401354343-5527-13-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-30 15:51         ` [PATCH RFC - TAKE TWO - 12/12] block, bfq: boost the throughput with random I/O on NCQ-capable HDDs Tejun Heo
2014-05-31 13:34         ` Tejun Heo
     [not found]     ` <1401354343-5527-12-git-send-email-paolo.valente@unimore.it>
     [not found]       ` <1401354343-5527-12-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-30 15:46         ` [PATCH RFC - TAKE TWO - 11/12] block, bfq: boost the throughput on NCQ-capable flash-based devices Tejun Heo
     [not found]           ` <20140530154654.GE24871-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-05-30 22:01             ` Paolo Valente
2014-05-31 11:52         ` Tejun Heo
     [not found]           ` <20140531115216.GB5057-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-02  9:26             ` Paolo Valente
     [not found]               ` <36BFDB73-AEC2-4B87-9FD6-205E9431E722-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-03 17:11                 ` Tejun Heo
     [not found]               ` <20140603171124.GE26210@htj.dyndns.org>
     [not found]                 ` <20140603171124.GE26210-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-04  7:29                   ` Paolo Valente
     [not found]                     ` <03CDD106-DB18-4E8F-B3D6-2AAD45782A06-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-04 13:56                       ` Tejun Heo
     [not found]                     ` <20140604135627.GB5004@htj.dyndns.org>
     [not found]                       ` <20140604135627.GB5004-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2014-06-16 10:46                         ` Paolo Valente
     [not found]                           ` <D163E069-ED77-4BF5-A488-9A90C41C60C1-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-06-19  1:14                             ` Tejun Heo
     [not found]     ` <1401354343-5527-9-git-send-email-paolo.valente@unimore.it>
     [not found]       ` <1401354343-5527-9-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-31 13:48         ` [PATCH RFC - TAKE TWO - 08/12] block, bfq: preserve a low latency also with NCQ-capable drives Tejun Heo
     [not found]           ` <20140531134823.GB24557-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2014-06-02  9:58             ` Paolo Valente
     [not found]     ` <1401354343-5527-10-git-send-email-paolo.valente@unimore.it>
     [not found]       ` <1401354343-5527-10-git-send-email-paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org>
2014-05-31 13:54         ` [PATCH RFC - TAKE TWO - 09/12] block, bfq: reduce latency during request-pool saturation Tejun Heo
     [not found]           ` <20140531135402.GC24557-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2014-06-02  9:54             ` Paolo Valente

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5hsink3mxk.wl%tiwai@suse.de \
    --to=tiwai-l3a5bk7wagm@public.gmane.org \
    --cc=avanzini.arianna-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=axboe-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org \
    --cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=fchecconi-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=paolo.valente-rcYM44yAMweonA0d6jMUrA@public.gmane.org \
    --cc=pavel-+ZI9xUNit7I@public.gmane.org \
    --cc=tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox