Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933539AbbLOOvX (ORCPT ); Tue, 15 Dec 2015 09:51:23 -0500 Received: from foss.arm.com ([217.140.101.70]:49396 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754094AbbLOOvL (ORCPT ); Tue, 15 Dec 2015 09:51:11 -0500 Date: Tue, 15 Dec 2015 14:50:51 +0000 From: Mark Rutland To: Juri Lelli Cc: Mark Brown , Rob Herring , linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, peterz@infradead.org, vincent.guittot@linaro.org, linux@arm.linux.org.uk, sudeep.holla@arm.com, lorenzo.pieralisi@arm.com, catalin.marinas@arm.com, will.deacon@arm.com, morten.rasmussen@arm.com, dietmar.eggemann@arm.com, Pawel Moll , Ian Campbell , Kumar Gala , Maxime Ripard , Olof Johansson , Gregory CLEMENT , Paul Walmsley , Linus Walleij , Chen-Yu Tsai , Thomas Petazzoni Subject: Re: [RFC PATCH 2/8] Documentation: arm: define DT cpu capacity bindings Message-ID: <20151215145050.GA7041@leverpostej> References: <20151124020631.GA15165@rob-hp-laptop> <20151210153004.GA26758@sirena.org.uk> <20151210175820.GE14571@e106622-lin> <20151211174940.GQ5727@sirena.org.uk> <20151214123616.GC3308@e106622-lin> <20151214165928.GV5727@sirena.org.uk> <20151215122238.GG16007@e106622-lin> <20151215133951.GY5727@sirena.org.uk> <20151215140135.GI31299@leverpostej> <20151215142458.GI16007@e106622-lin> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20151215142458.GI16007@e106622-lin> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2365 Lines: 56 On Tue, Dec 15, 2015 at 02:24:58PM +0000, Juri Lelli wrote: > Hi Mark, Hi Juri, > On 15/12/15 14:01, Mark Rutland wrote: > > I really don't want to see a table of magic numbers in the kernel. > > Doesn't seem to be a clean and scalable solution to me either. It is not > easy to reconfigure when new core types come around, as I don't think > relative data is always present or easy to derive, and it exposes some > sort of centralized global information where everyone is compared > against everyone. I'm also concerned that it will be difficult to curate this to avoid deceptive marketing numbers. These may not reflect reality. > Where the DT solution is inherently per platform: no need to expose > absolute values and no problems with knowing data regarding old core > types. The DT approach certainly avoids tying the kernel to a given idea of particular microarchitectures. > > If we cannot rely on external information, and want this information to > > be derived by the kernel, then we need to perform some dynamic > > benchmark. That would work for future CPUs the kernel knows nothing > > about yet, and would cater for the pseudo-heterogeneous cases too. > > I've actually experimented a bit with this approch already, but I wasn't > convinced of its viability. It is true that we remove the burden of > coming up with default values from user/integrator, but I'm pretty sure > we will end up discussing endlessly about which particular benchmark to > pick Regardless of which direction we go there will be endless discussion as to the benchmark. As Mark pointed out, that happened in the case of the table, and it's happening now for the DT approach. I think we agree that if this is something we can change later (i.e. we don't rely on an external oracle like DT) the particular benchmark matters less, as that can be changed given evidence of superiority. > and the fact that it impacts on boot time and such. I was under the impression that the kernel already did RAID algorithm benchmarking as part of the boot process. Maybe we can find a set of similarly brief benchmarks. Thanks, Mark. -- 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/