[Mesa-dev] [PATCH 4/4] radeonsi/gfx9: add performance counters

Nicolai Hähnle nhaehnle at gmail.com
Wed Aug 16 11:13:42 UTC 2017


From: Nicolai Hähnle <nicolai.haehnle at amd.com>

---
 src/gallium/drivers/radeonsi/si_perfcounter.c | 29 ++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_perfcounter.c b/src/gallium/drivers/radeonsi/si_perfcounter.c
index 41dd52edb11..2e3a174e393 100644
--- a/src/gallium/drivers/radeonsi/si_perfcounter.c
+++ b/src/gallium/drivers/radeonsi/si_perfcounter.c
@@ -403,6 +403,30 @@ static struct si_pc_block groups_VI[] = {
 
 };
 
+static struct si_pc_block groups_gfx9[] = {
+	{ &cik_CB, 438, 4 },
+	{ &cik_CPF, 32 },
+	{ &cik_DB, 328, 4 },
+	{ &cik_GRBM, 38 },
+	{ &cik_GRBMSE, 16 },
+	{ &cik_PA_SU, 292 },
+	{ &cik_PA_SC, 491 },
+	{ &cik_SPI, 196 },
+	{ &cik_SQ, 374 },
+	{ &cik_SX, 208 },
+	{ &cik_TA, 119, 16 },
+	{ &cik_TCA, 35, 2 },
+	{ &cik_TCC, 256, 16 },
+	{ &cik_TD, 57, 16 },
+	{ &cik_TCP, 85, 16 },
+	{ &cik_GDS, 121 },
+	{ &cik_VGT, 148 },
+	{ &cik_IA, 32 },
+	{ &cik_WD, 58 },
+	{ &cik_CPG, 59 },
+	{ &cik_CPC, 35 },
+};
+
 static void si_pc_get_size(struct r600_perfcounter_block *group,
 			unsigned count, unsigned *selectors,
 			unsigned *num_select_dw, unsigned *num_read_dw)
@@ -671,8 +695,11 @@ void si_init_perfcounters(struct si_screen *screen)
 		blocks = groups_VI;
 		num_blocks = ARRAY_SIZE(groups_VI);
 		break;
-	case SI:
 	case GFX9:
+		blocks = groups_gfx9;
+		num_blocks = ARRAY_SIZE(groups_gfx9);
+		break;
+	case SI:
 	default:
 		return; /* not implemented */
 	}
-- 
2.11.0



More information about the mesa-dev mailing list