Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757540AbbKFQvQ (ORCPT ); Fri, 6 Nov 2015 11:51:16 -0500 Received: from fw-tnat.cambridge.arm.com ([217.140.96.140]:58075 "EHLO cam-smtp0.cambridge.arm.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755516AbbKFQvO (ORCPT ); Fri, 6 Nov 2015 11:51:14 -0500 From: Punit Agrawal To: Peter Zijlstra Cc: Jacob Pan , Eduardo Valentin , Thomas Gleixner , LKML , Arjan van de Ven , Paul Turner , Len Brown , Srinivas Pandruvada , Tim Chen , Andi Kleen , Rafael Wysocki Subject: Re: [RFC PATCH 0/3] CFS idle injection References: <1446509428-5616-1-git-send-email-jacob.jun.pan@linux.intel.com> <20151104060654.GC8850@localhost.localdomain> <20151104085830.010e69f8@yairi> <20151105101218.GB3604@twins.programming.kicks-ass.net> Date: Fri, 06 Nov 2015 16:50:15 +0000 In-Reply-To: <20151105101218.GB3604@twins.programming.kicks-ass.net> (Peter Zijlstra's message of "Thu, 5 Nov 2015 11:12:18 +0100") Message-ID: <9hhvb9f843c.fsf@e105922-lin.cambridge.arm.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2487 Lines: 58 Peter Zijlstra writes: > People, trim your emails! > > On Wed, Nov 04, 2015 at 08:58:30AM -0800, Jacob Pan wrote: > >> > I also like #2 too. Specially now that it is not limited to a specific >> > platform. One question though, could you still keep the cooling device >> > support of it? In some systems, it might make sense to enable / >> > disable idle injections based on temperature. > >> One of the key difference between 1 and 2 is that #2 is open loop >> control, since we don't have CPU c-states info baked into scheduler. > > _yet_, there's people working on that. The whole power aware scheduling > stuff needs that. > >> To close the loop, perhaps we can export some internal APIs to the >> thermal subsystem then the thermal governors can pick the condition to >> inject idle. > > I would much rather that all be part of the power aware stuff, such that > the scheduler itself is aware of thermal limits and can migrate load > away if needed. I was wondering if we could use cpu capacity as the interface between the thermal sub-system and the scheduler. This would be better than dealing with frequency caps and idle injection percentages directly in the scheduler. We've been playing with making the scheduler respect capacity caps due to thermal constraints and have tasks migrated away to less capped cores. It would be great if in addition to the frequency caps, we could add idle injection to the arsenal. This would allow building policies on top such as - * pure idle injection where frequency capping is unsuitable (or unavailable) * a smooth continuum of capacities using a combination of frequency and capacity capping * idle injection once frequencies have been capped to the lowest feasible values (as suggested in the cover letter) One question about the implementation in these patches - should the implementation hook into pick_next_task in core instead of CFS? Higher priority tasks might get in the way of idle injection. > -- 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/ -- 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/