[PATCH V4 03/16] block, bfq: improve throughput boosting

2017-04-12 Thread Paolo Valente
unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- bl

[PATCH V4 03/16] block, bfq: improve throughput boosting

2017-04-12 Thread Paolo Valente
unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 87 + 1 file changed, 41 insertions(+), 46

[PATCH V4 00/16] Introduce the BFQ I/O scheduler

2017-04-12 Thread Paolo Valente
and cgroups support block, bfq: add Early Queue Merge (EQM) block, bfq: reduce idling only in symmetric scenarios block, bfq: handle bursts of queue activations Paolo Valente (12): block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler block, bfq: improve throughput boosting block

[PATCH V4 00/16] Introduce the BFQ I/O scheduler

2017-04-12 Thread Paolo Valente
and cgroups support block, bfq: add Early Queue Merge (EQM) block, bfq: reduce idling only in symmetric scenarios block, bfq: handle bursts of queue activations Paolo Valente (12): block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler block, bfq: improve throughput boosting block

Re: [PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-12 Thread Paolo Valente
> Il giorno 12 apr 2017, alle ore 17:30, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Wed, 2017-04-12 at 08:01 +0200, Paolo Valente wrote: >> Where is my mistake? > > I think in the Makefile. How about the patch below? Please note that I'm no

Re: [PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-12 Thread Paolo Valente
> Il giorno 12 apr 2017, alle ore 17:30, Bart Van Assche > ha scritto: > > On Wed, 2017-04-12 at 08:01 +0200, Paolo Valente wrote: >> Where is my mistake? > > I think in the Makefile. How about the patch below? Please note that I'm no > Kbuild expert. > T

Re: [kbuild-all] [PATCH V2 16/16] block, bfq: split bfq-iosched.c into multiple source files

2017-04-12 Thread Paolo Valente
> Il giorno 12 apr 2017, alle ore 11:24, Paolo Valente > <paolo.vale...@linaro.org> ha scritto: > >> >> Il giorno 12 apr 2017, alle ore 10:39, Ye Xiaolong <xiaolong...@intel.com> >> ha scritto: >> >> On 04/11, Paolo Valente wrote: >>&

Re: [kbuild-all] [PATCH V2 16/16] block, bfq: split bfq-iosched.c into multiple source files

2017-04-12 Thread Paolo Valente
> Il giorno 12 apr 2017, alle ore 11:24, Paolo Valente > ha scritto: > >> >> Il giorno 12 apr 2017, alle ore 10:39, Ye Xiaolong >> ha scritto: >> >> On 04/11, Paolo Valente wrote: >>> >>>> Il giorno 02 apr 2017, alle ore 12:

Re: [kbuild-all] [PATCH V2 16/16] block, bfq: split bfq-iosched.c into multiple source files

2017-04-12 Thread Paolo Valente
> Il giorno 12 apr 2017, alle ore 10:39, Ye Xiaolong <xiaolong...@intel.com> ha > scritto: > > On 04/11, Paolo Valente wrote: >> >>> Il giorno 02 apr 2017, alle ore 12:02, kbuild test robot <l...@intel.com> >>> ha scritto: >>> >&g

Re: [kbuild-all] [PATCH V2 16/16] block, bfq: split bfq-iosched.c into multiple source files

2017-04-12 Thread Paolo Valente
> Il giorno 12 apr 2017, alle ore 10:39, Ye Xiaolong ha > scritto: > > On 04/11, Paolo Valente wrote: >> >>> Il giorno 02 apr 2017, alle ore 12:02, kbuild test robot >>> ha scritto: >>> >>> Hi Paolo, >>> >>> [auto bui

Re: [PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-12 Thread Paolo Valente
> Il giorno 11 apr 2017, alle ore 20:31, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Tue, 2017-04-11 at 19:37 +0200, Paolo Valente wrote: >> Just pushed: >> https://github.com/Algodev-github/bfq-mq/tree/add-bfq-mq-logical > > Thanks!

Re: [PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-12 Thread Paolo Valente
> Il giorno 11 apr 2017, alle ore 20:31, Bart Van Assche > ha scritto: > > On Tue, 2017-04-11 at 19:37 +0200, Paolo Valente wrote: >> Just pushed: >> https://github.com/Algodev-github/bfq-mq/tree/add-bfq-mq-logical > > Thanks! > > But are you aware that t

Re: [PATCH V3 02/16] block, bfq: add full hierarchical scheduling and cgroups support

2017-04-11 Thread Paolo Valente
> Il giorno 11 apr 2017, alle ore 23:47, Tejun Heo <t...@kernel.org> ha scritto: > > Hello, > > On Tue, Apr 11, 2017 at 03:43:01PM +0200, Paolo Valente wrote: >> From: Arianna Avanzini <avanzini.aria...@gmail.com> >> >> Add complete support for

Re: [PATCH V3 02/16] block, bfq: add full hierarchical scheduling and cgroups support

2017-04-11 Thread Paolo Valente
> Il giorno 11 apr 2017, alle ore 23:47, Tejun Heo ha scritto: > > Hello, > > On Tue, Apr 11, 2017 at 03:43:01PM +0200, Paolo Valente wrote: >> From: Arianna Avanzini >> >> Add complete support for full hierarchical scheduling, with a cgroups >>

Re: [PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-11 Thread Paolo Valente
> Il giorno 11 apr 2017, alle ore 16:37, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Tue, 2017-04-11 at 15:42 +0200, Paolo Valente wrote: >> new patch series, addressing (both) issues raised by Bart [1]. > > Hello Paolo, > > Is

Re: [PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-11 Thread Paolo Valente
> Il giorno 11 apr 2017, alle ore 16:37, Bart Van Assche > ha scritto: > > On Tue, 2017-04-11 at 15:42 +0200, Paolo Valente wrote: >> new patch series, addressing (both) issues raised by Bart [1]. > > Hello Paolo, > > Is there a git tree available somewhere

[PATCH V3 04/16] block, bfq: modify the peak-rate estimator

2017-04-11 Thread Paolo Valente
no request is silently dropped), the following obvious convergence property holds: the number of requests dispatched MUST become closer and closer to the number of requests completed as the observation interval grows. This is the key property used in this new version of the peak-rate estimator. Signed-off

[PATCH V3 04/16] block, bfq: modify the peak-rate estimator

2017-04-11 Thread Paolo Valente
no request is silently dropped), the following obvious convergence property holds: the number of requests dispatched MUST become closer and closer to the number of requests completed as the observation interval grows. This is the key property used in this new version of the peak-rate estimator. Signed-off

[PATCH V3 05/16] block, bfq: add more fairness with writes and slow processes

2017-04-11 Thread Paolo Valente
Annual International Systems and Storage Conference (SYSTOR '12), June 2012. Slightly extended version: http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...

[PATCH V3 05/16] block, bfq: add more fairness with writes and slow processes

2017-04-11 Thread Paolo Valente
Annual International Systems and Storage Conference (SYSTOR '12), June 2012. Slightly extended version: http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-

[PATCH V3 09/16] block, bfq: reduce latency during request-pool saturation

2017-04-11 Thread Paolo Valente
one. Along the same line, if there are weight-raised queues, then this patch halves the service rate of async (write) requests for non-weight-raised queues. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- block/b

[PATCH V3 09/16] block, bfq: reduce latency during request-pool saturation

2017-04-11 Thread Paolo Valente
one. Along the same line, if there are weight-raised queues, then this patch halves the service rate of async (write) requests for non-weight-raised queues. Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 66

[PATCH V3 06/16] block, bfq: improve responsiveness

2017-04-11 Thread Paolo Valente
. http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- Documentation/block/bfq-iosched.txt | 9 + block/bfq-iosched.c | 740 +++

[PATCH V3 06/16] block, bfq: improve responsiveness

2017-04-11 Thread Paolo Valente
. http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- Documentation/block/bfq-iosched.txt | 9 + block/bfq-iosched.c | 740 2 files changed, 675 insertions(+), 74 deletions(-)

[PATCH V3 08/16] block, bfq: preserve a low latency also with NCQ-capable drives

2017-04-11 Thread Paolo Valente
hed/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- block/bfq-iosched.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)

[PATCH V3 08/16] block, bfq: preserve a low latency also with NCQ-capable drives

2017-04-11 Thread Paolo Valente
hed/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index 7f94ad

[PATCH V3 10/16] block, bfq: add Early Queue Merge (EQM)

2017-04-11 Thread Paolo Valente
anzini <avanzini.aria...@gmail.com> Signed-off-by: Mauro Andreolini <mauro.andreol...@unimore.it> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c | 881 +--- 1 file changed, 840 insertions(+), 41

[PATCH V3 10/16] block, bfq: add Early Queue Merge (EQM)

2017-04-11 Thread Paolo Valente
Andreolini Signed-off-by: Paolo Valente --- block/bfq-iosched.c | 881 +--- 1 file changed, 840 insertions(+), 41 deletions(-) diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index deb1f21c..6e7388a 100644 --- a/block/bfq-iosched.c +++ b/block

[PATCH V3 11/16] block, bfq: reduce idling only in symmetric scenarios

2017-04-11 Thread Paolo Valente
...@gmail.com> Signed-off-by: Samuele Zecchini <samuele.zecchin...@gmail.com> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c | 287 ++-- 1 file changed, 280 insertions(+), 7 deletions(-) diff --git a/b

[PATCH V3 11/16] block, bfq: reduce idling only in symmetric scenarios

2017-04-11 Thread Paolo Valente
the First Workshop on Mobile System Technologies (MST-2015), May 2015. http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf Signed-off-by: Arianna Avanzini Signed-off-by: Riccardo Pizzetti Signed-off-by: Samuele Zecchini Signed-off-by: Paolo Valente --- block/bfq-iosch

[PATCH V3 14/16] block, bfq: handle bursts of queue activations

2017-04-11 Thread Paolo Valente
idling and weight-raising for the queues belonging to these bursts. Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c | 404 ++-- 1 file changed, 389

[PATCH V3 14/16] block, bfq: handle bursts of queue activations

2017-04-11 Thread Paolo Valente
belonging to these bursts. Signed-off-by: Arianna Avanzini Signed-off-by: Paolo Valente --- block/bfq-iosched.c | 404 ++-- 1 file changed, 389 insertions(+), 15 deletions(-) diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index 549f030

[PATCH V3 15/16] block, bfq: remove all get and put of I/O contexts

2017-04-11 Thread Paolo Valente
by modifying involved operations in such a way to not need to get the above I/O-context references any more. Then it also removes any get and release of these references. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c

[PATCH V3 12/16] block, bfq: boost the throughput on NCQ-capable flash-based devices

2017-04-11 Thread Paolo Valente
of the throughput. In this case, to guarantee the desired throughput distribution, the device must be prevented from prefetching requests. This is exactly what this patch does in asymmetric scenarios. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avan

[PATCH V3 12/16] block, bfq: boost the throughput on NCQ-capable flash-based devices

2017-04-11 Thread Paolo Valente
of the throughput. In this case, to guarantee the desired throughput distribution, the device must be prevented from prefetching requests. This is exactly what this patch does in asymmetric scenarios. Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 154

[PATCH V3 15/16] block, bfq: remove all get and put of I/O contexts

2017-04-11 Thread Paolo Valente
by modifying involved operations in such a way to not need to get the above I/O-context references any more. Then it also removes any get and release of these references. Signed-off-by: Paolo Valente --- block/bfq-iosched.c | 143 +--- 1 file changed, 23

[PATCH V3 13/16] block, bfq: boost the throughput with random I/O on NCQ-capable HDDs

2017-04-11 Thread Paolo Valente
disabling idling boosts the throughput on NCQ-capable rotational devices. To not break service guarantees, idling is disabled for NCQ-enabled rotational devices only when the same symmetry conditions considered in the previous patches hold. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org>

[PATCH V3 13/16] block, bfq: boost the throughput with random I/O on NCQ-capable HDDs

2017-04-11 Thread Paolo Valente
disabling idling boosts the throughput on NCQ-capable rotational devices. To not break service guarantees, idling is disabled for NCQ-enabled rotational devices only when the same symmetry conditions considered in the previous patches hold. Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini

[PATCH V3 02/16] block, bfq: add full hierarchical scheduling and cgroups support

2017-04-11 Thread Paolo Valente
ed-off-by: Fabio Checconi <fchecc...@gmail.com> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- Documentation/block/bfq-iosched.txt | 17 +- block/Kconfig.iosched | 10 + block/bfq-iosched.

[PATCH V3 02/16] block, bfq: add full hierarchical scheduling and cgroups support

2017-04-11 Thread Paolo Valente
-by: Paolo Valente Signed-off-by: Arianna Avanzini --- Documentation/block/bfq-iosched.txt | 17 +- block/Kconfig.iosched | 10 + block/bfq-iosched.c | 2568 ++- include/linux/blkdev.h |2 +- 4 files changed, 2213

[PATCH V3 07/16] block, bfq: reduce I/O latency for soft real-time applications

2017-04-11 Thread Paolo Valente
ony requirements, then the end of the weight-raising period for the queue is moved forward, and so on. Note that an application whose associated queue never happens to be empty when it expires will never have the opportunity to be deemed as soft real-time. Signed-off-by: Paolo Valente <paol

[PATCH V3 07/16] block, bfq: reduce I/O latency for soft real-time applications

2017-04-11 Thread Paolo Valente
ony requirements, then the end of the weight-raising period for the queue is moved forward, and so on. Note that an application whose associated queue never happens to be empty when it expires will never have the opportunity to be deemed as soft real-time. Signed-off-by: Paolo Valente Signed-

[PATCH V3 03/16] block, bfq: improve throughput boosting

2017-04-11 Thread Paolo Valente
unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- bl

[PATCH V3 03/16] block, bfq: improve throughput boosting

2017-04-11 Thread Paolo Valente
unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 87 + 1 file changed, 41 insertions(+), 46

[PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-11 Thread Paolo Valente
in symmetric scenarios block, bfq: handle bursts of queue activations Paolo Valente (12): block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler block, bfq: improve throughput boosting block, bfq: modify the peak-rate estimator block, bfq: add more fairness with writes and slow

[PATCH V3 00/16] Introduce the BFQ I/O scheduler

2017-04-11 Thread Paolo Valente
in symmetric scenarios block, bfq: handle bursts of queue activations Paolo Valente (12): block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler block, bfq: improve throughput boosting block, bfq: modify the peak-rate estimator block, bfq: add more fairness with writes and slow

Re: [PATCH V2 16/16] block, bfq: split bfq-iosched.c into multiple source files

2017-04-11 Thread Paolo Valente
p us a note to > help improve the system] > Hi, this seems to be a false positive. Build is correct with the tested tree and the .config. Thanks, Paolo > url: > https://github.com/0day-ci/linux/commits/Paolo-Valente/block-bfq-introduce-the-BFQ-v0-I-O-scheduler-as-an-extra

Re: [PATCH V2 16/16] block, bfq: split bfq-iosched.c into multiple source files

2017-04-11 Thread Paolo Valente
gt; help improve the system] > Hi, this seems to be a false positive. Build is correct with the tested tree and the .config. Thanks, Paolo > url: > https://github.com/0day-ci/linux/commits/Paolo-Valente/block-bfq-introduce-the-BFQ-v0-I-O-scheduler-as-an-extra-scheduler/20170402-100622

Re: [PATCH V2 00/16] Introduce the BFQ I/O scheduler

2017-04-11 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 18:56, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Fri, 2017-03-31 at 14:47 +0200, Paolo Valente wrote: >> [ ... ] > > Hello Paolo, > > Is the git tree that is available at https://github.com

Re: [PATCH V2 00/16] Introduce the BFQ I/O scheduler

2017-04-11 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 18:56, Bart Van Assche > ha scritto: > > On Fri, 2017-03-31 at 14:47 +0200, Paolo Valente wrote: >> [ ... ] > > Hello Paolo, > > Is the git tree that is available at https://github.com/Algodev-github/bfq-mq > appropriate for

Re: bfq-mq performance comparison to cfq

2017-04-11 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 17:15, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Mon, 2017-04-10 at 11:55 +0200, Paolo Valente wrote: >> That said, if you do always want maximum throughput, even at the >> expense of latency, then just swi

Re: bfq-mq performance comparison to cfq

2017-04-11 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 17:15, Bart Van Assche > ha scritto: > > On Mon, 2017-04-10 at 11:55 +0200, Paolo Valente wrote: >> That said, if you do always want maximum throughput, even at the >> expense of latency, then just switch off low-latency heuristics,

Re: bfq-mq performance comparison to cfq

2017-04-11 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 11:55, Paolo Valente > <paolo.vale...@linaro.org> ha scritto: > >> >> Il giorno 10 apr 2017, alle ore 11:05, Andreas Herrmann <aherrm...@suse.com> >> ha scritto: >> >> Hi Paolo, >> >> I've l

Re: bfq-mq performance comparison to cfq

2017-04-11 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 11:55, Paolo Valente > ha scritto: > >> >> Il giorno 10 apr 2017, alle ore 11:05, Andreas Herrmann >> ha scritto: >> >> Hi Paolo, >> >> I've looked at your WIP branch as of 4.11.0-bfq-mq-rc4-00155-gbce081

Re: bfq-mq performance comparison to cfq

2017-04-10 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 11:05, Andreas Herrmann > ha scritto: > > Hi Paolo, > > I've looked at your WIP branch as of 4.11.0-bfq-mq-rc4-00155-gbce0818 > and did some fio tests to compare the behavior to CFQ. > > My understanding is that bfq-mq is supposed to be

Re: bfq-mq performance comparison to cfq

2017-04-10 Thread Paolo Valente
> Il giorno 10 apr 2017, alle ore 11:05, Andreas Herrmann > ha scritto: > > Hi Paolo, > > I've looked at your WIP branch as of 4.11.0-bfq-mq-rc4-00155-gbce0818 > and did some fio tests to compare the behavior to CFQ. > > My understanding is that bfq-mq is supposed to be merged sooner or >

Re: [PATCH V2 11/16] block, bfq: reduce idling only in symmetric scenarios

2017-04-07 Thread Paolo Valente
> Il giorno 31 mar 2017, alle ore 17:20, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Fri, 2017-03-31 at 14:47 +0200, Paolo Valente wrote: >> + entity->weight_counter = kzalloc(sizeof(struct bfq_weight_counter), >> +

Re: [PATCH V2 11/16] block, bfq: reduce idling only in symmetric scenarios

2017-04-07 Thread Paolo Valente
> Il giorno 31 mar 2017, alle ore 17:20, Bart Van Assche > ha scritto: > > On Fri, 2017-03-31 at 14:47 +0200, Paolo Valente wrote: >> + entity->weight_counter = kzalloc(sizeof(struct bfq_weight_counter), >> +GFP

Re: [PATCH V2 04/16] block, bfq: modify the peak-rate estimator

2017-04-06 Thread Paolo Valente
> Il giorno 04 apr 2017, alle ore 17:28, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Tue, 2017-04-04 at 12:42 +0200, Paolo Valente wrote: >>> Il giorno 31 mar 2017, alle ore 17:31, Bart Van Assche >>> <bart.vanass...@sandisk.com&g

Re: [PATCH V2 04/16] block, bfq: modify the peak-rate estimator

2017-04-06 Thread Paolo Valente
> Il giorno 04 apr 2017, alle ore 17:28, Bart Van Assche > ha scritto: > > On Tue, 2017-04-04 at 12:42 +0200, Paolo Valente wrote: >>> Il giorno 31 mar 2017, alle ore 17:31, Bart Van Assche >>> ha scritto: >>> >>> On Fri

Re: [PATCH V2 04/16] block, bfq: modify the peak-rate estimator

2017-04-04 Thread Paolo Valente
> Il giorno 31 mar 2017, alle ore 17:31, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Fri, 2017-03-31 at 14:47 +0200, Paolo Valente wrote: >> -static bool bfq_update_peak_rate(struct bfq_data *bfqd, struct bfq_queue >> *bfqq, >> -

Re: [PATCH V2 04/16] block, bfq: modify the peak-rate estimator

2017-04-04 Thread Paolo Valente
> Il giorno 31 mar 2017, alle ore 17:31, Bart Van Assche > ha scritto: > > On Fri, 2017-03-31 at 14:47 +0200, Paolo Valente wrote: >> -static bool bfq_update_peak_rate(struct bfq_data *bfqd, struct bfq_queue >> *bfqq, >> -bo

Re: [PATCH RFC 00/14] Add the BFQ I/O Scheduler to blk-mq

2017-03-31 Thread Paolo Valente
> Il giorno 06 mar 2017, alle ore 08:43, Markus Trippelsdorf > <mar...@trippelsdorf.de> ha scritto: > > On 2017.03.04 at 17:01 +0100, Paolo Valente wrote: >> Hi, >> at last, here is my first patch series meant for merging. It adds BFQ >> to blk-mq. Don't wor

Re: [PATCH RFC 00/14] Add the BFQ I/O Scheduler to blk-mq

2017-03-31 Thread Paolo Valente
> Il giorno 06 mar 2017, alle ore 08:43, Markus Trippelsdorf > ha scritto: > > On 2017.03.04 at 17:01 +0100, Paolo Valente wrote: >> Hi, >> at last, here is my first patch series meant for merging. It adds BFQ >> to blk-mq. Don't worry, in this

[PATCH V2 00/16] Introduce the BFQ I/O scheduler

2017-03-31 Thread Paolo Valente
of queue activations Paolo Valente (12): block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler block, bfq: improve throughput boosting block, bfq: modify the peak-rate estimator block, bfq: add more fairness with writes and slow processes block, bfq: improve responsiveness

[PATCH V2 00/16] Introduce the BFQ I/O scheduler

2017-03-31 Thread Paolo Valente
of queue activations Paolo Valente (12): block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler block, bfq: improve throughput boosting block, bfq: modify the peak-rate estimator block, bfq: add more fairness with writes and slow processes block, bfq: improve responsiveness

[PATCH V2 02/16] block, bfq: add full hierarchical scheduling and cgroups support

2017-03-31 Thread Paolo Valente
ed-off-by: Fabio Checconi <fchecc...@gmail.com> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- Documentation/block/bfq-iosched.txt | 17 +- block/Kconfig.iosched | 10 + block/bfq-iosched.

[PATCH V2 02/16] block, bfq: add full hierarchical scheduling and cgroups support

2017-03-31 Thread Paolo Valente
-by: Paolo Valente Signed-off-by: Arianna Avanzini --- Documentation/block/bfq-iosched.txt | 17 +- block/Kconfig.iosched | 10 + block/bfq-iosched.c | 2568 ++- include/linux/blkdev.h |2 +- 4 files changed, 2213

[PATCH V2 03/16] block, bfq: improve throughput boosting

2017-03-31 Thread Paolo Valente
unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- bl

[PATCH V2 03/16] block, bfq: improve throughput boosting

2017-03-31 Thread Paolo Valente
unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 87 + 1 file changed, 41 insertions(+), 46

[PATCH V2 07/16] block, bfq: reduce I/O latency for soft real-time applications

2017-03-31 Thread Paolo Valente
ony requirements, then the end of the weight-raising period for the queue is moved forward, and so on. Note that an application whose associated queue never happens to be empty when it expires will never have the opportunity to be deemed as soft real-time. Signed-off-by: Paolo Valente <paol

[PATCH V2 07/16] block, bfq: reduce I/O latency for soft real-time applications

2017-03-31 Thread Paolo Valente
ony requirements, then the end of the weight-raising period for the queue is moved forward, and so on. Note that an application whose associated queue never happens to be empty when it expires will never have the opportunity to be deemed as soft real-time. Signed-off-by: Paolo Valente Signed-

[PATCH V2 05/16] block, bfq: add more fairness with writes and slow processes

2017-03-31 Thread Paolo Valente
Annual International Systems and Storage Conference (SYSTOR '12), June 2012. Slightly extended version: http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...

[PATCH V2 05/16] block, bfq: add more fairness with writes and slow processes

2017-03-31 Thread Paolo Valente
Annual International Systems and Storage Conference (SYSTOR '12), June 2012. Slightly extended version: http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-

[PATCH V2 06/16] block, bfq: improve responsiveness

2017-03-31 Thread Paolo Valente
. http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- Documentation/block/bfq-iosched.txt | 9 + block/bfq-iosched.c | 740 +++

[PATCH V2 06/16] block, bfq: improve responsiveness

2017-03-31 Thread Paolo Valente
. http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- Documentation/block/bfq-iosched.txt | 9 + block/bfq-iosched.c | 740 2 files changed, 675 insertions(+), 74 deletions(-)

[PATCH V2 04/16] block, bfq: modify the peak-rate estimator

2017-03-31 Thread Paolo Valente
no request is silently dropped), the following obvious convergence property holds: the number of requests dispatched MUST become closer and closer to the number of requests completed as the observation interval grows. This is the key property used in this new version of the peak-rate estimator. Signed-off

[PATCH V2 04/16] block, bfq: modify the peak-rate estimator

2017-03-31 Thread Paolo Valente
no request is silently dropped), the following obvious convergence property holds: the number of requests dispatched MUST become closer and closer to the number of requests completed as the observation interval grows. This is the key property used in this new version of the peak-rate estimator. Signed-off

[PATCH V2 09/16] block, bfq: reduce latency during request-pool saturation

2017-03-31 Thread Paolo Valente
one. Along the same line, if there are weight-raised queues, then this patch halves the service rate of async (write) requests for non-weight-raised queues. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- block/b

[PATCH V2 10/16] block, bfq: add Early Queue Merge (EQM)

2017-03-31 Thread Paolo Valente
anzini <avanzini.aria...@gmail.com> Signed-off-by: Mauro Andreolini <mauro.andreol...@unimore.it> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c | 881 +--- 1 file changed, 840 insertions(+), 41

[PATCH V2 09/16] block, bfq: reduce latency during request-pool saturation

2017-03-31 Thread Paolo Valente
one. Along the same line, if there are weight-raised queues, then this patch halves the service rate of async (write) requests for non-weight-raised queues. Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 66

[PATCH V2 10/16] block, bfq: add Early Queue Merge (EQM)

2017-03-31 Thread Paolo Valente
Andreolini Signed-off-by: Paolo Valente --- block/bfq-iosched.c | 881 +--- 1 file changed, 840 insertions(+), 41 deletions(-) diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index 7536b8a..df74c0d 100644 --- a/block/bfq-iosched.c +++ b/block/bfq

[PATCH V2 08/16] block, bfq: preserve a low latency also with NCQ-capable drives

2017-03-31 Thread Paolo Valente
hed/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> --- block/bfq-iosched.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)

[PATCH V2 08/16] block, bfq: preserve a low latency also with NCQ-capable drives

2017-03-31 Thread Paolo Valente
hed/bfq-v1-suite- results.pdf Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index 999496

[PATCH V2 15/16] block, bfq: remove all get and put of I/O contexts

2017-03-31 Thread Paolo Valente
by modifying involved operations in such a way to not need to get the above I/O-context references any more. Then it also removes any get and release of these references. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c

[PATCH V2 15/16] block, bfq: remove all get and put of I/O contexts

2017-03-31 Thread Paolo Valente
by modifying involved operations in such a way to not need to get the above I/O-context references any more. Then it also removes any get and release of these references. Signed-off-by: Paolo Valente --- block/bfq-iosched.c | 143 +--- 1 file changed, 23

[PATCH V2 14/16] block, bfq: handle bursts of queue activations

2017-03-31 Thread Paolo Valente
idling and weight-raising for the queues belonging to these bursts. Signed-off-by: Arianna Avanzini <avanzini.aria...@gmail.com> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c | 403 ++-- 1 file changed, 388

[PATCH V2 14/16] block, bfq: handle bursts of queue activations

2017-03-31 Thread Paolo Valente
belonging to these bursts. Signed-off-by: Arianna Avanzini Signed-off-by: Paolo Valente --- block/bfq-iosched.c | 403 ++-- 1 file changed, 388 insertions(+), 15 deletions(-) diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index 738fd5f

[PATCH V2 11/16] block, bfq: reduce idling only in symmetric scenarios

2017-03-31 Thread Paolo Valente
...@gmail.com> Signed-off-by: Samuele Zecchini <samuele.zecchin...@gmail.com> Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> --- block/bfq-iosched.c | 271 ++-- 1 file changed, 264 insertions(+), 7 deletions(-) diff --git a/b

[PATCH V2 11/16] block, bfq: reduce idling only in symmetric scenarios

2017-03-31 Thread Paolo Valente
the First Workshop on Mobile System Technologies (MST-2015), May 2015. http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf Signed-off-by: Arianna Avanzini Signed-off-by: Riccardo Pizzetti Signed-off-by: Samuele Zecchini Signed-off-by: Paolo Valente --- block/bfq-iosch

[PATCH V2 13/16] block, bfq: boost the throughput with random I/O on NCQ-capable HDDs

2017-03-31 Thread Paolo Valente
disabling idling boosts the throughput on NCQ-capable rotational devices. To not break service guarantees, idling is disabled for NCQ-enabled rotational devices only when the same symmetry conditions considered in the previous patches hold. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org>

[PATCH V2 12/16] block, bfq: boost the throughput on NCQ-capable flash-based devices

2017-03-31 Thread Paolo Valente
of the throughput. In this case, to guarantee the desired throughput distribution, the device must be prevented from prefetching requests. This is exactly what this patch does in asymmetric scenarios. Signed-off-by: Paolo Valente <paolo.vale...@linaro.org> Signed-off-by: Arianna Avanzini <avan

[PATCH V2 13/16] block, bfq: boost the throughput with random I/O on NCQ-capable HDDs

2017-03-31 Thread Paolo Valente
disabling idling boosts the throughput on NCQ-capable rotational devices. To not break service guarantees, idling is disabled for NCQ-enabled rotational devices only when the same symmetry conditions considered in the previous patches hold. Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini

[PATCH V2 12/16] block, bfq: boost the throughput on NCQ-capable flash-based devices

2017-03-31 Thread Paolo Valente
of the throughput. In this case, to guarantee the desired throughput distribution, the device must be prevented from prefetching requests. This is exactly what this patch does in asymmetric scenarios. Signed-off-by: Paolo Valente Signed-off-by: Arianna Avanzini --- block/bfq-iosched.c | 154

Re: [PATCH RFC 00/14] Add the BFQ I/O Scheduler to blk-mq

2017-03-19 Thread Paolo Valente
> Il giorno 18 mar 2017, alle ore 13:46, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Sat, 2017-03-18 at 18:09 +0100, Linus Walleij wrote: >> On Sat, Mar 18, 2017 at 11:52 AM, Paolo Valente >> <paolo.vale...@linaro.org> wrote: >&g

Re: [PATCH RFC 00/14] Add the BFQ I/O Scheduler to blk-mq

2017-03-19 Thread Paolo Valente
> Il giorno 18 mar 2017, alle ore 13:46, Bart Van Assche > ha scritto: > > On Sat, 2017-03-18 at 18:09 +0100, Linus Walleij wrote: >> On Sat, Mar 18, 2017 at 11:52 AM, Paolo Valente >> wrote: >>>> Il giorno 14 mar 2017, alle ore 16:32, Bart Van Assche >

Re: [PATCH RFC 01/14] block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler

2017-03-19 Thread Paolo Valente
> Il giorno 18 mar 2017, alle ore 11:24, Bart Van Assche > <bart.vanass...@sandisk.com> ha scritto: > > On Sat, 2017-03-18 at 08:08 -0400, Paolo Valente wrote: >>> Il giorno 06 mar 2017, alle ore 14:40, Bart Van Assche >>> <bart.vanass...@sandisk.com&

Re: [PATCH RFC 01/14] block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler

2017-03-19 Thread Paolo Valente
> Il giorno 18 mar 2017, alle ore 11:24, Bart Van Assche > ha scritto: > > On Sat, 2017-03-18 at 08:08 -0400, Paolo Valente wrote: >>> Il giorno 06 mar 2017, alle ore 14:40, Bart Van Assche >>> ha scritto: &

Re: [PATCH RFC 01/14] block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler

2017-03-18 Thread Paolo Valente
> Il giorno 07 mar 2017, alle ore 18:22, Jens Axboe ha > scritto: > >> +/** >> + * bfq_entity_of - get an entity from a node. >> + * @node: the node field of the entity. >> + * >> + * Convert a node pointer to the relative entity. This is used only >> + * to simplify the

Re: [PATCH RFC 01/14] block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler

2017-03-18 Thread Paolo Valente
> Il giorno 07 mar 2017, alle ore 18:22, Jens Axboe ha > scritto: > >> +/** >> + * bfq_entity_of - get an entity from a node. >> + * @node: the node field of the entity. >> + * >> + * Convert a node pointer to the relative entity. This is used only >> + * to simplify the logic of some

<    1   2   3   4   5   6   7   8   9   10   >