From patchwork Fri Jan 13 09:22:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jing Zhang X-Patchwork-Id: 43111 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp172156wrt; Fri, 13 Jan 2023 01:32:15 -0800 (PST) X-Google-Smtp-Source: AMrXdXtNz8XiZ9zQuD3Ah5wnL+1QblLBqr/lYKZFtGInM5+bsXYNVc7dhVDyAtXyICYzm5H6HKk1 X-Received: by 2002:a17:90a:c683:b0:225:f793:ab2d with SMTP id n3-20020a17090ac68300b00225f793ab2dmr10035180pjt.46.1673602334659; Fri, 13 Jan 2023 01:32:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673602334; cv=none; d=google.com; s=arc-20160816; b=keadH2i6VMoujzF5ZLM1AYX3pjAojYYAqqeV7k+JACI0eaY6Oxa1DjsaowoqAkN6Iu c3bQpZvjyHML31pNzKwaI33PEVZk9K16yAyl+mG8ch5bhowa1RbwPbDMFN+NuhcaJMUT zWO3sDFAbrRPDIIxOcrVsRGG+tPOJGaF9NbiiuMbVrCx2XCvWi7O0oLwMWXyJBnbeeIM gMVU9Kd3FqeCFTA7IzSENlwhWq7epZorM6FdQKKR2c+uoQlPvsObYIxGc4mNON2Kbl/g oxm3yk9qm/FGLCWWWlciGNl1+ULiipb943qkG9LDjZn5i+BK0Y6+tRiEEr8tz03S5/WP Aufg== 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=w+/sg3UycNrKQGf9FoGn9p4mJt+ndrLfuhEFmbe0C04=; b=Y+fRXcBbKPUm8m/hJBv/vghqjrYxsxcvsjA/gubfJf+VCxihxpmjt+o+m5O8XLDLbb JjRmM1ffnD98wPf3gy3jpM7FAmq2/mIXF2FspsyAa6fPyfv4MEYQzbqRMrl1ZZk6J9br rV1HjEvYkQZSzgXILInMKzYeu3LKEk4pVvTvbwNXhTFp6B9q0UdWPxOTIbtZWXSSB2Lo lr6C7zH2xPJ6jRRDxsBnYMpeWLuwV8cXDFKy13Km2sZ0aS6BfAjntcfu1xRgaIdrKTjb sJZ6lyBIfPvBs0/0j/T7BSLR+fMXGdnSKMsRO4a10xc6ILLxP6ZPv0p85SDrMcAVistc XlqA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id a9-20020a631a09000000b0047949c9c08bsi18998922pga.111.2023.01.13.01.32.02; Fri, 13 Jan 2023 01:32:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240690AbjAMJ26 (ORCPT + 99 others); Fri, 13 Jan 2023 04:28:58 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54246 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241028AbjAMJ1W (ORCPT ); Fri, 13 Jan 2023 04:27:22 -0500 Received: from out30-112.freemail.mail.aliyun.com (out30-112.freemail.mail.aliyun.com [115.124.30.112]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 59B8B4319C; Fri, 13 Jan 2023 01:22:45 -0800 (PST) X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R151e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046059;MF=renyu.zj@linux.alibaba.com;NM=1;PH=DS;RN=21;SR=0;TI=SMTPD_---0VZUDRU7_1673601756; Received: from srmbuffer011165236051.sqa.eu95(mailfrom:renyu.zj@linux.alibaba.com fp:SMTPD_---0VZUDRU7_1673601756) by smtp.aliyun-inc.com; Fri, 13 Jan 2023 17:22:37 +0800 From: Jing Zhang To: John Garry , Ian Rogers Cc: Xing Zhengjun , Will Deacon , James Clark , Mike Leach , Leo Yan , linux-arm-kernel@lists.infradead.org, linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Andrew Kilroy , Shuai Xue , Zhuo Song , Jing Zhang Subject: [PATCH v7 4/9] perf vendor events arm64: Add topdown L1 metrics for neoverse-n2-v2 Date: Fri, 13 Jan 2023 17:22:15 +0800 Message-Id: <1673601740-122788-5-git-send-email-renyu.zj@linux.alibaba.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1673601740-122788-1-git-send-email-renyu.zj@linux.alibaba.com> References: <1673601740-122788-1-git-send-email-renyu.zj@linux.alibaba.com> X-Spam-Status: No, score=-9.9 required=5.0 tests=BAYES_00, ENV_AND_HDR_SPF_MATCH,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754899241366467882?= X-GMAIL-MSGID: =?utf-8?q?1754899241366467882?= Add general topdown L1 metrics for neoverse-n2-v2. Due to the wrong count of stall_slot and stall_slot_frontend on neoverse-n2, the real stall_slot and real stall_slot_frontend need to subtract cpu_cycles, so overwrite the "MetricExpr" for neoverse-n2 which slots are 5. Reference from ARM neoverse-n2 errata notice [0], D117. Since neoverse-n2/neoverse-v2 does not yet support topdown L2, metric groups such as Cache, TLB, Branch, InstructionsMix and PEutilization will be added to further analysis of performance bottlenecks in the following patches. Reference from ARM PMU guide [1][2]. [0] https://documentation-service.arm.com/static/636a66a64e6cf12278ad89cb?token= [1] https://documentation-service.arm.com/static/628f8fa3dfaf015c2b76eae8?token= [2] https://documentation-service.arm.com/static/62cfe21e31ea212bb6627393?token= Signed-off-by: Jing Zhang --- .../arch/arm64/arm/neoverse-n2-v2/metrics.json | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 tools/perf/pmu-events/arch/arm64/arm/neoverse-n2-v2/metrics.json diff --git a/tools/perf/pmu-events/arch/arm64/arm/neoverse-n2-v2/metrics.json b/tools/perf/pmu-events/arch/arm64/arm/neoverse-n2-v2/metrics.json new file mode 100644 index 0000000..4e7417f --- /dev/null +++ b/tools/perf/pmu-events/arch/arm64/arm/neoverse-n2-v2/metrics.json @@ -0,0 +1,17 @@ +[ + { + "ArchStdEvent": "FRONTEND_BOUND", + "MetricExpr": "((stall_slot_frontend) if (#slots - 5) else (stall_slot_frontend - cpu_cycles)) / (#slots * cpu_cycles)" + }, + { + "ArchStdEvent": "BAD_SPECULATION", + "MetricExpr": "(1 - op_retired / op_spec) * (1 - (stall_slot if (#slots - 5) else (stall_slot - cpu_cycles)) / (#slots * cpu_cycles))" + }, + { + "ArchStdEvent": "RETIRING", + "MetricExpr": "(op_retired / op_spec) * (1 - (stall_slot if (#slots - 5) else (stall_slot - cpu_cycles)) / (#slots * cpu_cycles))" + }, + { + "ArchStdEvent": "BACKEND_BOUND" + } +]