Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp3850483pxb; Mon, 4 Oct 2021 10:58:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyr1hzv9P+SO+Jj91YOV3q13QLBCuNxUn70IB50/gBCrwnkI4jVGxjmNggqC4cUPwhZ5pgc X-Received: by 2002:a17:906:c205:: with SMTP id d5mr19009799ejz.74.1633370280092; Mon, 04 Oct 2021 10:58:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633370280; cv=none; d=google.com; s=arc-20160816; b=y+cpIoXItf5iRS3jxb/Lxkn6X5+GkxdzlnqMj2sbykefBNC8B7QRfX4nVHj62AsMJs mIqV5XLVRD9t5XCe6RZyRI5l047FUc+QT1UCXxswLP7KMrERU7CkjZZJyOr/nerpTHVX z+Pgdf4XU8QsLBLQ5Sjh4Ofa1G9knPg4rAvgrE6BjlpW9DLMYLNvjqoZeL+XyM3m6U9d erJuGYlr4AcrzY40F90YsGRJuYHg+Zu+7jBELEQxbLHyxHh7NlfkxeurOq0NOZDiYvpO b6s4PqSyEvvB/VXbyzE+VcBRYhLgH9OYnRevM/Cyk4pd18T6zR9/fX62Rnzfme9nHOTE Molg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from; bh=GcTsOj90u1UbBSt9lAi/JmpBdgg1RyBj12ioPNS+ezc=; b=kGU3iwvtLcMofqa8V5lXyjYDbbw+7vcPDmhRRAo2Vr0lE4HHWClP0DQRPj3OYgKDNq cFwUC82oCJFxO40u4krnjNTpBvvrHSMjZoR9trTQXUW/ur+6pzQoqR5HhEAC6C+UupUM zUFnTBAhY0V/4n8xCWzQdJOljIjiJj+h+i3b+8ajKDI9CVYV6P2YcEHctvgYflIFQ8GN EtnZ42tcFQbQvcBlO9MqGYMcbrNsbRILCh0PhwvXlkwnFbBS32MTbk+96L66hvhRGejK 62VwG7E6ctrzvf/V7rtDUHTusiOPWZPnf0SIBkR3a3E1DMJZ5kGudD4cbqOGdJTD9tPb 2NlA== 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=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w7si8207306edq.68.2021.10.04.10.57.36; Mon, 04 Oct 2021 10:58:00 -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=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236194AbhJDQCc (ORCPT + 99 others); Mon, 4 Oct 2021 12:02:32 -0400 Received: from foss.arm.com ([217.140.110.172]:55790 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234939AbhJDQC1 (ORCPT ); Mon, 4 Oct 2021 12:02:27 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D13A4D6E; Mon, 4 Oct 2021 09:00:37 -0700 (PDT) Received: from ubuntu-18-04-aarch64-spe-2.warwick.arm.com (ubuntu-18-04-aarch64-spe-2.warwick.arm.com [10.32.33.30]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 07D153F70D; Mon, 4 Oct 2021 09:00:35 -0700 (PDT) From: Andrew Kilroy To: linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, acme@kernel.org Cc: Andrew Kilroy , John Garry , Will Deacon , Mathieu Poirier , Leo Yan , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/4] perf vendor events: Add new armv8 pmu events Date: Mon, 4 Oct 2021 17:00:05 +0100 Message-Id: <20211004160008.21645-2-andrew.kilroy@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211004160008.21645-1-andrew.kilroy@arm.com> References: <20211004160008.21645-1-andrew.kilroy@arm.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add new armv8 common events for use by Arm Neoverse V1 cores in a later commit. These are defined in the ArmV8 architecture reference manual available from https://developer.arm.com/documentation/ddi0487/gb/?lang=en Signed-off-by: Andrew Kilroy --- .../arm64/armv8-common-and-microarch.json | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/tools/perf/pmu-events/arch/arm64/armv8-common-and-microarch.json b/tools/perf/pmu-events/arch/arm64/armv8-common-and-microarch.json index 913fb200ea52..423767510aff 100644 --- a/tools/perf/pmu-events/arch/arm64/armv8-common-and-microarch.json +++ b/tools/perf/pmu-events/arch/arm64/armv8-common-and-microarch.json @@ -257,6 +257,78 @@ "EventName": "LL_CACHE_MISS_RD", "BriefDescription": "Last level cache miss, read" }, + { + "PublicDescription": "Level 1 data cache long-latency read miss. The counter counts each memory read access counted by L1D_CACHE that incurs additional latency because it returns data from outside the Level 1 data or unified cache of this processing element.", + "EventCode": "0x39", + "EventName": "L1D_CACHE_LMISS_RD", + "BriefDescription": "Level 1 data cache long-latency read miss" + }, + { + "PublicDescription": "Micro-operation architecturally executed. The counter counts each operation counted by OP_SPEC that would be executed in a simple sequential execution of the program.", + "EventCode": "0x3A", + "EventName": "OP_RETIRED", + "BriefDescription": "Micro-operation architecturally executed" + }, + { + "PublicDescription": "Micro-operation speculatively executed. The counter counts the number of operations executed by the processing element, including those that are executed speculatively and would not be executed in a simple sequential execution of the program.", + "EventCode": "0x3B", + "EventName": "OP_SPEC", + "BriefDescription": "Micro-operation speculatively executed" + }, + { + "PublicDescription": "No operation sent for execution. The counter counts every attributable cycle on which no attributable instruction or operation was sent for execution on this processing element.", + "EventCode": "0x3C", + "EventName": "STALL", + "BriefDescription": "No operation sent for execution" + }, + { + "PublicDescription": "No operation sent for execution on a slot due to the backend. Counts each slot counted by STALL_SLOT where no attributable instruction or operation was sent for execution because the backend is unable to accept it.", + "EventCode": "0x3D", + "EventName": "STALL_SLOT_BACKEND", + "BriefDescription": "No operation sent for execution on a slot due to the backend" + }, + { + "PublicDescription": "No operation sent for execution on a slot due to the frontend. Counts each slot counted by STALL_SLOT where no attributable instruction or operation was sent for execution because there was no attributable instruction or operation available to issue from the processing element from the frontend for the slot.", + "EventCode": "0x3E", + "EventName": "STALL_SLOT_FRONTEND", + "BriefDescription": "No operation sent for execution on a slot due to the frontend" + }, + { + "PublicDescription": "No operation sent for execution on a slot. The counter counts on each attributable cycle the number of instruction or operation slots that were not occupied by an instruction or operation attributable to the processing element.", + "EventCode": "0x3F", + "EventName": "STALL_SLOT", + "BriefDescription": "No operation sent for execution on a slot" + }, + { + "PublicDescription": "Constant frequency cycles. The counter increments at a constant frequency equal to the rate of increment of the system counter, CNTPCT_EL0.", + "EventCode": "0x4004", + "EventName": "CNT_CYCLES", + "BriefDescription": "Constant frequency cycles" + }, + { + "PublicDescription": "Memory stall cycles. The counter counts each cycle counted by STALL_BACKEND where there is a cache miss in the last level of cache within the processing element clock domain", + "EventCode": "0x4005", + "EventName": "STALL_BACKEND_MEM", + "BriefDescription": "Memory stall cycles" + }, + { + "PublicDescription": "Level 1 instruction cache long-latency read miss. If the L1I_CACHE_RD event is implemented, the counter counts each access counted by L1I_CACHE_RD that incurs additional latency because it returns instructions from outside of the Level 1 instruction cache of this PE. If the L1I_CACHE_RD event is not implemented, the counter counts each access counted by L1I_CACHE that incurs additional latency because it returns instructions from outside the Level 1 instruction cache of this PE. The event indicates to software that the access missed in the Level 1 instruction cache and might have a significant performance impact due to the additional latency, compared to the latency of an access that hits in the Level 1 instruction cache.", + "EventCode": "0x4006", + "EventName": "L1I_CACHE_LMISS", + "BriefDescription": "Level 1 instruction cache long-latency read miss" + }, + { + "PublicDescription": "Level 2 data cache long-latency read miss. The counter counts each memory read access counted by L2D_CACHE that incurs additional latency because it returns data from outside the Level 2 data or unified cache of this processing element. The event indicates to software that the access missed in the Level 2 data or unified cache and might have a significant performance impact compared to the latency of an access that hits in the Level 2 data or unified cache.", + "EventCode": "0x4009", + "EventName": "L2D_CACHE_LMISS_RD", + "BriefDescription": "Level 2 data cache long-latency read miss" + }, + { + "PublicDescription": "Level 3 data cache long-latency read miss. The counter counts each memory read access counted by L3D_CACHE that incurs additional latency because it returns data from outside the Level 3 data or unified cache of this processing element. The event indicates to software that the access missed in the Level 3 data or unified cache and might have a significant performance impact compared to the latency of an access that hits in the Level 3 data or unified cache.", + "EventCode": "0x400B", + "EventName": "L3D_CACHE_LMISS_RD", + "BriefDescription": "Level 3 data cache long-latency read miss" + }, { "PublicDescription": "SIMD Instruction architecturally executed.", "EventCode": "0x8000", -- 2.17.1