Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp811454rwd; Wed, 31 May 2023 05:57:07 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5c5U0Qt9h1/f6C0IgG3o9DzYcA/vJ0dj+19Z7O7w/Go7R2cjvS8J7Ak2R1pqCjcT+fzVHc X-Received: by 2002:a17:90a:6887:b0:256:1fd4:1431 with SMTP id a7-20020a17090a688700b002561fd41431mr4501941pjd.8.1685537826957; Wed, 31 May 2023 05:57:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685537826; cv=none; d=google.com; s=arc-20160816; b=v2jK6PCU/BaBFWM55t3eIoMm1kCfo9tQP0CJYPJs06FrVkUQL+dt6cPduo4LCWV0bS WAO+1ldhRx9W5HhV8QtnTH899dij6QIHeZKoukjg1BLBuTONiNKv62v6zxF5cU4AnfGt bIR5JjWvFgU23HDGcB3+etJNzOWF5mSEaURiPuVkBRXEZRb9En/cNk4YtevWUijhuQJ4 OlYhmln/ygBu4rBeURPSCp4zqevn9sWUUPocSobkkBRuQbGKnXiIRfkmt7fUAPJmfq15 cvSiDAX8JMhl4wum0PPHWls+M970dQW0PoVJgjFEownfISWQD0vSN5Bcs8mMJpek534G YlUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:subject:cc:to:from:date:user-agent:message-id :dkim-signature; bh=43PZ7APiLSZw4p8V3oESMbNYg24McF+5B7Oexe48Sr0=; b=FDb2H4YURzYjVHwHaIzx4kYnezRc3eUiJumhC9eFn2c+75nrMcNdC9UW+SZZNweY1T +chv562dWGidOA2TkHIgoiYFtWcN1QSCxx9hfcrPFz5U09+6JlSO+iZDIDlUvVlxsQ9u EEUzAa3SvZKXqoXSqa8q8OVjoPXdRgrBIVqLHwZKLMVlFmEt3Ypfz+k3TYLf6RwtvX05 pGFDTTdS+Vf18xW9I/C3Y4vQB9LhOs2Khgzu+xcVVnZyjq2c8pJuqsLh5pNgom9wnnW/ jnQxefJtuAl6StOsd8mfbIQoN+S6wusGTz9aiFzZ2HRZOv4hdw3qarG1NbRku23kKYEN UYKw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=YzzuCGuu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id m6-20020a17090a414600b0024e54c31c25si862355pjg.176.2023.05.31.05.56.52; Wed, 31 May 2023 05:57:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=YzzuCGuu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236029AbjEaMtf (ORCPT + 99 others); Wed, 31 May 2023 08:49:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45482 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235973AbjEaMtA (ORCPT ); Wed, 31 May 2023 08:49:00 -0400 Received: from casper.infradead.org (casper.infradead.org [IPv6:2001:8b0:10b:1236::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3AD75E46 for ; Wed, 31 May 2023 05:48:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Subject:Cc:To:From:Date:Message-ID: Sender:Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description:In-Reply-To:References; bh=43PZ7APiLSZw4p8V3oESMbNYg24McF+5B7Oexe48Sr0=; b=YzzuCGuuyWwEyLi5LKjKjEuwBk vWljkFJM0uR0sKmb9XcV78lQSS2/v5GNjiNEqJLpAMoOeCL7ksS2EqldWz0S8HPm2TI2Owc9NFF3h rqpr8FzYhu4mUeS6gy3gRUBmYu+ZhLw9rJFdw1TiYhF6WIKCfnhk/Ty9poWp/nmPWf9TnCtDridc7 hUQAMTMsXj0JfIc8d7J8wODqN5MTY85B9JdPdvteeYXSjHU+Fa7W9YRWGPZ28y2oXOsLbaNGYBOQW ARTnYRrcZR9j8FcDA0ptyaAvu0scqsMuAKimy1t7Ewxlr9E9bTWFUlGGsqVr2GViuDMD5XqzhpEkM Zlw6WA5w==; Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1q4LEp-007GRX-0i; Wed, 31 May 2023 12:47:39 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 058CD3002A9; Wed, 31 May 2023 14:47:34 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 0) id D3FEE20FF5F85; Wed, 31 May 2023 14:47:33 +0200 (CEST) Message-ID: <20230531115839.089944915@infradead.org> User-Agent: quilt/0.66 Date: Wed, 31 May 2023 13:58:39 +0200 From: Peter Zijlstra To: mingo@kernel.org, vincent.guittot@linaro.org Cc: linux-kernel@vger.kernel.org, peterz@infradead.org, juri.lelli@redhat.com, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de, bristot@redhat.com, corbet@lwn.net, qyousef@layalina.io, chris.hyser@oracle.com, patrick.bellasi@matbug.net, pjt@google.com, pavel@ucw.cz, qperret@google.com, tim.c.chen@linux.intel.com, joshdon@google.com, timj@gnu.org, kprateek.nayak@amd.com, yu.c.chen@intel.com, youssefesmat@chromium.org, joel@joelfernandes.org, efault@gmx.de, tglx@linutronix.de Subject: [PATCH 00/15] sched: EEVDF and latency-nice and/or slice-attr X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED,URI_DOTEDU autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi! Latest version of the EEVDF [1] patches. The only real change since last time is the fix for tick-preemption [2], and a simple safe-guard for the mixed slice heuristic. Other than that, I've re-arranged the patches to make EEVDF come first and have the latency-nice or slice-attribute patches on top. Results should not be different from last time around, lots of people ran them and found no major performance issues; what was found was better latency and smaller variance (probably due to the more stable latency). I'm hoping we can start queueing this part. The big question is what additional interface to expose; some people have voiced objections to the latency-nice interface, the 'obvious' alternative is to directly expose the slice length as a request/hint. The very last patch implements this alternative using sched_attr::sched_runtime but is untested. Diffstat for the base patches [1-11]: include/linux/rbtree_augmented.h | 26 + include/linux/sched.h | 7 +- kernel/sched/core.c | 2 + kernel/sched/debug.c | 48 +- kernel/sched/fair.c | 1105 ++++++++++++++++++-------------------- kernel/sched/features.h | 24 +- kernel/sched/sched.h | 16 +- 7 files changed, 587 insertions(+), 641 deletions(-) [1] https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=805acf7726282721504c8f00575d91ebfd750564 [2] https://lkml.kernel.org/r/20230420150537.GC4253%40hirez.programming.kicks-ass.net