Compare commits
No commits in common. 'i10c-beta' and 'c9' have entirely different histories.
@ -1 +1 @@
|
|||||||
SOURCES/v2.3.tar.gz
|
SOURCES/v2.2.tar.gz
|
||||||
|
@ -1 +1 @@
|
|||||||
e7f08bb2a29a841eca00aff37a14987c84de1b56 SOURCES/v2.3.tar.gz
|
c2fd2e31ad2a7d5e4fb2c5884e396c4ce2bbab60 SOURCES/v2.2.tar.gz
|
||||||
|
@ -1,36 +0,0 @@
|
|||||||
--- numatop-2.2/common/os/os_util.c 2021-09-08 04:29:54.000000000 +0200
|
|
||||||
+++ numatop-2.2/common/os/os_util.c 2022-08-13 15:24:06.607330278 +0200
|
|
||||||
@@ -387,12 +387,10 @@
|
|
||||||
int len = strlen(str);
|
|
||||||
boolean_t ret = B_FALSE;
|
|
||||||
|
|
||||||
- if ((scopy = malloc(len + 1)) == NULL) {
|
|
||||||
+ if ((scopy = strdup(str)) == NULL) {
|
|
||||||
return (B_FALSE);
|
|
||||||
}
|
|
||||||
|
|
||||||
- strncpy(scopy, str, len);
|
|
||||||
- scopy[len] = 0;
|
|
||||||
cur = scopy;
|
|
||||||
|
|
||||||
while (cur < (scopy + len)) {
|
|
||||||
--- numatop-2.2/common/reg.c 2021-09-08 04:29:54.000000000 +0200
|
|
||||||
+++ numatop-2.2/common/reg.c 2022-08-13 16:16:12.060462958 +0200
|
|
||||||
@@ -240,7 +240,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
if (len > 0) {
|
|
||||||
- (void) mvwprintw(r->hdl, line, pos_x, content);
|
|
||||||
+ (void) mvwprintw(r->hdl, line, pos_x, "%s", content);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (r->mode != 0) {
|
|
||||||
@@ -267,7 +267,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
if (len > 0) {
|
|
||||||
- (void) mvwprintw(r->hdl, line, pos_x, content);
|
|
||||||
+ (void) mvwprintw(r->hdl, line, pos_x, "%s", content);
|
|
||||||
}
|
|
||||||
|
|
||||||
(void) wattroff(r->hdl, A_REVERSE | A_BOLD);
|
|
@ -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
|
||||||
|
|
Loading…
Reference in new issue