Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp375608pxf; Thu, 8 Apr 2021 05:09:43 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzG6ZRCFvUb2nDCauiFsqTgc/H+9162L/PkWkAeDSARKhJj+PgfOYzQKNP+I0xfmd2B0gYx X-Received: by 2002:a17:907:3d8d:: with SMTP id he13mr10037901ejc.530.1617883783476; Thu, 08 Apr 2021 05:09:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1617883783; cv=none; d=google.com; s=arc-20160816; b=sbKP9mCIqnwnaHUBQdXbbicp11puxopZaHtDfqVUOutIagLNocPNLtAbQMUowU4hSY iYt+K4S9JVI6C+WfF4YWfT9hiwXZXbM1LNSBlxXhELRRpVN1rWiRXNplgogfcss9mI4/ p0lr2DxF7mfJ5kH0bD48mV/ULwWM+sp+197HLmQYHuO2kA0x6eq+C5GCWn/75j0RUwzg tj1f5bCfhVQst0+6FD9ak/EqesL6A7NqfpG21JNWeg+sE1LlFtJyx7PGqzfmFtfqRli/ JEcKDGWbW/Z1XNIBGrzqZIDuMRfLeJ6uKFBwhNL81TxNpNhr2G8tWMAaxYE9M1xxO0Ql bzYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=C1ksmh0ZYVbZk0BfBh8hLJNAW3D6nuEpsDYgFrymK3Q=; b=cjqGV+ZA5QdkyiZAa4zNEGKlPqfP+spMobfI7ld9w08YYA3oFiloID6l2sTiKmrHxa Uo5GmDT5c2PK6umhsRaQX0uzhs9AzTmPp7RHirG4OGIsliKeYZXr1VWbN9PfGpJqIDo2 xc8caZBfdutgvCgt1WUrapk8UkZCmWK82UinCWW6HnmeoDGEd3T9nt9wx91hqxc7lNE0 EUBlfS1HDMAXJmb67kP2zGp40Q/pOkkFJi+8ZOUGAwsOBrYODUoN1Kd7EXDi6gPuaVZQ Mm0Xr0xxUltqT81oB+iv5xmYg4b3HpJZhhGuXYax0gdvmzEpIBwXJY3mVe/2AOCmYXWj ZEdg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=bk6hZZ23; 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=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id oq9si12926253ejb.574.2021.04.08.05.09.19; Thu, 08 Apr 2021 05:09:43 -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=@redhat.com header.s=mimecast20190719 header.b=bk6hZZ23; 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=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231239AbhDHMHA (ORCPT + 99 others); Thu, 8 Apr 2021 08:07:00 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:35266 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229837AbhDHMHA (ORCPT ); Thu, 8 Apr 2021 08:07:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1617883609; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=C1ksmh0ZYVbZk0BfBh8hLJNAW3D6nuEpsDYgFrymK3Q=; b=bk6hZZ23ZiEj67TIBS3qZsotCSPpMzFbrnP3zRnqukHfwF2pHsP63m8rmTXXyQnkLguE47 B02AkvmbxbaZk2YGCbQxWvn5gIflXnfJPkgyiC/HB+C/3a4L8qp1rkPo91dcdVkIwL8epI 1kNSpUZkRlDkJggqJV44ELolOtjeFrc= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-496-4oluOfOBN_qKqg-bGXcWMQ-1; Thu, 08 Apr 2021 08:06:45 -0400 X-MC-Unique: 4oluOfOBN_qKqg-bGXcWMQ-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B3A82189C441; Thu, 8 Apr 2021 12:06:42 +0000 (UTC) Received: from krava (unknown [10.40.195.201]) by smtp.corp.redhat.com (Postfix) with SMTP id 48DF560636; Thu, 8 Apr 2021 12:06:38 +0000 (UTC) Date: Thu, 8 Apr 2021 14:06:37 +0200 From: Jiri Olsa To: John Garry Cc: will@kernel.org, mathieu.poirier@linaro.org, leo.yan@linaro.org, peterz@infradead.org, mingo@redhat.com, acme@kernel.org, mark.rutland@arm.com, alexander.shishkin@linux.intel.com, namhyung@kernel.org, irogers@google.com, linuxarm@huawei.com, kjain@linux.ibm.com, kan.liang@linux.intel.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, zhangshaokun@hisilicon.com, pc@us.ibm.com Subject: Re: [PATCH v3 0/6] perf arm64 metricgroup support Message-ID: References: <1617791570-165223-1-git-send-email-john.garry@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1617791570-165223-1-git-send-email-john.garry@huawei.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 07, 2021 at 06:32:44PM +0800, John Garry wrote: > This series contains support to get basic metricgroups working for > arm64 CPUs. > > Initial support is added for HiSilicon hip08 platform. > > Some sample usage on Huawei D06 board: > > $ ./perf list metric > > List of pre-defined events (to be used in -e): > > Metrics: > > bp_misp_flush > [BP misp flush L3 topdown metric] > branch_mispredicts > [Branch mispredicts L2 topdown metric] > core_bound > [Core bound L2 topdown metric] > divider > [Divider L3 topdown metric] > exe_ports_util > [EXE ports util L3 topdown metric] > fetch_bandwidth_bound > [Fetch bandwidth bound L2 topdown metric] > fetch_latency_bound > [Fetch latency bound L2 topdown metric] > fsu_stall > [FSU stall L3 topdown metric] > idle_by_icache_miss > > $ sudo ./perf stat -v -M core_bound sleep 1 > Using CPUID 0x00000000480fd010 > metric expr (exe_stall_cycle - (mem_stall_anyload + armv8_pmuv3_0@event\=0x7005@)) / cpu_cycles for core_bound > found event cpu_cycles > found event armv8_pmuv3_0/event=0x7005/ > found event exe_stall_cycle > found event mem_stall_anyload > adding {cpu_cycles -> armv8_pmuv3_0/event=0x7001/ > mem_stall_anyload -> armv8_pmuv3_0/event=0x7004/ > Control descriptor is not initialized > cpu_cycles: 989433 385050 385050 > armv8_pmuv3_0/event=0x7005/: 19207 385050 385050 > exe_stall_cycle: 900825 385050 385050 > mem_stall_anyload: 253516 385050 385050 > > Performance counter stats for 'sleep': > > 989,433 cpu_cycles # 0.63 core_bound > 19,207 armv8_pmuv3_0/event=0x7005/ > 900,825 exe_stall_cycle > 253,516 mem_stall_anyload > > 0.000805809 seconds time elapsed > > 0.000875000 seconds user > 0.000000000 seconds sys > > perf stat --topdown is not supported, as this requires the CPU PMU to > expose (alias) events for the TopDown L1 metrics from sysfs, which arm > does not do. To get that to work, we probably need to make perf use the > pmu-events cpumap to learn about those alias events. > > Metric reuse support is added for pmu-events parse metric testcase. > This had been broken on power9 recently: > https://lore.kernel.org/lkml/20210324015418.GC8931@li-24c3614c-2adc-11b2-a85c-85f334518bdb.ibm.com/ > > Differences to v2: > - Add TB and RB tags (Thanks!) > - Rename metricgroup__find_metric() from metricgroup_find_metric() > - Change resolve_metric_simple() to rescan after any insert Acked-by: Jiri Olsa thanks, jirka