Mesa (master): radeonsi/gfx9: add performance counters

Nicolai Hähnle nh at kemper.freedesktop.org
Tue Aug 22 07:59:33 UTC 2017


Module: Mesa
Branch: master
Commit: 472c906d9fa0720e3438761a061a0d99e344b2c6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=472c906d9fa0720e3438761a061a0d99e344b2c6

Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date:   Fri Aug 11 01:28:40 2017 +0200

radeonsi/gfx9: add performance counters

Reviewed-by: Marek Olšák <marek.olsak 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 531d3b74c6..50b8d1c6c3 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 */
 	}




More information about the mesa-commit mailing list