Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp2993207ybk; Mon, 18 May 2020 13:03:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz1GZX7OW/RKej/uoKiXR+s2L37o1vhtdnP2j7OholyOGP7TxpN/Z/1xrDKS3GHLCB/8KN3 X-Received: by 2002:a50:ae02:: with SMTP id c2mr14511453edd.373.1589832224107; Mon, 18 May 2020 13:03:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589832224; cv=none; d=google.com; s=arc-20160816; b=hOsoMc1Sy0rTXz+6tpkREabw/aZmffiX6M3DTxfqnZgzxRj54//vFpcldZDRYAuoK3 NAhD9vn1ZG4RGix3eSjFderCUfDmgUf4c4VUk8df3q7LPoQ/sSPmVVKk0oJiF9vpsnA4 B0OBAX9kxS9dU/jgtrSVc++Q1BGD3vwLkYzzW9KQrN+W3o4SudL9wZ+Fz3PGKrRavnVu VKx7ETvnWJjdvHHljK9FOABY6zgAQ9M0CdYL2hjNsE6KK4FPurOsu7wAnUHDwlc+HaPE q8bdhvdnBEnqskmFw6FS5KSCieuv0WGbWqTP93ssPUKr8eXmdiFEeSne+adogUS+1Snt xJaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=8uiCxZtkzkGr7WZ+iPgFdPescQSjCrMQZRNNCDufNnc=; b=ui6AyXogrp17WH5pq8NK5uzf/ytgC/aeBea/WvohJ7za9m63B8bh/RSOxCVYIvRPlI rimiEorROj9MLbB23/kHOQ07Tn0pqP42vJ00CtgOlVpgCBIAUWhBEy8PZKGIGv3V13Kq 7QTWwRXSTg11YFMxJAQ3wOV/hp43fT+u8m7cnm+c9Jh/dE2zrUNSR6yiCC7csrddygdX nFyebURnHTwjMIoY23JKyIvnGdn5/76F6tBtxkG+iBK9n3sTnXyrPgMC4e6BJ+E99JQ8 VGgbSl04f5vx0fcbxf29OMkWMPzwHOjUGLcV5ULEUYUfiTTi8XocpBLBDlkARHnLBv3S GvOQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=MRxltl0J; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p31si1837756edb.296.2020.05.18.13.03.21; Mon, 18 May 2020 13:03:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=MRxltl0J; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728095AbgERTYr (ORCPT + 99 others); Mon, 18 May 2020 15:24:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47724 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728079AbgERTYq (ORCPT ); Mon, 18 May 2020 15:24:46 -0400 Received: from mail-vs1-xe43.google.com (mail-vs1-xe43.google.com [IPv6:2607:f8b0:4864:20::e43]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2C249C05BD09 for ; Mon, 18 May 2020 12:24:46 -0700 (PDT) Received: by mail-vs1-xe43.google.com with SMTP id v26so6333974vsa.1 for ; Mon, 18 May 2020 12:24:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=8uiCxZtkzkGr7WZ+iPgFdPescQSjCrMQZRNNCDufNnc=; b=MRxltl0J8aVtgfT0JM0hwghme8n9ii5KsiIHtdLqdtuS9rEt+rotP0c1XrlD+P19BC ImL2dWayDJwm7R5aOFG0KUgv1InTk/WuJfjulJ3iPKJ3TXZmIfPIm+u7x5HSxKRq4VEK DiqyqEYGbmHIxaZ4qMEteC8edmu/XROFw/xzWo21AGsIHPA42X5NEVDkctwW4PJcfGfx Gkadxk18b3LT/xd0B1vTYfI/JxV1cBkPXxob0QjB5TBaABWX1UnbTpUiJnFoyW0aOPxA NxalsdLqJYtVMwX5WCws2p15mC9an6P0fMlTs8e9wHP/lbYeOaOgvJqP7Ck4t2V1oVon cxAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=8uiCxZtkzkGr7WZ+iPgFdPescQSjCrMQZRNNCDufNnc=; b=QIU/V5HEwO3HhbbifalrlNrQEyrfCzGo2F0QJyI5azXM2dXIMFruMrmAhu9wObr8P/ RA/8L0H+yaAecR6CPuQPO9L8dYCMPr4HQ9L22XB2SEI5Tk7/1vDq5HMrbXw0DaRe3E2g LAeQeYBHsIupD5NL9prK5p1p7fRPYfloR7YbR7kNUHdkj/pdEHfguAif00AC8+umIkgG UExFeHDmtFnZXX1n4e1jTT4vrDZP5TatfCmpLNi6wqctti/8zgIlOnveV/LJFFq/7W+s Y/tC0OVexSBKn90DXX3R/Sl3/MxapwyjvRrFH6yK7d2z2S/lJaXqCWYoBZvTAH6Xnz3k WAMg== X-Gm-Message-State: AOAM530Ys/DdMAN56po4nsnyPxCx/+glCHbAbW9yuSiRFLoVYBupWZQv Z+KRGMunU51mscgx5CoIARPD1L8WSlP2jx7JcF4azA== X-Received: by 2002:a67:ef43:: with SMTP id k3mr4860940vsr.213.1589829885173; Mon, 18 May 2020 12:24:45 -0700 (PDT) MIME-Version: 1.0 References: <20200518191242.GA27634@oc3272150783.ibm.com> <20200518192051.GE11620@krava> In-Reply-To: <20200518192051.GE11620@krava> From: Stephane Eranian Date: Mon, 18 May 2020 12:24:34 -0700 Message-ID: Subject: Re: metric expressions including metrics? To: Jiri Olsa Cc: "Paul A. Clarke" , Ian Rogers , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Namhyung Kim , Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Song Liu , Yonghong Song , Andrii Nakryiko , John Fastabend , KP Singh , Kajol Jain , Andi Kleen , John Garry , Jin Yao , Kan Liang , Cong Wang , Kim Phillips , Adrian Hunter , Leo Yan , LKML , netdev@vger.kernel.org, bpf@vger.kernel.org, Arnaldo Carvalho de Melo Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, May 18, 2020 at 12:21 PM Jiri Olsa wrote: > > On Mon, May 18, 2020 at 02:12:42PM -0500, Paul A. Clarke wrote: > > I'm curious how hard it would be to define metrics using other metrics, > > in the metrics definition files. > > > > Currently, to my understanding, every metric definition must be an > > expresssion based solely on arithmetic combinations of hardware events. > > > > Some metrics are hierarchical in nature such that a higher-level metric > > can be defined as an arithmetic expression of two other metrics, e.g. > > > > cache_miss_cycles_per_instruction = > > data_cache_miss_cycles_per_instruction + > > instruction_cache_miss_cycles_per_instruction > > > > This would need to be defined something like: > > dcache_miss_cpi = "dcache_miss_cycles / instructions" > > icache_miss_cpi = "icache_miss_cycles / instructions" > > cache_miss_cpi = "(dcache_miss_cycles + icache_miss_cycles) / instructions" > > > > Could the latter definition be simplified to: > > cache_miss_cpi = "dcache_miss_cpi + icache_miss_cpi" > > > > With multi-level caches and NUMA hierarchies, some of these higher-level > > metrics can involve a lot of hardware events. > > > > Given the recent activity in this area, I'm curious if this has been > > considered and already on a wish/to-do list, or found onerous. > > hi, > actually we were discussing this with Ian and Stephane and I plan on > checking on that.. should be doable, I'll keep you in the loop > Yes, this is needed to minimize the number of events needed to compute metrics groups. Then across all metrics groups, event duplicates must be eliminated whenever possible, except when explicit event grouping is required. > > jirk > > a > > > > > Regards, > > Paul Clarke > > >