Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1501093 > unrolled thread
| Started by | Tejun Heo <tj@kernel.org> |
|---|---|
| First post | 2016-10-14 18:50 +0200 |
| Last post | 2016-10-18 07:20 +0200 |
| Articles | 5 — 3 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: Fwd: [PATCH V3 00/11] block-throttle: add .high limit Tejun Heo <tj@kernel.org> - 2016-10-14 18:50 +0200
Re: [PATCH V3 00/11] block-throttle: add .high limit Paolo Valente <paolo.valente@unimore.it> - 2016-10-14 19:20 +0200
Re: [PATCH V3 00/11] block-throttle: add .high limit Tejun Heo <tj@kernel.org> - 2016-10-14 20:40 +0200
Re: [PATCH V3 00/11] block-throttle: add .high limit Paolo Valente <paolo.valente@unimore.it> - 2016-10-16 21:10 +0200
Re: [PATCH V3 00/11] block-throttle: add .high limit Kyle Sanderson <kyle.leet@gmail.com> - 2016-10-18 07:20 +0200
| From | Tejun Heo <tj@kernel.org> |
|---|---|
| Date | 2016-10-14 18:50 +0200 |
| Subject | Re: Fwd: [PATCH V3 00/11] block-throttle: add .high limit |
| Message-ID | <ssdQd-3JZ-3@gated-at.bofh.it> |
Hello, Kyle. On Sat, Oct 08, 2016 at 06:15:14PM -0700, Kyle Sanderson wrote: > How is this even a discussion when hard numbers, and trying any > reproduction case easily reproduce the issues that CFQ causes. Reading > this thread, and many others only grows not only my disappointment, > but whenever someone launches kterm or scrot and their machine > freezes, leaves a selective few individuals completely responsible for > this. Help those users, help yourself, help Linux. So, just to be clear. I wasn't arguing against bfq replacing cfq (or anything along that line) but that proportional control, as implemented, would be too costly for many use cases and thus we need something along the line of what Shaohua is proposing. FWIW, it looks like the only way we can implement proportional control on highspeed ssds with acceptable overhead is somehow finding a way to calculate the cost of each IO and throttle IOs according to that while controlling for latency as necessary. Slice scheduling with idling seems too expensive with highspeed devices with high io depth. Thanks. -- tejun
[toc] | [next] | [standalone]
| From | Paolo Valente <paolo.valente@unimore.it> |
|---|---|
| Date | 2016-10-14 19:20 +0200 |
| Message-ID | <ssejg-4bs-17@gated-at.bofh.it> |
| In reply to | #1501093 |
> Il giorno 14 ott 2016, alle ore 18:40, Tejun Heo <tj@kernel.org> ha scritto: > > Hello, Kyle. > > On Sat, Oct 08, 2016 at 06:15:14PM -0700, Kyle Sanderson wrote: >> How is this even a discussion when hard numbers, and trying any >> reproduction case easily reproduce the issues that CFQ causes. Reading >> this thread, and many others only grows not only my disappointment, >> but whenever someone launches kterm or scrot and their machine >> freezes, leaves a selective few individuals completely responsible for >> this. Help those users, help yourself, help Linux. > > So, just to be clear. I wasn't arguing against bfq replacing cfq (or > anything along that line) but that proportional control, as > implemented, would be too costly for many use cases and thus we need > something along the line of what Shaohua is proposing. > Sorry for dropping in all the times, but the vision that you and some other guys propose seems to miss some important piece (unless, now or then, you will patiently prove me wrong, or I will finally understand on my own why I'm wrong). You are of course right: bfq, as a component of blk, and above all, as a sort of derivative of CFQ (and of its overhead), has currently too high a overhead to handle more than 10-20K IOPS. That said, your 'thus' seems a little too strong: "bfq does not yet handle fast SSDs, thus we need something else". What about the millions of devices (and people) still within 10-20 K IOPS, and experiencing awful latencies and lack of bandwidth guarantees? For certain systems or applications, it isn't even just a "buy a fast SSD" matter, but a technological constraint. > FWIW, it looks like the only way we can implement proportional control > on highspeed ssds with acceptable overhead Maybe not: as I wrote to Viveck in a previous reply, containing pointers to documentation, we have already achieved twenty millions of decisions per second with a prototype driving existing proportional-share packet schedulers (essentially without modifications). > is somehow finding a way to > calculate the cost of each IO and throttle IOs according to that while > controlling for latency as necessary. Slice scheduling with idling > seems too expensive with highspeed devices with high io depth. > Yes, that's absolutely true. I'm already thinking about an idleless solution. As I already wrote, I'm willing to help with scheduling in blk-mq. I hope there will be the opportunity to find some way to go at KS. Thanks, Paolo > Thanks. > > -- > tejun -- Paolo Valente Algogroup Dipartimento di Scienze Fisiche, Informatiche e Matematiche Via Campi 213/B 41125 Modena - Italy http://algogroup.unimore.it/people/paolo/
[toc] | [prev] | [next] | [standalone]
| From | Tejun Heo <tj@kernel.org> |
|---|---|
| Date | 2016-10-14 20:40 +0200 |
| Message-ID | <ssfyG-4WS-29@gated-at.bofh.it> |
| In reply to | #1501106 |
Hello, Paolo. On Fri, Oct 14, 2016 at 07:13:41PM +0200, Paolo Valente wrote: > That said, your 'thus' seems a little too strong: "bfq does not yet > handle fast SSDs, thus we need something else". What about the > millions of devices (and people) still within 10-20 K IOPS, and > experiencing awful latencies and lack of bandwidth guarantees? I'm not objecting to any of that. My point just is that bfq, at least as currently implemented, is unfit for certain classes of use cases. > > FWIW, it looks like the only way we can implement proportional control > > on highspeed ssds with acceptable overhead > > Maybe not: as I wrote to Viveck in a previous reply, containing > pointers to documentation, we have already achieved twenty millions > of decisions per second with a prototype driving existing > proportional-share packet schedulers (essentially without > modifications). And that doesn't require idling and thus doesn't severely impact utilization? > > is somehow finding a way to > > calculate the cost of each IO and throttle IOs according to that while > > controlling for latency as necessary. Slice scheduling with idling > > seems too expensive with highspeed devices with high io depth. > > Yes, that's absolutely true. I'm already thinking about an idleless > solution. As I already wrote, I'm willing to help with scheduling in > blk-mq. I hope there will be the opportunity to find some way to go > at KS. It'd be great to have a proportional control mechanism whose overhead is acceptable. Unfortunately, we don't have one now and nothing seems right around the corner. (Mostly) work-conserving throttling would be fiddlier to use but is something which is useful regardless of such proportional control mechanism and can be obtained relatively easily. I don't see why the two approaches would be mutually exclusive. Thanks. -- tejun
[toc] | [prev] | [next] | [standalone]
| From | Paolo Valente <paolo.valente@unimore.it> |
|---|---|
| Date | 2016-10-16 21:10 +0200 |
| Message-ID | <ssYYN-1qy-9@gated-at.bofh.it> |
| In reply to | #1501139 |
> Il giorno 14 ott 2016, alle ore 20:35, Tejun Heo <tj@kernel.org> ha scritto: > > Hello, Paolo. > > On Fri, Oct 14, 2016 at 07:13:41PM +0200, Paolo Valente wrote: >> That said, your 'thus' seems a little too strong: "bfq does not yet >> handle fast SSDs, thus we need something else". What about the >> millions of devices (and people) still within 10-20 K IOPS, and >> experiencing awful latencies and lack of bandwidth guarantees? > > I'm not objecting to any of that. Ok, sorry for misunderstanding. I'm just more and more confused about why a readily available, and not proven wrong solution has not yet been accepted, if everybody apparently acknowledges the problem. > My point just is that bfq, at least > as currently implemented, is unfit for certain classes of use cases. > Absolutely correct. >>> FWIW, it looks like the only way we can implement proportional control >>> on highspeed ssds with acceptable overhead >> >> Maybe not: as I wrote to Viveck in a previous reply, containing >> pointers to documentation, we have already achieved twenty millions >> of decisions per second with a prototype driving existing >> proportional-share packet schedulers (essentially without >> modifications). > > And that doesn't require idling and thus doesn't severely impact > utilization? > Nope. Packets are commonly assumed to be sent asynchronously. I guess that discussing the validity of this assumption is out of the scope of this thread. Thanks, Paolo >>> is somehow finding a way to >>> calculate the cost of each IO and throttle IOs according to that while >>> controlling for latency as necessary. Slice scheduling with idling >>> seems too expensive with highspeed devices with high io depth. >> >> Yes, that's absolutely true. I'm already thinking about an idleless >> solution. As I already wrote, I'm willing to help with scheduling in >> blk-mq. I hope there will be the opportunity to find some way to go >> at KS. > > It'd be great to have a proportional control mechanism whose overhead > is acceptable. Unfortunately, we don't have one now and nothing seems > right around the corner. (Mostly) work-conserving throttling would be > fiddlier to use but is something which is useful regardless of such > proportional control mechanism and can be obtained relatively easily. > > I don't see why the two approaches would be mutually exclusive. > > Thanks. > > -- > tejun > -- > To unsubscribe from this list: send the line "unsubscribe linux-block" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Paolo Valente Algogroup Dipartimento di Scienze Fisiche, Informatiche e Matematiche Via Campi 213/B 41125 Modena - Italy http://algogroup.unimore.it/people/paolo/
[toc] | [prev] | [next] | [standalone]
| From | Kyle Sanderson <kyle.leet@gmail.com> |
|---|---|
| Date | 2016-10-18 07:20 +0200 |
| Message-ID | <stuYF-5O5-9@gated-at.bofh.it> |
| In reply to | #1501552 |
Not to compound upon this again. However if BFQ isn't suitable to replace CFQ for high I/O workloads (I've yet to see 20k IOPS on any reasonably sized SAN (SC4020 / v5000, etc)), can't we at-least default BFQ to become the default I/O scheduler for people otherwise requesting CFQ? Paolo has had a team of students working on this for years, even if the otherwise "secret weapon" is mainlined I highly doubt his work will stop. We're pretty close to fixing hard I/O stalls in Linux, mainlining being the last major burden. While I've contributed nothing to BFQ code wise, absolutely let any of us know if there's anything outstanding to solve hard lockups and I believe any of us will try our best. Kyle. On Sun, Oct 16, 2016 at 12:02 PM, Paolo Valente <paolo.valente@unimore.it> wrote: > >> Il giorno 14 ott 2016, alle ore 20:35, Tejun Heo <tj@kernel.org> ha scritto: >> >> Hello, Paolo. >> >> On Fri, Oct 14, 2016 at 07:13:41PM +0200, Paolo Valente wrote: >>> That said, your 'thus' seems a little too strong: "bfq does not yet >>> handle fast SSDs, thus we need something else". What about the >>> millions of devices (and people) still within 10-20 K IOPS, and >>> experiencing awful latencies and lack of bandwidth guarantees? >> >> I'm not objecting to any of that. > > Ok, sorry for misunderstanding. I'm just more and more confused about > why a readily available, and not proven wrong solution has not yet > been accepted, if everybody apparently acknowledges the problem. > >> My point just is that bfq, at least >> as currently implemented, is unfit for certain classes of use cases. >> > > Absolutely correct. > >>>> FWIW, it looks like the only way we can implement proportional control >>>> on highspeed ssds with acceptable overhead >>> >>> Maybe not: as I wrote to Viveck in a previous reply, containing >>> pointers to documentation, we have already achieved twenty millions >>> of decisions per second with a prototype driving existing >>> proportional-share packet schedulers (essentially without >>> modifications). >> >> And that doesn't require idling and thus doesn't severely impact >> utilization? >> > > Nope. Packets are commonly assumed to be sent asynchronously. > I guess that discussing the validity of this assumption is out of the > scope of this thread. > > Thanks, > Paolo > >>>> is somehow finding a way to >>>> calculate the cost of each IO and throttle IOs according to that while >>>> controlling for latency as necessary. Slice scheduling with idling >>>> seems too expensive with highspeed devices with high io depth. >>> >>> Yes, that's absolutely true. I'm already thinking about an idleless >>> solution. As I already wrote, I'm willing to help with scheduling in >>> blk-mq. I hope there will be the opportunity to find some way to go >>> at KS. >> >> It'd be great to have a proportional control mechanism whose overhead >> is acceptable. Unfortunately, we don't have one now and nothing seems >> right around the corner. (Mostly) work-conserving throttling would be >> fiddlier to use but is something which is useful regardless of such >> proportional control mechanism and can be obtained relatively easily. >> >> I don't see why the two approaches would be mutually exclusive. >> >> Thanks. >> >> -- >> tejun >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-block" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > > > -- > Paolo Valente > Algogroup > Dipartimento di Scienze Fisiche, Informatiche e Matematiche > Via Campi 213/B > 41125 Modena - Italy > http://algogroup.unimore.it/people/paolo/ > > > > >
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web