import numatop-2.2-3.el8
This commit is contained in:
parent
0e1e288891
commit
09851b4c04
172
SOURCES/v2.2-001-Initial-support-for-SPR.patch
Normal file
172
SOURCES/v2.2-001-Initial-support-for-SPR.patch
Normal file
@ -0,0 +1,172 @@
|
|||||||
|
From ffd83b3a7749b3601eec305b8b8f9f44c3f3fe80 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Zhengjun Xing <zhengjun.xing@linux.intel.com>
|
||||||
|
Date: Fri, 10 Jun 2022 16:19:24 +0800
|
||||||
|
Subject: [PATCH] Initial support for SPR
|
||||||
|
|
||||||
|
SPR has more CPUs, so it requires the system with its max open files should
|
||||||
|
bigger than 1024. In many systems, the default max open files are 1024, the
|
||||||
|
error can be " Fail to setup perf":
|
||||||
|
|
||||||
|
# ulimit -n
|
||||||
|
1024 <------the max open files are 1024
|
||||||
|
# ./numatop
|
||||||
|
NumaTOP is starting ...
|
||||||
|
Fail to setup perf (probably permission denied)!
|
||||||
|
|
||||||
|
Need enlarge the max open files:
|
||||||
|
|
||||||
|
# ulimit -n 8192
|
||||||
|
# ulimit -n
|
||||||
|
8192 <------now the max open files are 8192
|
||||||
|
|
||||||
|
Signed-off-by: Zhengjun Xing <zhengjun.xing@linux.intel.com>
|
||||||
|
---
|
||||||
|
intel/include/skl.h | 4 ++++
|
||||||
|
intel/include/types.h | 5 +++--
|
||||||
|
intel/plat.c | 13 ++++++++++---
|
||||||
|
intel/skl.c | 26 ++++++++++++++++++++++++++
|
||||||
|
4 files changed, 43 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/intel/include/skl.h b/intel/include/skl.h
|
||||||
|
index 67c8939..7a8b8f2 100644
|
||||||
|
--- a/intel/include/skl.h
|
||||||
|
+++ b/intel/include/skl.h
|
||||||
|
@@ -47,6 +47,10 @@ extern void icx_profiling_config(perf_count_id_t, struct _plat_event_config *);
|
||||||
|
extern void icx_ll_config(struct _plat_event_config *);
|
||||||
|
extern int icx_offcore_num(void);
|
||||||
|
|
||||||
|
+extern void spr_profiling_config(perf_count_id_t, struct _plat_event_config *);
|
||||||
|
+extern void spr_ll_config(struct _plat_event_config *);
|
||||||
|
+extern int spr_offcore_num(void);
|
||||||
|
+
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
diff --git a/intel/include/types.h b/intel/include/types.h
|
||||||
|
index 85aa074..76c7ad3 100644
|
||||||
|
--- a/intel/include/types.h
|
||||||
|
+++ b/intel/include/types.h
|
||||||
|
@@ -45,10 +45,11 @@ typedef enum {
|
||||||
|
CPU_HSX,
|
||||||
|
CPU_BDX,
|
||||||
|
CPU_SKX,
|
||||||
|
- CPU_ICX
|
||||||
|
+ CPU_ICX,
|
||||||
|
+ CPU_SPR
|
||||||
|
} cpu_type_t;
|
||||||
|
|
||||||
|
-#define CPU_TYPE_NUM 11
|
||||||
|
+#define CPU_TYPE_NUM 12
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
PERF_COUNT_INVALID = -1,
|
||||||
|
diff --git a/intel/plat.c b/intel/plat.c
|
||||||
|
index fed4f1e..abf3766 100644
|
||||||
|
--- a/intel/plat.c
|
||||||
|
+++ b/intel/plat.c
|
||||||
|
@@ -49,7 +49,8 @@ s_plat_profiling_config[CPU_TYPE_NUM] = {
|
||||||
|
snbep_profiling_config,
|
||||||
|
bdw_profiling_config,
|
||||||
|
skl_profiling_config,
|
||||||
|
- icx_profiling_config
|
||||||
|
+ icx_profiling_config,
|
||||||
|
+ spr_profiling_config
|
||||||
|
};
|
||||||
|
|
||||||
|
pfn_plat_ll_config_t
|
||||||
|
@@ -64,7 +65,8 @@ s_plat_ll_config[CPU_TYPE_NUM] = {
|
||||||
|
snbep_ll_config,
|
||||||
|
bdw_ll_config,
|
||||||
|
skl_ll_config,
|
||||||
|
- icx_ll_config
|
||||||
|
+ icx_ll_config,
|
||||||
|
+ spr_ll_config
|
||||||
|
};
|
||||||
|
|
||||||
|
pfn_plat_offcore_num_t
|
||||||
|
@@ -79,7 +81,8 @@ s_plat_offcore_num[CPU_TYPE_NUM] = {
|
||||||
|
snb_offcore_num,
|
||||||
|
bdw_offcore_num,
|
||||||
|
skl_offcore_num,
|
||||||
|
- icx_offcore_num
|
||||||
|
+ icx_offcore_num,
|
||||||
|
+ spr_offcore_num
|
||||||
|
};
|
||||||
|
|
||||||
|
/* ARGSUSED */
|
||||||
|
@@ -171,6 +174,9 @@ cpu_type_get(void)
|
||||||
|
case 106:
|
||||||
|
type = CPU_ICX;
|
||||||
|
break;
|
||||||
|
+ case 143:
|
||||||
|
+ type = CPU_SPR;
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -210,6 +216,7 @@ plat_detect(void)
|
||||||
|
/* fall through */
|
||||||
|
case CPU_SKX:
|
||||||
|
case CPU_ICX:
|
||||||
|
+ case CPU_SPR:
|
||||||
|
ret = 0;
|
||||||
|
s_cpu_type = cpu_type;
|
||||||
|
break;
|
||||||
|
diff --git a/intel/skl.c b/intel/skl.c
|
||||||
|
index 9e30574..ace0833 100644
|
||||||
|
--- a/intel/skl.c
|
||||||
|
+++ b/intel/skl.c
|
||||||
|
@@ -55,6 +55,14 @@ static plat_event_config_t s_icx_config[PERF_COUNT_NUM] = {
|
||||||
|
{ PERF_TYPE_RAW, 0x01BB, 0x53, 0x104000001, "off_core_response_1" }
|
||||||
|
};
|
||||||
|
|
||||||
|
+static plat_event_config_t s_spr_config[PERF_COUNT_NUM] = {
|
||||||
|
+ { PERF_TYPE_HARDWARE, PERF_COUNT_HW_CPU_CYCLES, 0x53, 0, "cpu_clk_unhalted.core" },
|
||||||
|
+ { PERF_TYPE_RAW, 0x012A, 0x53, 0x730000001, "off_core_response_0" },
|
||||||
|
+ { PERF_TYPE_HARDWARE, PERF_COUNT_HW_REF_CPU_CYCLES, 0x53, 0, "cpu_clk_unhalted.ref" },
|
||||||
|
+ { PERF_TYPE_HARDWARE, PERF_COUNT_HW_INSTRUCTIONS, 0x53, 0, "instr_retired.any" },
|
||||||
|
+ { PERF_TYPE_RAW, 0x012B, 0x53, 0x104000001, "off_core_response_1" }
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
static plat_event_config_t s_skl_ll = {
|
||||||
|
PERF_TYPE_RAW, 0x01CD, 0x53, LL_THRESH, "mem_trans_retired.latency_above_threshold"
|
||||||
|
};
|
||||||
|
@@ -71,6 +79,12 @@ icx_profiling_config(perf_count_id_t perf_count_id, plat_event_config_t *cfg)
|
||||||
|
plat_config_get(perf_count_id, cfg, s_icx_config);
|
||||||
|
}
|
||||||
|
|
||||||
|
+void
|
||||||
|
+spr_profiling_config(perf_count_id_t perf_count_id, plat_event_config_t *cfg)
|
||||||
|
+{
|
||||||
|
+ plat_config_get(perf_count_id, cfg, s_spr_config);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void
|
||||||
|
skl_ll_config(plat_event_config_t *cfg)
|
||||||
|
{
|
||||||
|
@@ -83,6 +97,12 @@ icx_ll_config(plat_event_config_t *cfg)
|
||||||
|
skl_ll_config(cfg);
|
||||||
|
}
|
||||||
|
|
||||||
|
+void
|
||||||
|
+spr_ll_config(plat_event_config_t *cfg)
|
||||||
|
+{
|
||||||
|
+ skl_ll_config(cfg);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
int
|
||||||
|
skl_offcore_num(void)
|
||||||
|
{
|
||||||
|
@@ -94,3 +114,9 @@ icx_offcore_num(void)
|
||||||
|
{
|
||||||
|
return skl_offcore_num();
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+int
|
||||||
|
+spr_offcore_num(void)
|
||||||
|
+{
|
||||||
|
+ return skl_offcore_num();
|
||||||
|
+}
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
Name: numatop
|
Name: numatop
|
||||||
Version: 2.2
|
Version: 2.2
|
||||||
Release: 1%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: Memory access locality characterization and analysis
|
Summary: Memory access locality characterization and analysis
|
||||||
|
|
||||||
License: BSD
|
License: BSD
|
||||||
@ -22,6 +22,7 @@ BuildRequires: numactl-devel
|
|||||||
# This only works for Intel and Power CPUs
|
# This only works for Intel and Power CPUs
|
||||||
ExclusiveArch: x86_64 ppc64le
|
ExclusiveArch: x86_64 ppc64le
|
||||||
|
|
||||||
|
Patch001: v2.2-001-Initial-support-for-SPR.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
NumaTOP is an observation tool for runtime memory locality characterization and
|
NumaTOP is an observation tool for runtime memory locality characterization and
|
||||||
@ -34,7 +35,7 @@ NumaTOP supports the Intel Xeon processors and PowerPC processors.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
#%setup -q -n %{name}-v%{version}
|
#%setup -q -n %{name}-v%{version}
|
||||||
%autosetup
|
%autosetup -p1
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -59,6 +60,9 @@ autoreconf --force --install --symlink
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Nov 2 2022 Pingfan Liu <piliu@redhat.com> - 2.2-3
|
||||||
|
- bump release version to 2.2-3
|
||||||
|
|
||||||
* Wed Dec 1 2021 Pingfan Liu <piliu@redhat.com> - 2.2-1
|
* Wed Dec 1 2021 Pingfan Liu <piliu@redhat.com> - 2.2-1
|
||||||
- rebase to v2.2
|
- rebase to v2.2
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user