From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753348AbdCILCk (ORCPT ); Thu, 9 Mar 2017 06:02:40 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:50387 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752969AbdCILBe (ORCPT ); Thu, 9 Mar 2017 06:01:34 -0500 Date: Thu, 9 Mar 2017 12:01:14 +0100 (CET) From: Thomas Gleixner To: David Carrillo-Cisneros cc: Stephane Eranian , "Luck, Tony" , Vikas Shivappa , "Shivappa, Vikas" , "x86@kernel.org" , "linux-kernel@vger.kernel.org" , "hpa@zytor.com" , "mingo@kernel.org" , "peterz@infradead.org" , "Shankar, Ravi V" , "Yu, Fenghua" , "Kleen, Andi" Subject: Re: [PATCH 1/1] x86/cqm: Cqm requirements In-Reply-To: Message-ID: References: <1488908964-30261-1-git-send-email-vikas.shivappa@linux.intel.com> <3908561D78D1C84285E8C5FCA982C28F6120F0A9@ORSMSX113.amr.corp.intel.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 8 Mar 2017, David Carrillo-Cisneros wrote: > On Wed, Mar 8, 2017 at 12:30 AM, Thomas Gleixner wrote: > > Same applies for per CPU measurements. > > For CPU measurements. We need perf-like CPU filtering to support tools > that perform low overhead monitoring by polling CPU events. These > tools approximate per-cgroup/task events by reconciling CPU events > with logs of what job run when in what CPU. Sorry, but for CQM that's just voodoo analysis. Lets look at an example: CPU default is CAT group 0 (20% of cache) T1 belongs to CAT group 1 (40% of cache) T2 belongs to CAT group 2 (40% of cache) Now you do low overhead samples of the CPU (all groups accounted) with 1 second period. Lets assume that T1 runs 50% and T2 runs 20% the rest of the time is utilized by random other things and the kernel itself (using CAT group 0). What is the accumulated value telling you? How do you approximate that back to T1/T2 and the rest? How do you do that when the tasks are switching between the samples several times? I really have idea how that should work and what the value of this would be. Thanks, tglx