Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1292183
| From | Luca Abeni <luca.abeni@unitn.it> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity |
| Date | 2015-12-15 14:40 +0100 |
| Message-ID | <qFXZD-4IZ-5@gated-at.bofh.it> (permalink) |
| References | (2 earlier) <qFD4T-7Rv-47@gated-at.bofh.it> <qFDHA-86S-23@gated-at.bofh.it> <qFEDE-gS-9@gated-at.bofh.it> <qFJ0B-3gK-5@gated-at.bofh.it> <qFX3A-479-25@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 12/15/2015 01:38 PM, Peter Zijlstra wrote: > On Mon, Dec 14, 2015 at 10:31:13PM +0100, Luca Abeni wrote: > >>> There 'might' be smart pants ways around this, where you run part of >>> the execution at lower speed and switch to a higher speed to 'catch' >>> up if you exceed some boundary, such that, on average, you run at the >>> same speed the WCET mandates, but I'm not sure that's worth it. >>> Juri/Luca might know. > >> Some previous works (see for example >> https://www.researchgate.net/profile/Giuseppe_Lipari/publication/220800940_Using_resource_reservation_techniques_for_power-aware_scheduling/links/09e41513639b2703fc000000.pdf >> ) investigated the usage of the "active utilisation" for switching the >> CPU frequency. This "active utilisation tracking" mechanism is the same >> I mentioned in the previous email, and implemented here: >> https://github.com/lucabe72/linux-reclaiming/commit/49fc786a1c453148625f064fa38ea538470df55b . > > I have stuck the various PDFs and commits you've linked into my todo > list ;-) Thanks! You are welcome :) >> I suspect the "inactive timer" I used to decrease the utilisation at >> the so called 0-lag time might be problematic, but I did not find any >> way to implement (or approximate) the active utilisation tracking >> without this timer... Anyway, if there is interest I am willing to >> adapt/rework/modify my patches as needed. > > So I remember something else from the BFQ code, which also had to track > entries for the 0-lag stuff, and I just had a quick peek at that code > again. And what they appear to do is keep inactive entries with a lag > deficit in a separate tree (the idle tree). > > And every time they update the vtime, they also push fwd the idle tree > and expire entries on that. I am not sure if I understand correctly the idea (I do not know the BFQ code; I'll have a look), but I think I tried something similar: - When a task blocks, instead of arming the inactive timer I can insert the task in an "active non contending" tree (to use GRUB terminology) - So, when some sched deadline function is invoked, I check the "0-lag time" of the first task in the "active non contending" tree, and if that time is passed I remove the task from the tree and adjust the active utilisation The resulting code ended up being more complex (basically, I needed to handle the "active non contending" tree and to check it in task_tick_dl() and update_curr_dl()). But maybe I did it wrong... I'll try this approach again, after looking ad the BFQ code. Thanks, Luca > > Or that is what I can make of it in a quick few minutes staring at that > code -- look for bfq_forget_idle(). > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-14 16:20 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-14 17:00 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Juri Lelli <Juri.Lelli@arm.com> - 2015-12-14 17:10 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-14 22:20 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-14 18:00 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-14 22:40 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-15 13:40 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 14:40 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-15 14:50 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 22:30 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Juri Lelli <Juri.Lelli@arm.com> - 2015-12-16 10:30 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-15 05:50 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-15 13:50 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-15 14:00 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-14 22:20 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-15 06:10 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 10:00 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-15 13:30 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-15 13:50 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 14:20 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Peter Zijlstra <peterz@infradead.org> - 2015-12-15 13:30 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 14:30 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-15 13:50 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 14:40 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Vincent Guittot <vincent.guittot@linaro.org> - 2015-12-15 14:00 +0100
Re: [RFCv6 PATCH 09/10] sched: deadline: use deadline bandwidth in scale_rt_capacity Luca Abeni <luca.abeni@unitn.it> - 2015-12-15 14:50 +0100
csiph-web