From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) by sourceware.org (Postfix) with ESMTP id 1F505385840D for ; Fri, 17 Sep 2021 22:27:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1F505385840D Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=kernel.crashing.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=kernel.crashing.org Received: from gate.crashing.org (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id 18HMQSnp031550; Fri, 17 Sep 2021 17:26:28 -0500 Received: (from segher@localhost) by gate.crashing.org (8.14.1/8.14.1/Submit) id 18HMQRJn031545; Fri, 17 Sep 2021 17:26:27 -0500 X-Authentication-Warning: gate.crashing.org: segher set sender to segher@kernel.crashing.org using -f Date: Fri, 17 Sep 2021 17:26:27 -0500 From: Segher Boessenkool To: "Kewen.Lin" Cc: GCC Patches , Bill Schmidt , David Edelsohn Subject: Re: [PATCH] rs6000: Parameterize some const values for density test Message-ID: <20210917222627.GY1583@gate.crashing.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-Spam-Status: No, score=-3.4 required=5.0 tests=BAYES_00, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Sep 2021 22:27:31 -0000 Hi! On Wed, Sep 15, 2021 at 04:52:49PM +0800, Kewen.Lin wrote: > This patch follows the discussion here[1], where Segher suggested > parameterizing those exact magic constants for density heuristics, > to make it easier to tweak if need. > > Since these heuristics are quite internal, I make these parameters > as undocumented and be mainly used by developers. Okido. > + if (data->nloads > (unsigned int) rs6000_density_load_num_threshold > + && load_pct > (unsigned int) rs6000_density_load_pct_threshold) Those variables are unsigned int already. Don't cast please. > +-param=rs6000-density-pct-threshold= > +Target Undocumented Joined UInteger Var(rs6000_density_pct_threshold) Init(85) IntegerRange(0, 99) Param So make this and all other percentages (0, 100) please. > +When costing for loop vectorization, we probably need to penalize the loop body cost if the existing cost model may not adequately reflect delays from unavailable vector resources. We collect the cost for vectorized statements and non-vectorized statements separately, check the proportion of vec_cost to total cost of vec_cost and non vec_cost, and penalize only if the proportion exceeds the threshold specified by this parameter. The default value is 85. It would be good if we can use line breaks in the source code for things like this, but I don't think we can. This message is mainly used for "--help=param", and it is good there to have as short messages as you can. But given the nature of params you need quite a few words often, and you do not want to say so little that things are no clear, either. So, dunno :-) Oksy for trunk with these fixes and what Bill mentioned in the other thread. Thanks! Segher