Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp2992077ybk; Mon, 18 May 2020 13:02:26 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwQaiRpq/FtOc0nqtEkrJTUpUPnpNQ+S0gSd6b06hCEqmnxmlz9t3vsq30m3F2iRqGAt14r X-Received: by 2002:aa7:df0a:: with SMTP id c10mr14863537edy.306.1589832146141; Mon, 18 May 2020 13:02:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589832146; cv=none; d=google.com; s=arc-20160816; b=bIsiCc/EqWht00yLDO2eEWTkw7tyBAvJZ90YrrnEFSq12LBXsFw83lJ9u5m04FeoMG 1Aznu/93IigcQRl2t6j7hJRtzVasJ5gy82savmj/VhwWp+W+VKa1+UaP/wicDuFiobLw 50EiQJe67sdLPyUlD0Wxp8AD8XxRvYYJS3fmMXnSwHWCZihnvs/ahkcUauw+zvVa3LSn +H3Q+mgIhHcM6sIsgEKDWe5BLfhYnPSKTlZy4n4rUsQrJ2tz1Drw30wnWOGOZPkCUIrs 2ooipVigNpgduJZ+ANnQCG9WnEUWlGe74R6D7kRhy+cBt4Qr/d8/zPzT1cEGNoeysAgO miHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:content-disposition :mime-version:message-id:subject:cc:to:from:date; bh=s44Cox3fP8qG7UjjxXTSOAwYQLRaE2YJjJCUGDmqnqU=; b=e2ErO2FX6oK+RH4dyeD8EX9H+GTfbOqhv9RXzK1Sy9sXC+JCty5eKvgYRwTWjSLWUF 57/jDzD0FwsLmjnBwTPEc7vTLZMtdEn1LYiubut3fZSZTo2J5sRsSB4IEQP7F2T26x2n 5qX+IwV31pB1ur/Dgybx326sPUyCOkErg4U6LrbAjjsvNlrSESdD6SVhLw5giizSZoae txFKuaYxlf26iHEEYnn/5ULOUOLSVmpO3mYQqTUSRSq7ubzu4TRqFknVqd9X4Mbfpo6u CADKZi7a7w0yn9XQ7bJI0sbMCO52dCqjka+2ksYRENk1RKzqTCh/UcqvrJ8HmgmxiW3G CYsQ== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e23si6877102ejr.357.2020.05.18.13.02.01; Mon, 18 May 2020 13:02:26 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727076AbgERTOg (ORCPT + 99 others); Mon, 18 May 2020 15:14:36 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:15528 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726640AbgERTOf (ORCPT ); Mon, 18 May 2020 15:14:35 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 04IJ1m61077558; Mon, 18 May 2020 15:13:56 -0400 Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com with ESMTP id 312cayku13-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 18 May 2020 15:13:56 -0400 Received: from m0098399.ppops.net (m0098399.ppops.net [127.0.0.1]) by pps.reinject (8.16.0.36/8.16.0.36) with SMTP id 04IJ1u8g078009; Mon, 18 May 2020 15:13:55 -0400 Received: from ppma02dal.us.ibm.com (a.bd.3ea9.ip4.static.sl-reverse.com [169.62.189.10]) by mx0a-001b2d01.pphosted.com with ESMTP id 312cayku0f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 18 May 2020 15:13:55 -0400 Received: from pps.filterd (ppma02dal.us.ibm.com [127.0.0.1]) by ppma02dal.us.ibm.com (8.16.0.42/8.16.0.42) with SMTP id 04IJ9JjX006711; Mon, 18 May 2020 19:13:54 GMT Received: from b03cxnp07028.gho.boulder.ibm.com (b03cxnp07028.gho.boulder.ibm.com [9.17.130.15]) by ppma02dal.us.ibm.com with ESMTP id 313wha9uep-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 18 May 2020 19:13:54 +0000 Received: from b03ledav006.gho.boulder.ibm.com (b03ledav006.gho.boulder.ibm.com [9.17.130.237]) by b03cxnp07028.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 04IJCrYY49676774 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 18 May 2020 19:12:53 GMT Received: from b03ledav006.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0A19BC6055; Mon, 18 May 2020 19:12:53 +0000 (GMT) Received: from b03ledav006.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E92FDC6057; Mon, 18 May 2020 19:12:48 +0000 (GMT) Received: from oc3272150783.ibm.com (unknown [9.160.104.35]) by b03ledav006.gho.boulder.ibm.com (Postfix) with ESMTPS; Mon, 18 May 2020 19:12:48 +0000 (GMT) Date: Mon, 18 May 2020 14:12:42 -0500 From: "Paul A. Clarke" To: Ian Rogers Cc: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , 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 , linux-kernel@vger.kernel.org, netdev@vger.kernel.org, bpf@vger.kernel.org, Stephane Eranian , Arnaldo Carvalho de Melo Subject: metric expressions including metrics? Message-ID: <20200518191242.GA27634@oc3272150783.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-GCONF: 00 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.216,18.0.676 definitions=2020-05-18_06:2020-05-15,2020-05-18 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 lowpriorityscore=0 mlxscore=0 suspectscore=0 spamscore=0 impostorscore=0 malwarescore=0 adultscore=0 bulkscore=0 clxscore=1011 mlxlogscore=999 priorityscore=1501 cotscore=-2147483648 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2004280000 definitions=main-2005180157 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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. Regards, Paul Clarke