From patchwork Fri Mar 18 19:05:50 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Faggioli X-Patchwork-Id: 8623371 Return-Path: X-Original-To: patchwork-xen-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 80C5AC0553 for ; Fri, 18 Mar 2016 19:08:14 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 99FA12026F for ; Fri, 18 Mar 2016 19:08:13 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B4CC720123 for ; Fri, 18 Mar 2016 19:08:12 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1agzih-0000sL-71; Fri, 18 Mar 2016 19:05:59 +0000 Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1agzif-0000qn-CC for xen-devel@lists.xenproject.org; Fri, 18 Mar 2016 19:05:57 +0000 Received: from [85.158.137.68] by server-2.bemta-3.messagelabs.com id FD/2A-03293-4915CE65; Fri, 18 Mar 2016 19:05:56 +0000 X-Env-Sender: raistlin.df@gmail.com X-Msg-Ref: server-15.tower-31.messagelabs.com!1458327955!29792392!1 X-Originating-IP: [74.125.82.67] X-SpamReason: No, hits=0.2 required=7.0 tests=RCVD_ILLEGAL_IP X-StarScan-Received: X-StarScan-Version: 8.11; banners=-,-,- X-VirusChecked: Checked Received: (qmail 61537 invoked from network); 18 Mar 2016 19:05:56 -0000 Received: from mail-wm0-f67.google.com (HELO mail-wm0-f67.google.com) (74.125.82.67) by server-15.tower-31.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP; 18 Mar 2016 19:05:56 -0000 Received: by mail-wm0-f67.google.com with SMTP id p65so8551446wmp.1 for ; Fri, 18 Mar 2016 12:05:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:from:to:cc:date:message-id:in-reply-to:references :user-agent:mime-version:content-transfer-encoding; bh=JYCYNoxGRDbFaSIvk9s/ypAvp8bV2vzbTRT0PHeiLns=; b=aTVAarWVvCUO0tOCmaerSXZ02hsUTpKaX98KD7fm5XM7x2mVi3mre/69vEj9eksuN9 KjnUJuXkOnAp+Iw30bO+Faa6+pBQg0BMNqOozT60aJzBMNegK38V6Dyo++PmFJenYdOE 7eg5gc4aQJcKHlF7yaWoDPu9JzRPRlqUl3L9XQbGnsX93dBNcuT6Vb0c519iga2pbBMg BNtwUHVYQe9592b0rSRZHL5zFpFMmxJSxCC5HYt6f3itkDrj1j7uW0ZW7RkUJUcuCVWH JIvI+SE9ebdQOMZJwOy1GLtgqIwBlsS4PX0PI7LOQb9Q18GdEzCj+2L5tJOUKDptNGnG qOvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:from:to:cc:date:message-id :in-reply-to:references:user-agent:mime-version :content-transfer-encoding; bh=JYCYNoxGRDbFaSIvk9s/ypAvp8bV2vzbTRT0PHeiLns=; b=HvKIiI4Qgt42/EscYV3Mt+woc7g7IoC1n2hG08BHORthuibU7LIrKu4QrODUAa+fsp AFtuMICkg9fMye5ixUOKE5ViR0Taunga/v554wWe6qjzuT09QRJR+radGe9suUEPJHSx Eq/Dxg6KGqJnhlgCVrW97mLMgiEh8Bo9tj75rgDs9udc0n7E/W+x3OaDxBQP/XWtFCeK cPXhV8n+rdXLpF4JKDn1w0xNunE6IFUqMPVwwiyqasDT/zK/3nLGoURZq44mc1VJT7WG NqcpmiUqUST2+YM5Hqfekh2GuWAgEzlWm1odMoG9J4cwlURnuFQeYqmgaEF22vXzKrhR 4T2g== X-Gm-Message-State: AD7BkJLN7QDXgrZdebN5SolPnAqXWxwOiJLKdUM/J1KEQma3ZXIBl1/AAhAcGpK73cSEFg== X-Received: by 10.28.226.212 with SMTP id z203mr930401wmg.73.1458327955818; Fri, 18 Mar 2016 12:05:55 -0700 (PDT) Received: from Solace.station (net-2-35-170-8.cust.vodafonedsl.it. [2.35.170.8]) by smtp.gmail.com with ESMTPSA id l135sm568322wmb.13.2016.03.18.12.05.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 18 Mar 2016 12:05:55 -0700 (PDT) From: Dario Faggioli To: xen-devel@lists.xenproject.org Date: Fri, 18 Mar 2016 20:05:50 +0100 Message-ID: <20160318190550.8117.76878.stgit@Solace.station> In-Reply-To: <20160318185524.8117.74837.stgit@Solace.station> References: <20160318185524.8117.74837.stgit@Solace.station> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Cc: Juergen Gross , George Dunlap , Uma Sharma Subject: [Xen-devel] [PATCH 14/16] xen: sched: per-core runqueues as default in credit2 X-BeenThere: xen-devel@lists.xen.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Experiments have shown that arranging the scheduing runqueues on a per-core basis yields better results, in most cases. Such evaluation has been done, for the first time, by Uma Sharma, during her participation to OPW. Some of the results she got are summarized here: http://lists.xen.org/archives/html/xen-devel/2015-03/msg01499.html Signed-off-by: Dario Faggioli Signed-off-by: Uma Sharma Reviewed-by: Juergen Gross Acked-by: George Dunlap --- Cc: George Dunlap --- docs/misc/xen-command-line.markdown | 2 +- xen/common/sched_credit2.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/misc/xen-command-line.markdown b/docs/misc/xen-command-line.markdown index 0047f94..5d801b8 100644 --- a/docs/misc/xen-command-line.markdown +++ b/docs/misc/xen-command-line.markdown @@ -472,7 +472,7 @@ combination with the `low_crashinfo` command line option. ### credit2\_runqueue > `= core | socket | node | all` -> Default: `socket` +> Default: `core` Specify how host CPUs are arranged in runqueues. Runqueues are kept balanced with respect to the load generated by the vCPUs running on diff --git a/xen/common/sched_credit2.c b/xen/common/sched_credit2.c index c242dc4..07b8c67 100644 --- a/xen/common/sched_credit2.c +++ b/xen/common/sched_credit2.c @@ -220,7 +220,7 @@ integer_param("credit2_balance_over", opt_overload_balance_tolerance); #define OPT_RUNQUEUE_SOCKET 2 #define OPT_RUNQUEUE_NODE 3 #define OPT_RUNQUEUE_ALL 4 -static int __read_mostly opt_runqueue = OPT_RUNQUEUE_SOCKET; +static int __read_mostly opt_runqueue = OPT_RUNQUEUE_CORE; static void parse_credit2_runqueue(const char *s) {