Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-21 Thread Rafael J. Wysocki
On Wednesday, March 21, 2018 2:51:13 PM CET Doug Smythies wrote: > On 2018.03.20 23:33 Rafael J. Wysocki wrote: > > On Tuesday, March 20, 2018 10:03:50 PM CET Doug Smythies wrote: > >> Summary: My results with kernel 4.16-rc6 and V8 of the patch set > >> are completely different, and now show no cl

RE: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-21 Thread Doug Smythies
On 2018.03.20 23:33 Rafael J. Wysocki wrote: > On Tuesday, March 20, 2018 10:03:50 PM CET Doug Smythies wrote: >> Summary: My results with kernel 4.16-rc6 and V8 of the patch set >> are completely different, and now show no clear difference >> (a longer test might reveal something). > > Does this

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-20 Thread Rafael J. Wysocki
On Tuesday, March 20, 2018 10:03:50 PM CET Doug Smythies wrote: > Summary: My results with kernel 4.16-rc6 and V8 of the patch set > are completely different, and now show no clear difference > (a longer test might reveal something). Does this mean that you see the "powernightmares" pattern with

RE: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-20 Thread Doug Smythies
Summary: My results with kernel 4.16-rc6 and V8 of the patch set are completely different, and now show no clear difference (a longer test might reveal something). On 2018.03.20 10:16 Doug Smythies wrote: > On 2018.03.20 03:02 Thomas Ilsche wrote: > >...[snip]... > >> Consider the Skylake server

RE: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-20 Thread Doug Smythies
On 2018.03.20 03:02 Thomas Ilsche wrote: ...[snip]... > Consider the Skylake server system which has residencies in C1E of > 20 us and C6 of 800 us. I use a small while(1) {usleep(300);} > unsynchronized pinned to each core. While this is an artificial > case, it is a very innocent one - easy to

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-20 Thread Rafael J. Wysocki
On Tue, Mar 20, 2018 at 11:01 AM, Thomas Ilsche wrote: > On 2018-03-18 17:15, Rafael J. Wysocki wrote: >>> >>> Doug, Thomas, >>> >>> Thank you both for the reports, much appreciated! >>> >>> Below is a drop-in v6 replacement for patch [4/7]. >>> >>> With this new patch applied instead of the [4/7]

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-20 Thread Thomas Ilsche
On 2018-03-18 17:15, Rafael J. Wysocki wrote: Doug, Thomas, Thank you both for the reports, much appreciated! Below is a drop-in v6 replacement for patch [4/7]. With this new patch applied instead of the [4/7] the behavior should be much more in line with the v4 behavior, so please try it if y

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-19 Thread Peter Zijlstra
On Mon, Mar 19, 2018 at 12:36:52PM +0100, Rafael J. Wysocki wrote: > > My brain is just not willing to understand how that work this morning. > > Also it sounds really dodgy. > > Well, I guess I can't really explain it better. :-) I'll try again once my brain decides to wake up. > The reason wh

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-19 Thread Rafael J. Wysocki
On Mon, Mar 19, 2018 at 12:36 PM, Rafael J. Wysocki wrote: > On Mon, Mar 19, 2018 at 11:49 AM, Peter Zijlstra wrote: >> On Sun, Mar 18, 2018 at 05:15:22PM +0100, Rafael J. Wysocki wrote: >>> On Sun, Mar 18, 2018 at 12:00 PM, Rafael J. Wysocki >>> wrote: >>> > @@ -354,6 +360,7 @@ static int menu

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-19 Thread Rafael J. Wysocki
On Mon, Mar 19, 2018 at 11:49 AM, Peter Zijlstra wrote: > On Sun, Mar 18, 2018 at 05:15:22PM +0100, Rafael J. Wysocki wrote: >> On Sun, Mar 18, 2018 at 12:00 PM, Rafael J. Wysocki >> wrote: >> > @@ -354,6 +360,7 @@ static int menu_select(struct cpuidle_dr >> > if (latency_req > interacti

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-19 Thread Peter Zijlstra
On Sun, Mar 18, 2018 at 05:15:22PM +0100, Rafael J. Wysocki wrote: > On Sun, Mar 18, 2018 at 12:00 PM, Rafael J. Wysocki > wrote: > > @@ -354,6 +360,7 @@ static int menu_select(struct cpuidle_dr > > if (latency_req > interactivity_req) > > latency_req = interactivity_req;

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-18 Thread Rafael J. Wysocki
On Sun, Mar 18, 2018 at 12:00 PM, Rafael J. Wysocki wrote: > On Saturday, March 17, 2018 5:11:53 PM CET Doug Smythies wrote: >> On 2018.03.17 Thomas Ilsche wrote: >> >> > Over the last week I tested v4+pollv2 and now v5+pollv3. With v5, I >> > observe a particular idle behavior, that I have not se

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-18 Thread Rafael J. Wysocki
On Sun, Mar 18, 2018 at 4:30 PM, Doug Smythies wrote: > On 2018.03.18 04:01 Rafael J. Wysocki wrote: > >> Below is a drop-in v6 replacement for patch [4/7]. >> >> With this new patch applied instead of the [4/7] the behavior should be much >> more in line with the v4 behavior, so please try it if

RE: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-18 Thread Doug Smythies
On 2018.03.18 04:01 Rafael J. Wysocki wrote: > Below is a drop-in v6 replacement for patch [4/7]. > > With this new patch applied instead of the [4/7] the behavior should be much > more in line with the v4 behavior, so please try it if you can and let me know > if that really is the case on your s

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-18 Thread Rafael J. Wysocki
On Saturday, March 17, 2018 5:11:53 PM CET Doug Smythies wrote: > On 2018.03.17 Thomas Ilsche wrote: > > > Over the last week I tested v4+pollv2 and now v5+pollv3. With v5, I > > observe a particular idle behavior, that I have not seen before with > > v4. On a dual-socket Skylake system the idle p

RE: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-17 Thread Doug Smythies
On 2018.03.17 Thomas Ilsche wrote: > Over the last week I tested v4+pollv2 and now v5+pollv3. With v5, I > observe a particular idle behavior, that I have not seen before with > v4. On a dual-socket Skylake system the idle power increases from > 74.1 W (system total) to 85.5 W with a 300 HZ build

Re: [RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-17 Thread Thomas Ilsche
Over the last week I tested v4+pollv2 and now v5+pollv3. With v5, I observe a particular idle behavior, that I have not seen before with v4. On a dual-socket Skylake system the idle power increases from 74.1 W (system total) to 85.5 W with a 300 HZ build and even to 138.3 W with a 1000 HZ build. A

[RFT][PATCH v5 0/7] sched/cpuidle: Idle loop rework

2018-03-15 Thread Rafael J. Wysocki
Hi All, Thanks a lot for the feedback so far! One more respin after the last batch of comments from Peter and Frederic. The previous summary that still applies: On Sunday, March 4, 2018 11:21:30 PM CET Rafael J. Wysocki wrote: > > The problem is that if we stop the sched tick in > tick_nohz_id