Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1162001AbbKEP2y (ORCPT ); Thu, 5 Nov 2015 10:28:54 -0500 Received: from mga11.intel.com ([192.55.52.93]:8154 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1161679AbbKEP2w (ORCPT ); Thu, 5 Nov 2015 10:28:52 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,248,1444719600"; d="scan'208";a="843342442" Subject: Re: [RFC PATCH 3/3] sched: introduce synchronized idle injection To: Peter Zijlstra References: <1446509428-5616-1-git-send-email-jacob.jun.pan@linux.intel.com> <1446509428-5616-4-git-send-email-jacob.jun.pan@linux.intel.com> <20151103133120.GD17308@twins.programming.kicks-ass.net> <20151103084501.289ec5d1@yairi> <20151105100922.GA3604@twins.programming.kicks-ass.net> <563B6642.2090803@linux.intel.com> <20151105143332.GQ17308@twins.programming.kicks-ass.net> Cc: Jacob Pan , Thomas Gleixner , LKML , Paul Turner , Len Brown , Srinivas Pandruvada , Tim Chen , Andi Kleen , Rafael Wysocki From: Arjan van de Ven Message-ID: <563B75B2.3040503@linux.intel.com> Date: Thu, 5 Nov 2015 07:28:50 -0800 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <20151105143332.GQ17308@twins.programming.kicks-ass.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2579 Lines: 57 On 11/5/2015 6:33 AM, Peter Zijlstra wrote: > On Thu, Nov 05, 2015 at 06:22:58AM -0800, Arjan van de Ven wrote: >> On 11/5/2015 2:09 AM, Peter Zijlstra wrote: >> >>> I can see such a scheme having a fairly big impact on latency, esp. with >>> forced idleness such as this. That's not going to be popular for many >>> workloads. >> >> idle injection is a last ditch effort in thermal management, before >> this gets used the hardware already has clamped you to a low frequency, >> reduced memory speeds, probably dimmed your screen etc etc. >> >> at this point there are 3 choices >> 1) Shut off the device >> 2) do uncoordinated idle injection for 40% of the time >> 3) do coordinated idle injection for 5% of the time >> >> as much as force injecting idle in a synchronized way sucks, the alternatives are worse. > > OK, it wasn't put that way. I figured it was a way to use less power on > any workload with idle time on. so idle injection (as with pretty much every thermal management feature) is NOT a way to save on battery life. Every known method pretty much ends up sacrificing more in terms of performance than you gain in instant power that over time you end up using more (drain battery basically). idle injection, if synchronized, is one of the more effective ones, e.g. give up the least efficiency compared to, say, unsynchronized or even inserting idle cycles in the CPU (T-states)... not even speaking of just turning the system off. > > That said; what kind of devices are we talking about here; mobile with > pittyful heat dissipation? Surely a well designed server or desktop > class system should never get into this situation in the first place. a well designed server may not, but the datacenter it is in may. for example if the AC goes out, but also, sometimes the datacenter's peak heat dissapation can exceed the AC capacity (which is outside temperature dependent.. yay global warming), which may require an urgent reduction over a series of machines for the duration of the peak load/peak temperature (usually just inserting a little bit, say 1%, over all servers will do) >It just grates at me a bit that we have to touch hot paths for such scenarios :/ well we have this as a driver right now that does not touch hot paths, but it seems you and tglx also hate that approach with a passion.... -- 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/