From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS,URIBL_BLOCKED,USER_AGENT_NEOMUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 127A2C43142 for ; Thu, 2 Aug 2018 15:30:49 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C78F021526 for ; Thu, 2 Aug 2018 15:30:48 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C78F021526 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387688AbeHBRW1 (ORCPT ); Thu, 2 Aug 2018 13:22:27 -0400 Received: from foss.arm.com ([217.140.101.70]:59514 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387508AbeHBRW0 (ORCPT ); Thu, 2 Aug 2018 13:22:26 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4DE5880D; Thu, 2 Aug 2018 08:30:46 -0700 (PDT) Received: from queper01-lin (queper01-lin.emea.arm.com [10.4.13.27]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 592BF3F5B3; Thu, 2 Aug 2018 08:30:42 -0700 (PDT) Date: Thu, 2 Aug 2018 16:30:37 +0100 From: Quentin Perret To: Vincent Guittot Cc: Peter Zijlstra , "Rafael J. Wysocki" , linux-kernel , "open list:THERMAL" , "gregkh@linuxfoundation.org" , Ingo Molnar , Dietmar Eggemann , Morten Rasmussen , Chris Redpath , Patrick Bellasi , Valentin Schneider , Thara Gopinath , viresh kumar , Todd Kjos , Joel Fernandes , "Cc: Steve Muckle" , adharmap@quicinc.com, "Kannan, Saravana" , pkondeti@codeaurora.org, Juri Lelli , Eduardo Valentin , Srinivas Pandruvada , currojerez@riseup.net, Javi Merino Subject: Re: [PATCH v5 09/14] sched: Add over-utilization/tipping point indicator Message-ID: <20180802153035.vjtmqwdwujvt7ojs@queper01-lin> References: <20180724122521.22109-1-quentin.perret@arm.com> <20180724122521.22109-10-quentin.perret@arm.com> <20180802122629.GU2476@hirez.programming.kicks-ass.net> <20180802130337.uf6tlac2hg4nkbwr@queper01-lin> <20180802130801.GL2494@hirez.programming.kicks-ass.net> <20180802131849.mqpt5lbtcqrxbwig@queper01-lin> <20180802141424.ju4jxxbk6pxw3kyq@queper01-lin> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20171215 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thursday 02 Aug 2018 at 17:14:15 (+0200), Vincent Guittot wrote: > On Thu, 2 Aug 2018 at 16:14, Quentin Perret wrote: > > Good point, setting the util_avg to 0 for new tasks should help > > filtering out those tiny tasks too. And that would match with the idea > > of letting tasks build their history before looking at their util_avg ... > > > > But there is one difference w.r.t frequency selection. The current code > > won't mark the system overutilized, but will let sugov raise the > > frequency when a new task is enqueued. So in case of a fork bomb, we > > If the initial value of util_avg is 0, we should not have any impact > on the util_avg of the cfs rq on which the task is attached, isn't it > ? so this should not impact both the over utilization state and the > frequency selected by sugov or I'm missing something ? What I tried to say is that setting util_avg to 0 for new tasks will prevent schedutil from raising the frequency in case of a fork bomb, and I think that could be an issue. And I think this isn't an issue with the patch as-is ... Sorry if that wasn't clear > Then, select_task_rq_fair is called for a new task but util_avg is > still 0 at that time in the current code so you will have consistent > util_avg of the new task before and after calling > find_energy_efficient_cpu New tasks don't go in find_energy_efficient_cpu(), because, as you said, they have no consistent util_avg yet when select_task_rq_fair() is called for the first time. Thanks, Quentin